Реверс-инжиниринг червя Win32.Mydoom.A (Novarg)
Аналитики разобрали архитектуру сетевого червя Win32.Mydoom.A (SHA-256: 4d033157b517e8086cb4d4f70758a93ca6768c0f8166dae5a92d667d1be0b9e0), генерировавшего до 30% мирового SMTP-трафика в январе 2004 года. Источник автономности репликации — отказ от системного интерфейса wab32.dll и MAPI в пользу встроенного Winsock-клиента с прямым DNS MX-резолвингом.
// Архитектурное отличие: MAPI vs автономный сокет
// Штатный механизм отправки Windows
// hRes = WABOpen(&lpAdrBook, &lpWABObject, NULL, 0);
// Реализация Mydoom.A (ws2_32.dll)
sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
connect(sSocket, (struct sockaddr*)&target_mx, sizeof(sin));
Штатные средства почтовой фильтрации того времени проверяли только расширение .exe, игнорируя вложения .pif и .scr, а серверы принимали сообщения на 25 порт без проверки SPF и DKIM.
Червь проверяет мутекс SwebSipcSmtxS0V, копирует себя в %SystemRoot%\system32\taskmon.exe и прописывает ключ автозагрузки HKLM\...\Run\TaskMon. Затем процесс рекурсивно сканирует файлы .htt, .wab, .htm, извлекает email-адреса побайтовой валидацией и резолвит MX-записи целевых доменов через DNS Type 0x000F. Сообщения рассылаются со спуфингом заголовка MAIL FROM, отсекая домены вендоров безопасности и TLD .gov/.mil.
Инфицирование требует запуска пользователем вредоносного вложения. При старте червь открывает в Notepad мусорный файл для имитации повреждения документа, параллельно поднимая SOCKS4-прокси на портах TCP 3127–3198 через shimgapi.dll. С 1 по 12 февраля 2004 года запускался DoS-флуд на www.sco[.]com силами 64 потоков HTTP GET, после чего репликатор самоликвидировался по системному таймеру.
Детектирование базируется на сетевой активности портов TCP 3127–3198, мутексе SwebSipcSmtxS0V и файловых артефактах taskmon.exe/shimgapi.dll.
shop.poxek
@poxek | @poxek_ai | MAX
Аналитики разобрали архитектуру сетевого червя Win32.Mydoom.A (SHA-256: 4d033157b517e8086cb4d4f70758a93ca6768c0f8166dae5a92d667d1be0b9e0), генерировавшего до 30% мирового SMTP-трафика в январе 2004 года. Источник автономности репликации — отказ от системного интерфейса wab32.dll и MAPI в пользу встроенного Winsock-клиента с прямым DNS MX-резолвингом.
// Архитектурное отличие: MAPI vs автономный сокет
// Штатный механизм отправки Windows
// hRes = WABOpen(&lpAdrBook, &lpWABObject, NULL, 0);
// Реализация Mydoom.A (ws2_32.dll)
sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
connect(sSocket, (struct sockaddr*)&target_mx, sizeof(sin));
Штатные средства почтовой фильтрации того времени проверяли только расширение .exe, игнорируя вложения .pif и .scr, а серверы принимали сообщения на 25 порт без проверки SPF и DKIM.
Червь проверяет мутекс SwebSipcSmtxS0V, копирует себя в %SystemRoot%\system32\taskmon.exe и прописывает ключ автозагрузки HKLM\...\Run\TaskMon. Затем процесс рекурсивно сканирует файлы .htt, .wab, .htm, извлекает email-адреса побайтовой валидацией и резолвит MX-записи целевых доменов через DNS Type 0x000F. Сообщения рассылаются со спуфингом заголовка MAIL FROM, отсекая домены вендоров безопасности и TLD .gov/.mil.
Инфицирование требует запуска пользователем вредоносного вложения. При старте червь открывает в Notepad мусорный файл для имитации повреждения документа, параллельно поднимая SOCKS4-прокси на портах TCP 3127–3198 через shimgapi.dll. С 1 по 12 февраля 2004 года запускался DoS-флуд на www.sco[.]com силами 64 потоков HTTP GET, после чего репликатор самоликвидировался по системному таймеру.
Детектирование базируется на сетевой активности портов TCP 3127–3198, мутексе SwebSipcSmtxS0V и файловых артефактах taskmon.exe/shimgapi.dll.
shop.poxek
@poxek | @poxek_ai | MAX