Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Продължаваме нашата поредица от статии, посветени на анализа на зловреден софтуер. IN първо Отчасти разказахме как Иля Померанцев, специалист по анализ на зловреден софтуер в CERT Group-IB, извърши подробен анализ на файл, получен по пощата от една от европейските компании, и откри там шпионски софтуер Агент Тесла. В тази статия Иля предоставя резултатите от поетапен анализ на основния модул Агент Тесла.

Agent Tesla е модулен софтуер за шпиониране, разпространяван с помощта на модел на злонамерен софтуер като услуга под прикритието на легитимен кийлогър продукт. Agent Tesla е способен да извлича и предава потребителски идентификационни данни от браузъри, имейл клиенти и FTP клиенти към сървъра към нападателите, да записва данни от клипборда и да заснема екрана на устройството. По време на анализа официалният уебсайт на разработчиците не беше достъпен.

Конфигурационен файл

Таблицата по-долу изброява коя функционалност се отнася за примера, който използвате:

описание Стойност
Флаг за използване на KeyLogger вярно
Флаг за използване на ScreenLogger фалшив
Интервал на изпращане на регистрационни файлове на KeyLogger в минути 20
Интервал на изпращане на журнала на ScreenLogger в минути 20
Флаг за обработка на клавиша Backspace. False – само регистриране. True – изтрива предишния ключ фалшив
тип CNC. Опции: smtp, webpanel, ftp SMTP
Флаг за активиране на нишка за прекратяване на процеси от списъка „%filter_list%“ фалшив
Флаг за деактивиране на UAC фалшив
Флаг за деактивиране на диспечера на задачите фалшив
Флаг за деактивиране на CMD фалшив
Флаг за дезактивиране на прозорец за изпълнение фалшив
Флаг за деактивиране на инструмента за преглед на системния регистър фалшив
Деактивирайте флага за точки за възстановяване на системата вярно
Флаг за деактивиране на контролния панел фалшив
Флаг за деактивиране на MSCONFIG фалшив
Флаг за деактивиране на контекстното меню в Explorer фалшив
Пин флаг фалшив
Път за копиране на главния модул при закачването му към системата %startupfolder% %insfolder%%insname%
Флаг за настройка на атрибутите „Система“ и „Скрит“ за основния модул, присвоен на системата фалшив
Флаг за извършване на рестартиране, когато е фиксиран към системата фалшив
Флаг за преместване на основния модул във временна папка фалшив
UAC байпас флаг фалшив
Формат на дата и час за регистриране гггг-ММ-дд ЧЧ:мм:сс
Флаг за използване на програмен филтър за KeyLogger вярно
Тип програмно филтриране.
1 – името на програмата се търси в заглавията на прозорците
2 – името на програмата се търси в името на процеса на прозореца
1
Програмен филтър "фейсбук"
"туитър"
"gmail"
"инстаграм"
"филм"
"скайп"
"порно"
"хак"
"whatsapp"
"раздор"

Прикрепване на основния модул към системата

Ако съответният флаг е зададен, основният модул се копира на пътя, посочен в конфигурацията като път, който да бъде присвоен на системата.

В зависимост от стойността от конфигурацията, на файла се дават атрибутите „Hidden“ и „System“.
Автоматичното стартиране се осигурява от два клона на регистъра:

  • Софтуер HKCU Microsoft WindowsCurrentVersionRun%insregname%
  • HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedИзпълнете %insregname%

Тъй като буутлоудърът се инжектира в процеса RegAsm, задаването на постоянен флаг за основния модул води до доста интересни последствия. Вместо да се копира, зловредният софтуер прикачи оригиналния файл към системата RegAsm.exe, по време на което е извършена инжекцията.

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2

Взаимодействие с C&C

Независимо от използвания метод, мрежовата комуникация започва с получаване на външния IP на жертвата, използваща ресурса проверка[.]amazonaws[.]com/.
По-долу са описани методите за мрежово взаимодействие, представени в софтуера.

уебпанел

Взаимодействието се осъществява чрез HTTP протокол. Зловреден софтуер изпълнява POST заявка със следните заглавки:

  • Потребителски агент: Mozilla/5.0 (Windows U Windows NT 6.1 ru rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729)
  • Връзка: Keep-Alive
  • Content-Type: application/x-www-form-urlencoded

Адресът на сървъра се определя от стойността %PostURL%. Криптираното съобщение се изпраща в параметъра «P». Механизмът за криптиране е описан в раздел „Алгоритми за шифроване“ (метод 2).

Изпратеното съобщение изглежда така:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nclient={8}nlink={9}nusername={10}npassword={11}nscreen_link={12}

Параметър тип показва вида на съобщението:

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
hwid — MD5 хеш се записва от стойностите на серийния номер на дънната платка и ID на процесора. Най-вероятно се използва като потребителско име.
път — служи за предаване на текущия час и дата.
pcname - определя се като /.
logdata — регистрационни данни.

При предаване на пароли съобщението изглежда така:

type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nscreen_link={8}n[passwords]

Следват описания на откраднатите данни във формата nclient[]={0}nlink[]={1}nusername[]={2}npassword[]={3}.

SMTP

Взаимодействието се осъществява чрез SMTP протокол. Изпратеното писмо е в HTML формат. Параметър ТЯЛО има формата:

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Заглавката на писмото има обща форма: / . Съдържанието на писмото, както и прикачените към него файлове, не са криптирани.

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Взаимодействието се осъществява чрез FTP протокол. Файл с името се прехвърля на посочения сървър _-_.html. Съдържанието на файла не е криптирано.

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2

Алгоритми за криптиране

Този случай използва следните методи за криптиране:

Методът 1

Този метод се използва за криптиране на низове в главния модул. Използваният алгоритъм за криптиране е AES.

Входът е шестцифрено десетично число. Върху него се извършва следната трансформация:

f(x) = (((x >> 2 - 31059) ^ 6380) - 1363) >> 3

Получената стойност е индексът за вградения масив от данни.

Всеки елемент от масива е последователност DWORD. При сливане DWORD получава се масив от байтове: първите 32 байта са ключът за криптиране, последван от 16 байта от вектора за инициализация, а останалите байтове са криптираните данни.

Методът 2

Използван алгоритъм 3DES в режима ЕЦБ с подплата в цели байтове (PKCS7).

Ключът се определя от параметъра %urlkey%, но криптирането използва своя MD5 хеш.

Злонамерена функционалност

Проучваната извадка използва следните програми, за да реализира своята злонамерена функция:

ключов регистратор

Ако има съответен флаг за зловреден софтуер, използващ функцията WinAPI Задайте WindowsHookEx присвоява свой собствен манипулатор за събития натискане на клавиши на клавиатурата. Функцията манипулатор започва с получаване на заглавието на активния прозорец.

Ако флагът за филтриране на приложението е зададен, филтрирането се извършва в зависимост от посочения тип:

  1. името на програмата се търси в заглавията на прозорците
  2. името на програмата се търси в името на процеса на прозореца

След това към дневника се добавя запис с информация за активния прозорец във формат:

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
След това се записва информация за натиснатия клавиш:

ключ Рекорд
Backspace В зависимост от флага за обработка на клавиша Backspace: False – {BACK}
True – изтрива предишния ключ
КЛАВИШ ЗА ГЛАВНИ БУКВИ {КЛАВИШ ЗА ГЛАВНИ БУКВИ}
ESC {ESC}
PageUp {Страница нагоре}
Надолу
ИЗТРИЙ {DEL}
" "
F5 {F5}
& &
F10 {F10}
TAB {РАЗДЕЛ}
< <
> >
празнина
F8 {F8}
F12 {F12}
F9 {F9}
ALT + TAB {ALT+TAB}
КРАЙ {КРАЙ}
F4 {F4}
F2 {F2}
CTRL {CTRL}
F6 {F6}
прав
Up
F1 {F1}
Left
PageDown {PageDown}
Поставете {Insert}
Печеля {Печеля}
NumLock {NumLock}
F11 {F11}
F3 {F3}
HOME {У ДОМА}
ENTER {ENTER}
ALT + F4 {ALT+F4}
F7 {F7}
Друг ключ Символът е с главни или малки букви в зависимост от позициите на клавишите CapsLock и Shift

На определена честота събраният журнал се изпраща до сървъра. Ако прехвърлянето е неуспешно, регистрационният файл се записва във файл %TEMP%log.tmp във формат:

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Когато таймерът се задейства, файлът ще бъде прехвърлен на сървъра.

ScreenLogger

С определена честота зловредният софтуер създава екранна снимка във формат Jpeg със стойност Качество равно на 50 и го записва във файл %APPDATA %.jpg. След прехвърлянето файлът се изтрива.

clipboardlogger

Ако е зададен съответният флаг, се правят замени в прихванатия текст съгласно таблицата по-долу.

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
След това текстът се вмъква в дневника:

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2

Крадец на пароли

Зловреден софтуер може да изтегля пароли от следните приложения:

Браузеры Имейл клиенти FTP клиенти
Chrome перспектива FileZilla
Firefox Буревестник WS_FTP
IE/Edge лисича поща WinSCP
сафари Opera Mail CoreFTP
Opera Browser IncrediMail FTP навигатор
Yandex Pocomail FlashFXP
Comodo Eudora SmartFTP
ChromePlus Прилепът FTPCommander
Хром Пощенска кутия
Факел ClawsMail
7Star
Приятел
BraveSoftware Jabber клиенти VPN клиенти
CentBrowser Psi/Psi+ Отворете VPN
Чедот
CocCoc
Браузър на елементи Мениджъри за изтегляне
Браузър за поверителност на Epic Internet Download Manager
Комета JDownloader
Орбитум
Изкуствен спътник
uCozMedia
Vivaldi
SeaMonkey
Flock Browser
UC Browser
Черен ястреб
Cyber ​​​​Fox
K-Meleon
ледена котка
Icedragon
Бледата Луна
водна лисица
Falkon браузър

Противопоставяне на динамичния анализ

  • Използване на функцията Спя. Позволява ви да заобиколите някои пясъчни кутии чрез изчакване
  • Унищожаване на нишка Зона.Идентификатор. Позволява ви да скриете факта на изтегляне на файл от интернет
  • В параметър %filter_list% определя списък с процеси, които зловредният софтуер ще прекрати на интервали от една секунда
  • разединяване UAC
  • Деактивиране на диспечера на задачите
  • разединяване CMD
  • Деактивиране на прозорец «Изпълнете»
  • Деактивиране на контролния панел
  • Деактивиране на инструмент RegEdit
  • Деактивиране на точки за възстановяване на системата
  • Деактивирайте контекстното меню в Explorer
  • разединяване Msconfig
  • Околовръстен път UAC:

Неактивни функции на основния модул

По време на анализа на основния модул бяха идентифицирани функции, които отговаряха за разпространението в мрежата и проследяването на позицията на мишката.

Червей

Събитията за свързване на преносими носители се наблюдават в отделна нишка. При свързване злонамереният софтуер с името се копира в корена на файловата система scr.exe, след което търси файлове с разширение LNK. Екипът на всеки LNK промени в cmd.exe /c start scr.exe&start & изход.

Всяка директория в основата на медията получава атрибут "скрит" и се създава файл с разширение LNK с името на скритата директория и командата cmd.exe /c стартирайте scr.exe&explorer /root, "%CD%" и излезте.

MouseTracker

Методът за извършване на прихващане е подобен на този, използван за клавиатурата. Тази функционалност все още е в процес на разработка.

Файлова активност

Път описание
%Temp%temp.tmp Съдържа брояч за опити за байпас на UAC
%startupfolder%%insfolder%%insname% Пътят, който трябва да бъде присвоен на системата HPE
%Temp%tmpG{Текущо време в милисекунди}.tmp Път за архивиране на основния модул
%Temp%log.tmp Лог файл
%AppData%{Произволна последователност от 10 знака}.jpeg Снимки на екрана
C:UsersPublic{Произволна последователност от 10 знака}.vbs Път до vbs файл, който буутлоудърът може да използва за прикачване към системата
%Temp%{Име на персонализирана папка}{Име на файл} Пътят, използван от буутлоудъра, за да се прикрепи към системата

Профил на нападателя

Благодарение на твърдо кодираните данни за удостоверяване, успяхме да получим достъп до командния център.

Неуспешна избирателна активност: нека изложим AgentTesla на чиста вода. Част 2
Това ни позволи да идентифицираме последния имейл на нападателите:

junaid[.]в***@gmail[.]com.

Името на домейна на командния център е регистрирано в пощата sg***@gmail[.]com.

Заключение

По време на подробен анализ на зловреден софтуер, използван при атаката, успяхме да установим неговата функционалност и да получим най-пълния списък от индикатори за компрометиране, свързани с този случай. Разбирането на механизмите на мрежово взаимодействие между зловреден софтуер направи възможно да се дадат препоръки за коригиране на работата на инструментите за информационна сигурност, както и да се напишат стабилни правила за IDS.

Основна опасност Агент Тесла като DataStealer, тъй като не е необходимо да се ангажира със системата или да чака контролна команда, за да изпълни задачите си. След като е на машината, тя незабавно започва да събира лична информация и я прехвърля към CnC. Това агресивно поведение по някакъв начин е подобно на поведението на ransomware, с единствената разлика, че последният дори не изисква връзка с мрежата. Ако срещнете това семейство, след като почистите заразената система от самия злонамерен софтуер, определено трябва да смените всички пароли, които биха могли, поне теоретично, да бъдат запазени в някое от изброените по-горе приложения.

Гледайки напред, да кажем, че нападателите изпращат Агент Тесла, първоначалният зареждащ механизъм се променя много често. Това ви позволява да останете незабелязани от статичните скенери и евристични анализатори по време на атака. И тенденцията на това семейство незабавно да започне дейността си прави системните монитори безполезни. Най-добрият начин за борба с AgentTesla е предварителен анализ в пясъчна кутия.

В третата статия от тази поредица ще разгледаме други използвани буутлоудъри Агент Тесла, а също така изучавайте процеса на тяхното полуавтоматично разопаковане. Не пропускайте!

Хашиш

SHA1
A8C2765B3D655BA23886D663D22BDD8EF6E8E894
8010CC2AF398F9F951555F7D481CE13DF60BBECF
79B445DE923C92BF378B19D12A309C0E9C5851BF
15839B7AB0417FA35F2858722F0BD47BDF840D62
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD

C&C

URL
sina-c0m[.]icu
smtp[.]sina-c0m[.]icu

RegKey

регистратура
HKCUSoftwareMicrosoftWindowsCurrentVersionRun{име на скрипт}
HKCUSoftwareMicrosoftWindowsCurrentVersionRun%insregname%
HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedRun%insregname%

Мютекс

Няма индикатори.

Файлове

Файлова активност
%Temp%temp.tmp
%startupfolder%%insfolder%%insname%
%Temp%tmpG{Текущо време в милисекунди}.tmp
%Temp%log.tmp
%AppData%{Произволна последователност от 10 знака}.jpeg
C:UsersPublic{Произволна последователност от 10 знака}.vbs
%Temp%{Име на персонализирана папка}{Име на файл}

Информация за мостри

Име неизвестен
MD5 F7722DD8660B261EA13B710062B59C43
SHA1 15839B7AB0417FA35F2858722F0BD47BDF840D62
SHA256 41DC0D5459F25E2FDCF8797948A7B315D3CB0753
98D808D1772CACCC726AF6E9
Тип PE (.NET)
Размер 327680
Оригинално име AZZRIDKGGSLTYFUUBCCRRCUMRKTOXFVPDKGAGPUZI_20190701133545943.exe
DateStamp 01.07.2019
съставител VB.NET

Име IELibrary.dll
MD5 BFB160A89F4A607A60464631ED3ED9FD
SHA1 1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD
SHA256 D55800A825792F55999ABDAD199DFA54F3184417
215A298910F2C12CD9CC31EE
Тип PE (.NET DLL)
Размер 16896
Оригинално име IELibrary.dll
DateStamp 11.10.2016
съставител Microsoft Linker (48.0*)

Източник: www.habr.com

Добавяне на нов коментар