OpenSSH izstrÄdÄtÄji ir publicÄjuÅ”i steidzamu atjauninÄjumu OpenSSH 10.6p2, kurÄ ir iekļauta aizsardzÄ«ba pret kritisko ievainojamÄ«bu (CVE nav pieŔķirts), kas saÅÄmusi kodu nosaukumu Ā«SSHoleĀ» un ļauj apiet autentifikÄciju. SistÄmÄs ar Musl bibliotÄku ievainojamÄ«ba ļauj pieslÄgties lietotÄjam, kuram nav iestatÄ«ta parole, ievadot jebkuru paroli, kas garÄka par 256 simboliem. ProblÄma skar Linux izplatÄ«jumus, kas izmanto standarta musl bibliotÄku, bet neizmanto PAM (Pluggable Authentication Modules), piemÄram, OpenWRT, Alpine, Buildroot un Yocto. ÄŖpaÅ”u apdraudÄjumu rada tas, ka bieži vien paroles piekļuve ir bloÄ·Äta lietotÄjam root, kas dod iespÄju ikvienam attÄlinÄti pieslÄgties ar administratora tiesÄ«bÄm.
IevainojamÄ«bu izraisa kļūda, kas nav OpenSSH kodÄ, bet tiek izmantota, izmantojot sshd. Å emot vÄrÄ problÄmas nopietnÄ«bu, OpenSSH 10.6p2 versijÄ ir ieteikts apiet risinÄjums, lai bloÄ·Ätu ievainojamÄ«bu. SistÄmu Ä«paÅ”niekiem, kas pakļauti Å”ai problÄmai, ieteicams nekavÄjoties atslÄgt paroles autentifikÄciju, izmantojot parametrus Ā«PasswordAuthentication noĀ» failÄ /etc/ssh/sshd_config vai pilnÄ«gi atslÄgt SSH.
ProblÄma neizpaužas sistÄmÄs, kas nav Linux, un Linux vidÄs, kas balstÄ«tas uz glibc, kÄ arÄ« sistÄmÄs, kas izmanto PAM paroles autentifikÄcijai. Labojums jau pieejams Alpine un OpenWRT.
IevainojamÄ«ba ir saistÄ«ta ar nepareizu OpenSSH un funkcijas crypt() no musl mijiedarbÄ«bu. Lai pasargÄtu no esoÅ”o lietotÄju noteikÅ”anas, analizÄjot laika apstrÄdes atŔķirÄ«bas, kopÅ” 2016. gada OpenSSH pÄrbaudes bezparoles kontiem izmanto standarta parole pÄrbaudes procedÅ«ru: tas aicina funkciju Ā«crypt(ievadÄ«tÄ parole, sÄls)Ā» ar cita lietotÄja sÄli, kam ir derÄ«gs paroles hashes, pÄc tam salÄ«dzina ar crypt funkcijas atgriezto hash ar to, kas atrodas lauka vÄrtÄ«bÄ ar paroli.
TomÄr musl funkcija crypt() SHA-512 hashiem atgriež simbolu Ā«*Ā», ja ievadÄ«tÄs paroles garums pÄrsniedz 256 baitus (ierobežojums ieviests 2012. gadÄ, lai pasargÄtu no DoS uzbrukumiem, jo, pÄrsÅ«tot lielas vÄrtÄ«bas, CPU slodze palielinÄs). Tas pats simbols tiek izmantots lauka ar paroli hashes daÄ¼Ä failÄ Ā«/etc/shadowĀ», lai apzÄ«mÄtu kontus, kuriem paroles autentifikÄcija ir bloÄ·Äta.
TÄdÄjÄdi uzbrucÄjs, kuram ir iespÄja pieslÄgties SSH serverim, var pieslÄgties jebkurai lietotÄja kontam, kurÄ failÄ ā/etc/shadowā parolÄ ir norÄdÄ«ts simbols ā*ā, pÄrsÅ«tot virkni no 257 lÄ«dz 1024 baitiem garumÄ. ProblÄma ietekmÄ daudzas esoÅ”Äs Docker attÄlus, kas izveidoti, izmantojot Alpine Linux, kÄ arÄ« noklusÄjuma Alpine attÄlus mÄkoÅu sistÄmÄm AWS un Azure, kur lietotÄjam root vietÄ saglabÄtÄ parola ir simbols ā*ā.
IevÄrojami, ka sÄkotnÄji oficiÄlajos Docker attÄlos, kas izmantoja Alpine, kopÅ” 2015. gada root parole bija tukÅ”a, un pÄc Ŕī fakta atklÄÅ”anas, vietÄ esoÅ”ajam parolÄ heÅ”am tika izmantots simbols ā!ā. TomÄr tÄ klÄtbÅ«tne bloÄ·Äja piekļuvi, izmantojot SSH atslÄgas, tÄpÄc kopÅ” 2022. gada simbols, kas bloÄ·Äja piekļuvi ar paroli, tika nomainÄ«ts uz ā*ā.
Avots: opennet.lv
