Показать сообщение отдельно

  #751  
Старый 15.07.2015, 05:21
binarymaster
Флудер
Регистрация: 11.12.2010
Сообщений: 4,688
Провел на форуме:
997379

Репутация: 125


По умолчанию

Сегодня утром на гик-хабре прочитал захватывающую дух статью по нашей теме:

http://geektimes.ru/post/253392/

И задумался... интересно, есть ли роутеры, которые Router Scan по каким-то причинам вывел из строя. И если да, то сколько их. Проект предполагает использование неразрушающих уязвимостей, эксплуатация которых не должна приводить к падениям, отказам в обслуживании, и прочим малоприятным последствиям.

Сегодня же, во время тестового сканирования диапазонов МГТС, обнаружил, что многие роутеры ZTE F660 вместо веб-админки выдают 500 Internal Error, выводя неизвестную ошибку в одном из системных скриптов. В браузере это выглядит так:



Решил попробовать зайти в telnet, и получилось - порт 23 был открыт, и пароль был одним из стандартных. Посмотрел структуру папок - в /home/httpd было пусто! Но этого не может быть, файловая система ведь только для чтения. Решил копнуть в сторону монтированных разделов, и наткнулся на такую вещь:

Код:
/ # mount
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw)
/dev/mtdblock2 on /tagparam type jffs2 (rw)
tmpfs on /var type tmpfs (rw)
/dev/mtdblock5 on /userconfig type jffs2 (rw)
none on /proc/bus/usb type usbfs (rw)
tmpfs on /home/httpd type tmpfs (rw)
Последняя строчка указывает, что смонтирована временная ФС в памяти устройства по адресу /home/httpd. И тут мне пришло в голову, что один из эксплойтов Router Scan для ZTE использует телнет и монтирование временного хранилища для подгрузки скрипта test_gch.gch, получающего пароль администратора.

Казалось бы, в коде данного эксплойта предусмотрено последующее размонтирование директории после получения пароля... но не всё так гладко. Router Scan имеет свойство зависать при одновременной обработке большого кол-ва устройств и иногда падать. А это означает, что эксплойт может остановиться на пол пути, не размонтировав директорию, таким образом вызвав отказ в обслуживании веб интерфейса.

После я решил узнать, сколько таких сломанных админок насчитывается в мире...

https://www.shodan.io/search?query=Mini+web+server+ZTE+corp+500+Error

А их чуть более полкило! (Showing results 1 - 10 of 519)

В общем, сей факт меня не радует, и я добавил в Router Scan код, позволяющий определить данную неисправность, и в автоматическом режиме (как всегда) исправить её через тот же telnet. Исправляется всё очень просто:

1. Получаем root шелл

2. umount /home/httpd

3. exit

После чего функционал веб интерфейса приходит в норму. Конечно, данный недочёт не является критическим, поскольку он также исправляется обычной перезагрузкой, но всё же мало приятным. Исправляющая фича будет доступна в релизе.
 
Ответить с цитированием