Крипто китепканасын кайра атоо эски клиентти оңдобойт
Символдук шилтеме жүктөгүч кайсы файлды ачаарын өзгөртөт, бинар курулган интерфейсти эмес. Кайсыл китепканага тийүүдөн мурун ийгиликсиздиктин түрүн текшериңиз.
Жүктөгүч катасын тартиби менен карап чыгыңыз: кайсы файл жок, бинар кайсы архитектураны колдонот, кайсы символду издеди жана ийгиликсиздик процесстин башталышынан мурунбу же кийинби болду. Бул төрт башка маселе жана символдук шилтеме биринчисин гана чечет. Аларды тартиби менен аткаруу клиент ишке кирип, анан биринчи handshake'те ийгиликсиз болгон кадимки натыйжаны болтурбайт. Тизме кол менен сыноонун ордуна чыныгы иштеткич аркылуу текшерүү менен аяктайт.
Бир нерсени өзгөртүүдөн мурун аткарылуучу файлдын жолун, анын архитектурасын жана биринчи катаны сөзмө-сөз жазып алыңыз.
Бир катанын артындагы төрт башка ийгиликсиздик
Жок болгон жалпы объект файлды табуу маселеси: жүктөгүч ат издеди жана эч нерсе тапкан жок. Жок болгон символ интерфейс маселеси: файл бар жана бинар шилтеме кылган нерсени экспорттобойт. Символ версиясынын дал келбестиги такыраак сүрөттөлгөн ошол эле класс. Ишке киргизилгенден кийин билдирилген колдоого алынбаган алгоритм ийгиликтүү жүктөлгөн китепкананын ичиндеги жүрүм-турум өзгөрүүсү. Ар бири башка жоопту талап кылат жана биринчиси гана ат маселеси.
ldd бинарга жана readelf -d анын динамикалык бөлүмүнө эмнени талап кылаарын көрсөтөт, бул адатта файл маселесин интерфейс маселесинен ажыратууга жетишет.
OpenSSL 3 чындыгында эмнени талап кылат
OpenSSL 3кө өтүү боюнча колдонмо бул жөнүндө ачык айтат: мурунку версияларга каршы курулган колдонмолор кеминде кайра компиляциялоону талап кылат, ал эми баштапкы коддун шайкештигине кепилдик жок. Интерфейстер өзгөрдү, кээ бирлери эскирди же алынып салынды. Файл атынын лакабы кайра компиляция жасай албайт жана эски бинарга жаңы интерфейсти үйрөтө албайт. Жаңы китепкананы эски көрүнгөн ат менен байланыштыруу ишке кирип, анан алда канча белгисиз жерде ийгиликсиз болушу мүмкүн болгон программа жаратат.
Бул таза ийгиликсиздиктен жаман. Жүктөгүч катасы маселени дароо атайт, ал эми операциянын ичиндеги кеч ийгиликсиздик тармак же эсептик маалымат маселесине окшошуп иликтөөнү туура эмес багытка жиберет.
Эмне үчүн дистрибутивдик китепкана туура эмес жер
Бир клиентти канааттандыруу үчүн дистрибутивдик китепкананы алмаштыруу машинадагы ар бир программанын чөйрөсүн өзгөртөт, анын ичинде коопсуздук жаңыртуулары жана учурдагы интерфейске таянгандын баары. Эски китепкананы бинардын жанына көчүрүү тарыраак, бирок ал дагы бирөө колдоого жана патчтоого тийиш болгон көз карандылыкты жаратат. Экөө тең бекитилген шайкештик жолу эмес, колдонулган күнү иштеп жаткандай көрүнсө да. Эксперименттен кийин калган глобалдык лакап андан жаман, анткени анын эмне үчүн бар экенин эч ким эстебейт.
Чыныгы ОС релизи, архитектурасы жана шлюзу үчүн өндүрүүчүнүн колдоого алынган клиентин жана көз карандылык топтомун колдонуңуз. Бир адамга жарактуу болгон пакет форматы туура учурдагы жолду далилдебейт, ал эми архивделген рецепт өткөн тууралуу далил гана.
Иштеткичти текшериңиз, ишке киргизүүнү эмес
Колдоого алынган алмаштыруудан кийин кадимки иштеткич эмнени чечерин текшериңиз: ldd орнотулган аткарылуучу файлга, ал атаган китепкана версияларына жана кызмат өткөргөн чөйрөгө. Анан көздөлгөн аутентификацияны жана бир чыныгы операцияны аткарыңыз. Өзгөртүлгөн чөйрө менен кол менен чакыруу сиздин shell аны ишке киргизе алаарын гана далилдейт. Колдонуучулар чындыгында иштеткичти, жумуш үстөл жазуусун же кызмат бирдигин иштетишет.
Колдоого алынган курулуш жок болсо, VPN ээсинен альтернатива же өтүү жолун сураңыз. Үнсүз башка протоколго өтүү же таанымал өндүрүүчү аты бар клиент шлюзду канааттандырат деп болжолдоо ийгиликсиздикти оңдоонун ордуна жылдырат.
Убактылуу шайкештик чарасы сөзсүз болгондо, аны документтештириңиз, ошол бинар менен чектеңиз жана колдоого алынган курулуш келгенде алып салыңыз.