Нов ботнет, наречен Kairos, се разпространява към Linux устройства чрез много стара грешка: Telnet услуга, която приема потребителя root без парола.
След като влязат, атакуващите инсталират малка програма на Go, която превръща устройството във възел за DDoS операции. Кампанията показва, че елементарни пропуски в сигурността все още дават лесен път на атакуващите.
Kairos не използва сложен експлойт или zero-day уязвимост. Атакуващите се свързват към изложени в интернет Telnet услуги и влизат като root с празна парола.
Слабият отдалечен достъп е захранвал много ботнети и преди, включително ботнет, базиран на VOIP, който атакува рутери и също разчиташе на стандартни Telnet данни за вход.
Анализатори от Nozomi Networks откриха зловредния софтуер, след като техните honeypot системи засякоха три различни IP адреса, разпространяващи образци на Kairos.
В доклада на Nozomi Networks Labs той е описан като досега недокументиран DDoS бот за Linux. Трите образеца представляват една и съща програма.
Те се различават само по предварително зададения адрес на командно-контролния (C2) сървър и по нивото на корекции на компилатора на Go – версии 1.27.0 и 1.27.1. Това подсказва, че операторът прекомпилира една и съща кодова база за всеки C2 сървър.
Хакери експлоатират Telnet без парола
Всяка наблюдавана инфекция започваше по един и същ начин. Атакуващият познаваше стандартния Telnet вход – потребител root с празна парола. След това операторът изпълняваше кратък набор от команди на shell.
Първо, uname -m проверяваше типа на процесора на устройството, а зловредният код, поискан след това, x86_64, съответстваше на него. Това загатва, че операторът поддържа отделна версия за всяка архитектура.
След това командите преминаваха в папката /tmp, премахваха остатъци от предишни опити и изтегляха зловредния софтуер.

Дропърът опитва последователно няколко метода за изтегляне: wget, curl, BusyBox wget и накрая TFTP. Всяко изтеглено копие получава пълни права с chmod 777 и се стартира във фонов режим.
Резервните варианти с BusyBox и TFTP позволяват на товарача да работи на малки вградени системи, в които липсват обичайните инструменти. В примерната верига сървърът на 172[.]86[.]85[.]39 хостваше зловредния код на TCP порт 8080 и същевременно служеше като C2 на порт 9999.
След стартиране ботът се свързва към единствения си предварително зададен IP адрес и изпраща текстов сигнал REGISTER linux amd64 <NumCPU>. След това изпраща празен ред на всеки две секунди, за да поддържа сесията жива.
Ако връзката прекъсне, опитва отново на всеки пет секунди без ограничение. C2 може да изпраща само три команди: hold, която започва наводняване, !ka, която спира всички атаки и поставя бота на пауза, и !ku, която му позволява отново да приема атаки. Подобни заплахи, управлявани през Telnet, са ботнетът Tengu Mirai, който рестартира IoT устройства, когато някой се опита да го премахне.
Как Kairos залива целите и как да се защитим
Kairos не изпраща огромни обеми трафик. Вместо това отваря стотици или хиляди истински TCP връзки към жертвата и ги държи отворени. Ботът стартира 128 работни нишки на процесорно ядро, с минимум 256, така че устройство с 16 ядра отваря 2048 връзки при една атака.
Всяка нишка завършва нормално handshake, след което изпраща по един интервал на всеки пет секунди, за да държи сокета отворен. Ако целта откаже връзката, нишката опитва отново на всеки 100 милисекунди, което създава бърза „буря от връзки“.
Услугата на жертвата бавно изчерпва ресурсите си и спира да приема реални потребители. Ботът е прост и има слабости: няма устойчивост (persistence), саморазпространение, изпълнение на команди и функции против анализ.

Ботът се опитва да се скрие, като преименува себе си на [kworker/0:1], за да изглежда като нишка на ядрото на Linux. Въпреки това инструменти като ps и папката /proc пак показват истинското име.
Тъй като ботът завършва истински handshake, изходният му IP адрес е видим и за жертвата. Това е за разлика от IoT щама KATARU, който добавя повишаване на привилегиите и криптиран C2 трафик.
Защитаващите се трябва да изключат Telnet, да сменят стандартните или празните пароли и да блокират изходящия трафик към известните C2 адреси на портове 9999 и 8080.
Тъй като C2 адресът се променя с всяка компилация, Nozomi препоръчва разчитане на детекция, базирана на код. Екипите могат да добавят IDS правило за текстовия сигнал REGISTER linux и да внедрят публикуваното YARA правило.
Те трябва също да настроят известяване за всеки процес „kernel worker“, който държи много изходящи връзки. Изложените в интернет услуги остават честа входна точка, както се видя, когато уязвимост за заобикаляне на удостоверяването в cPanel беше използвана за внедряване на зловредния софтуер Mirai.
Индикатори за компрометиране (IoCs):-
| Тип | Индикатор | Бележка |
|---|---|---|
| IPv4 | 103[.]124[.]165[.]53 | IP на атакуващия |
| IPv4 | 172[.]86[.]85[.]39 | Хост на зловредния код (TCP/8080) и C2 (TCP/9999) |
| IPv4 | 45[.]129[.]56[.]140 | IP на атакуващия |
| IPv4 | 91[.]92[.]42[.]84 | C2 / сървър със зловреден код |
| IPv4 | 45[.]129[.]56[.]222 | IP на атакуващия |
| IPv4 | 85[.]11[.]167[.]41 | C2 / сървър със зловреден код |
| SHA-256 | bfdf77ee849bffff7d6812f343841f3278e6e75949ab3e25644f17c24be87213 | amd64 |
| SHA-256 | 181d1adfcf2da42afaa8fc1ceb4493cf2322c18431f3512673f4693e11b9cabd | amd64 |
| SHA-256 | 87a77b056a6cf33ab3f72b534d57788046281349aacd42846f3df5e0b22655e1 | amd64 |
| SHA-256 | 01568930028bdcce6ecd7e923971cf41f145e045e59536aa264241bc9a8e9650 | arm |
| SHA-256 | 7635821eced7092e916e86471567e26c20ee5bda4a7b96f6b3d21a921862a416 | arm |
| SHA-256 | 82d0f2258b2eeeeacfaa719665e0435619f8cc2f1d5dd13dd08134e0bf2d7dd6 | arm |
| SHA-256 | 5743ebfc697385909b3906af1ac9d851936e6556f323216e10cc1e129fa369a0 | mips |
| SHA-256 | 1ef5835cb0dfe305de05d92874c8a05eada9c02fcd04d9548dd059b44405519a | mipsle |
| SHA-256 | 9b628b5453576f3324036deb346db9cdd07bd673ecba4a464d072ba01a8b7a54 | 386 |
Забележка: IP адресите и домейните са умишлено дефанг-нати (напр. [.]), за да се предотврати случайно разрешаване или превръщане в хипервръзки. Връщайте оригиналния вид само в контролирани платформи за разузнаване на заплахи като MISP, VirusTotal или вашия SIEM.