Агенция за национална сигурност и Федерално бюро за разследвания на САЩ , според който 85-то главно звено на специалната служба (85 ГЦСС ГРУ) използва комплекс от злонамерен софтуер, наречен «Дроворуб». В състава на «Дроворуба» влиза руткит под формата на модул на ядро на Linux, инструмент за прехвърляне на файлове и пренасочване на мрежови портове и управляващ сървър. Клиентската част може да изтегля и качва файлове, да изпълнява произволни команди от името на потребителя root и да пренасочва мрежовите портове към други възли в мрежата.
Управляващият център на «Дроворуба» получава път към конфигурационния файл в JSON формат като аргумент на командния ред:
{
«db_host» : «»,
«db_port» : «»,
«db_db» : «»,
«db_user» : «»,
«db_password» : «»,
«lport» : «»,
«lhost» : «»,
«ping_sec» : «»,
«priv_key_file» : «»,
«phrase» : «»
}
Като бекенд се използва база данни MySQL. За свързване на клиентите се използва протокол WebSocket.
Клиентът има вградена конфигурация, включително URL на сървъра, публичен RSA ключ, потребителско име и парола. След инсталирането на руткита конфигурацията се запазва под формата на текстов файл в JSON формат, който се скрива от системата чрез модула на ядрото на «Дроворуба»:
{
«id» : «cbcf6abc-466b-11e9-853b-000c29cb9f6f»,
«key»: «Y2xpZW50a2V5»
}
Тук «id» е уникален идентификатор, издаден от сървъра, последните 48 бита от който съответстват на MAC адреса на мрежовия интерфейс на сървъра. Параметърът «key» по подразбиране е кодирана в base64 стринг «clientkey», която се използва от сървъра при първоначалното ръкостискане. Освен това конфигурационният файл може да съдържа информация за скритите файлове, модули и мрежови портове:
{
«id» : «6fa41616-aff1-11ea-acd5-000c29283bbc»,
«key»: «Y2xpZW50a2V5»,
«monitor» : {
«file» : [
{
«active» : «true»,
«id» : «d9dc492b-5a32-8e5f-0724-845aa13fff98»,
«mask» : «testfile1»
}
],
«module» : [
{
«active» : «true»,
«id» : «48a5e9d0-74c7-cc17-2966-0ea17a1d997a»,
«mask» : «testmodule1»
}
],
«net» : [
{
«active» : «true»,
«id» : «4f355d5d-9753-76c7-161e-7ef051654a2b»,
«port» : «12345»,
«protocol» : «tcp»
}
]
}
}
Още един компонент на «Дроворуба» е агентът, чийто конфигурационен файл съдържа информация за свързване със сървъра:
{
«client_login» : «user123»,
«client_pass» : «pass4567»,
«clientid» : «e391847c-bae7-11ea-b4bc-000c29130b71»,
«clientkey_base64» : «Y2xpZW50a2V5»,
«pub_key_file» :«public_key»,
«server_host» : «192.168.57.100»,
«server_port» :«45122»
«server_uri» :»/ws»
}
Полета «clientid» и «clientkey_base64» първоначално отсъстват, те се добавят след първоначалната регистрация на сървъра.
След инсталацията се извършват следните операции:
- зарежда се модул на ядрото, който регистрира хукове за системни повици;
- клиентът извършва регистрация в модула на ядрото;
- модулът на ядрото скрива работещия процес на клиента и неговия изпълним файл на диска.
За взаимодействие на клиента с модула на ядрото се използва псевдоустройство, например /dev/zero. Модулът на ядрото извършва анализ на всички данни, записвани в устройството, а за предаване в обратна посока изпраща на клиента сигнал SIGUSR1, след което той чете данни от същото устройство.
За откриване на «Дроворуба» може да се използва анализ на мрежовия трафик с помощта на NIDS (зловредната мрежова активност в самата заразена система не може да бъде идентифицирана, тъй като модулът на ядрото скрива използваните от него мрежови сокети, правила netfilter и пакети, които биха могли да бъдат прихванати от raw-сокетите). В система, в която е инсталиран «Дроворуб», може да се открие модулът на ядрото, като му се изпрати команда за скриване на файл:
touch testfile
echo “ASDFZXCV:hf:testfile” > /dev/zero
ls
Създаденият файл «testfile» при това става невидим.
Други методи за откриване включват анализ на паметта и съдържанието на диска. За предотвратяване на заразяване се препоръчва използването на задължителна проверка на подписа на ядрото и модулите, налична от версия на ядрото linux 3.7.
В доклада се съдържат правила за Snort за откриване на мрежова активност на «Дроворуба» и правила Yara за детектиране на неговите компоненти.
Напомняме, че 85 ГЦСС ГРУ (вч 26165) е асоцииран с групата , отговорна за многобройни кибератаки.
Източник: opennet.ru
