Sploitus

Exploit for CVE-2018-4407

kitploit · 2026-08-25

Exploit Code

MARKDOWN16 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-LUCAGIOVAGNOLI-CVE-2018-4407
# CVE-2018-4407

CVE-2018-4407 — это уязвимость переполнения буфера в коде ошибки ICMP ядра XNU. Она вызывает сбой устройств iOS (как ноутбуков, так и мобильных) при получении одного (да, одного!) неверного пакета.

Ошибка была первоначально раскрыта Кевином Бэкхаусом в его сообщении в блоге lgtm 30 октября 2018 года.

Код в этом репозитории является доказательством концепции эксплуатации CVE-2018-4407, реализованным на Python с использованием scapy и nmap.

## Отладка

Некоторые шаги моего процесса отладки. Взгляд на код ядра XNU приводит к числам для `iphlen` и `tcphlen`, которые могут вызвать переполнение буфера. Как сказал Бэкхаус, у нас должно быть `icmplen > 84`, и, похоже, нам нужно попасть в ветвь кода `if(oip->ip_p == IPPROTO_TCP)`, чтобы достичь этого. TCP-пакет вызовет эту уязвимость.

![alt text](https://raw.githubusercontent.com/lucagiovagnoli/CVE-2018-4407/master/XNU_kernel_diff.png)

### Формат IPv4 заголовка []