
Полный эксплойт для D-Link DCS-5020L, краш POC для других уязвимых устройств.
Эксплойт существует в сервере устройств, alphapd, при обработке wireless.htm перед его отображением пользователю. Если WEPEncryption указан в URL, это приводит к переполнению буфера, если значение длиннее 0x28 байт. URL вида:
http://IP_ADDRESS/wireless.htm?WEPEncryption=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBB
вызовет срабатывание эксплойта и начнет выполнение по адресу 0x42424242.
Примечание: Для успешного использования эксплойта требуются учетные данные. Учетные данные по умолчанию: admin с пустым паролем.
Полноценный эксплойт, использующий переполнение буфера в сервере alphapd для выполнения произвольной команды на устройстве. Он был протестирован на DCS-5020L со всеми доступными версиями прошивки, а также на самой последней прошивке DCS-930L. Больше устройств и версий можно добавить, прочитав комментарии в файле overflow. Возможно, я добавлю больше устройств и версий по мере возможности, но это не в приоритете. В начальном коммите этого проекта есть несколько более простых примеров на Python2.
Ниже приведен список устройств, затронутых этим эксплойтом. Все версии прошивки в настоящее время уязвимы.
DCS-930L
DCS-931L
DCS-932L
DCS-933L
DCS-934L
DCS-5009L
DCS-5010L
DCS-5020L
DCS-5025L
DCS-5030L
https://www.shodan.io/search?query=Server%3A+alphapd
Этот проект написан на Python 3 и не будет выполняться под Python 2.
python3 exploit.py -i 192.168.0.100 -P 80 -u admin -p ""
Видео - https://www.youtube.com/watch?v=ijcbkY3dtso Перемотайте на 13:15, чтобы услышать о самом эксплойте.
Блог из 4 частей