Lietderībā
Opcija “pwfeedback” ļauj parādīt “*” rakstzīmi pēc katras ievadītās rakstzīmes, ievadot paroli. Tāpēc ka
Problēmas būtība ir tāda, ka, ievades laikā izmantojot speciālo rakstzīmi ^U (rindas notīrīšana) un ja ierakstīšanas darbība neizdodas, kods, kas atbild par izvades rakstzīmju “*” dzēšanu, atiestata datus par pieejamo bufera lielumu, bet ne. atgriezt rādītāju sākotnējās vērtības pašreizējā stāvoklī buferī. Vēl viens faktors, kas veicina izmantošanu, ir automātiskas “pwfeedback” režīma atspējošanas trūkums, kad dati pienāk nevis no termināļa, bet caur ievades straumi (šis trūkums ļauj radīt apstākļus ierakstīšanas kļūdai, piemēram, sistēmās ar vienvirziena
Tā kā uzbrucējam ir pilnīga kontrole pār steka datu pārrakstīšanu, nav grūti izveidot ekspluatāciju, kas ļauj viņam palielināt savas privilēģijas līdz root. Problēmu var izmantot jebkurš lietotājs neatkarīgi no sudo atļaujām vai lietotāja specifiskajiem iestatījumiem sudoers. Lai bloķētu problēmu, jums jāpārliecinās, vai mapē /etc/sudoers nav iestatījuma “pwfeedback”, un, ja nepieciešams, tas ir jāatspējo (“Noklusējuma !pwfeedback”). Lai pārbaudītu, vai pastāv problēma, varat palaist kodu:
$ perl -e 'print(("A" x 100 . "\x{00}") x 50)' | sudo -S id
Parole: segmentācijas kļūda
Avots: opennet.ru