Хакер #305. Многошаговые SQL-инъекции
Йоханнес Ульрих из SANS Technology Institute поделился информацией о вредоносном программном обеспечении, которое распространяется через маршрутизаторы Linksys разных моделей.
Полный список маршрутизаторов пока не составлен, но точно уязвимы модели E4200, E3200, E3000, E2500, E2100L, E2000, E1550, E1500, E1200, E1000 и E900.
Червь распространяется по порту 8080 и может использовать SSL. После запроса URL (/HNAP1/) он получает XML-страницу с настройками и версией прошивки.
Например, вот как выглядит соответствующий фрагмент от маршрутизатора E2500 с прошивкой 1.0.07 build 1.
<ModelName>E2500</ModelName> <FirmwareVersion>1.0.07 build 1</FirmwareVersion>
Червь использует информацию о версии маршрутизатора и прошивке. После получения информации он посылает эксплойт уязвимому CGI-скрипту на маршрутизатор. Судя по всему, запрос исполняется без проверки данных авторизации: он отправляется с именем пользователя "admin" и случайным паролем. Производитель Linksys (Belkin) уже уведомлен об имеющейся уязвимости.
Вторым запросом отправляется простой шелл-скрипт, который скачивает код червя: это бинарник ELF MIPS размером около 2 МБ.
После скачивания червя маршрутизатор осуществляет сканирование интернета в поиске новых жертв. В списке для сканирования около 670 различных сетей (некоторые /21, другие /24). Похоже, что все они принадлежат кабельным операторам в разных странах мира. Инфицированный маршрутизатор является хостом, с которого скачивается код для новой жертвы. Для каждой из них на короткое время открывается HTTP-сервер на новом порту.
Исследователи пока не обнаружили способ связи с командным сервером, но подозревают, что он есть. В качестве авторизации могут использоваться изображения из фильма «Луна», которые хранятся на сервере. Соответственно, благодаря им червь и получил название The Moon.
Проверить маршрутизатор на наличие уязвимости можно с помощью команды:
echo “GET /HNAP1/ HTTP/1.1rnHost: testrnrn” | nc routerip 8080