У OpenBSD для sshd прыменена перакампаноўка падчас загрузкі

У OpenBSD рэалізавана тэхніка абароны ад эксплуатацыі ўразлівасцяў, заснаваная на выпадковай перакампаноўцы выкананага файла sshd пры кожнай загрузцы сістэмы. Раней падобная тэхніка перакампаноўкі ўжывалася ў стаўленні ядра і бібліятэк libc.so, libcrypto.so і ld.so, а зараз будзе ўжыта і для некаторых выкананых файлаў. У бліжэйшы час метад таксама плануецца рэалізаваць для ntpd і іншых серверных дадаткаў. Змена ўжо ўключана ў склад галінкі CURRENT і будзе прапанавана ў выпуску OpenBSD 7.3.

Перакампаноўка дазваляе зрабіць малапрадказальным зрушэнні функцый у бібліятэках, што абцяжарыць стварэнне эксплоітаў, якія выкарыстоўваюць метады зваротна-арыентаванага праграмавання (ROP – Return-Oriented Programming). Пры выкарыстанні тэхнікі ROP атакавалы не спрабуе размясціць свой код у памяці, а аперуе ўжо наяўнымі ў загружаных бібліятэках кавалкамі машынных інструкцый, якія завяршаюцца інструкцыяй звароту кіравання (як правіла, гэта канчаткі бібліятэчных функцый). Праца эксплоіта зводзіцца да пабудовы ланцужка выклікаў падобных блокаў ("гаджэтаў") для атрымання патрэбнай функцыянальнасці.

Крыніца: opennet.ru

Дадаць каментар