
Эксплойт DirtyPipe (CVE-2022-0847) на Python для получения root-оболочки
Это эксплойт для уязвимости ядра Linux CVE-2022-0847 (DirtyPipe), обнаруженной Максом Келлерманом.
Этот код объединяет два существующих POC DirtyPipe в один:
Этот код проверяет, можно ли:
Затем он выполняет первую возможную опцию в указанном порядке и сразу передаёт пользователю root-оболочку.
За отличным объяснением самой уязвимости обращайтесь к статье Келлермана.
Требуется Python 10.X для использования os.splice
usage: dirty.py [-h] [--target {passwd,group,sudo,su}]
Use dirty pipe vulnerability to pop root shell
options:
-h, --help show this help message and exit
--target {passwd,group,sudo,su}
The target read-only file to overwrite
vulnerable@kali:~$ python dirty.py
vulnerable@kali:~$ python dirty.py --target passwd
Скрипт может записать несколько файлов в /tmp:
Созданные файлы следует удалить после выполнения, но для этого может потребоваться root-доступ.
Этот эксплойт перезаписывает страницу файла, находящуюся в кэше страниц. Маловероятно, что он повредит сам файл. Если произошло повреждение или ошибка, скорее всего, вам просто нужно подождать, пока страница будет перезаписана в кэше, или перезагрузить компьютер, чтобы устранить любые проблемы. Тем не менее, я не несу ответственности за ущерб, причинённый этим кодом, поэтому, пожалуйста, внимательно прочитайте и взламывайте ответственно. Обязательно также ознакомьтесь со статьёй Макса Келлермана на cm4all.com.