Bakdøren CoolClient skjuler seg med en signert driver i Windows-kjernen

Kaspersky har publisert en analyse av en ny utgave av bakdøren CoolClient. Den nye utgaven installerer en signert driver i Windows-kjernen, og driveren skjuler skadevarens egen prosess og beskytter filene og registernøklene den bruker. Kaspersky knytter aktiviteten til spionasjegruppen HoneyMyte, også kjent som Mustang Panda. Ofrene holder ifølge analysen til i Myanmar, Mongolia, Pakistan og Russland, og blant dem er bekreftede offentlige virksomheter. I alle innbruddene Kaspersky har undersøkt, kom CoolClient inn som bakdør nummer to, etter en infeksjon med PlugX.

Hva som skjer teknisk

Angrepet begynner med et program som er helt lovlig. I kampanjen mot Myanmar opprettet aktøren først to unntak i Microsoft Defender, ett for en mappe og ett for en fil, slik at katalogen skadevaren skulle bruke ikke ble skannet. Deretter laget aktøren en mappe som ligner den ekte Windows Defender-mappen, kopierte skadevarens filer inn i den, og døpte om et lovlig Sangfor-program til defender.exe. Når det programmet starter, laster det biblioteket libngs.dll fra sin egen mappe, og der ligger skadevarens versjon i stedet for den ekte. Teknikken kalles sideladning av DLL, og den virker fordi Windows leter etter biblioteket i programmets egen katalog først. For at skadevaren skal overleve en omstart, opprettes det en planlagt oppgave som kjører under kontoen SYSTEM, og oppgaven har fått et navn som ligner på en av Defenders egne tjenester.

Det nye ligger i det som skjer etterpå. Har prosessen administratorrettigheter, pakker den ut en driver som ligger komprimert inne i skadevaren, skriver den til disk som msagent.sys og starter den som en Windows-tjeneste. Brukerdelen åpner så en enhet i kjernen og sender tre styringsmeldinger, såkalte IOCTL-er. Den første registrerer skadevarens egen prosess som klarert, den andre oppgir adressen til kontrolltjeneren, og den tredje oppgir hvilke filstier og registernøkler driveren skal beskytte. Resten gjør driveren med utvidelsespunkter Windows selv tilbyr. Den fjerner prosessen fra listen operativsystemet bruker når det skal vise hvilke prosesser som kjører. Den registrerer et filsystemfilter som nekter tilgang til mappene som er oppgitt. Og den registrerer en rutine som Windows kaller ved oppslag i registeret, slik at de beskyttede nøklene faller ut av svaret før det når fram. Prosesser som ikke er registrert som klarerte, får redusert tilgang når de forsøker å åpne skadevarens prosess, og dermed kan de verken avslutte den eller se inn i den.

To detaljer fra analysen er verdt å merke seg. Driveren er signert med et sertifikat utstedt til Nanjing Ranyi Technology Co., Ltd., og sertifikatet var gyldig fra august 2013 til september 2014. Kaspersky har funnet flere eldre skadelige drivere signert med det samme sertifikatet, men skriver at ingenting knytter dem direkte til denne aktiviteten. Den andre detaljen er at hele driveren hoppes over dersom prosessen mangler administratorrettigheter. Da går skadevaren rett videre til siste trinn, og maskinen sitter igjen med en bakdør som ikke skjules av kjernen.

PlugX er først innebakdør nummer énFalsk Defender-mappeekte program laster DLLPlanlagt oppgavestarter som SYSTEMDriveren msagent.sysskjuler filer og prosess
Figur: Kjeden går fra PlugX til en signert driver som skjuler sporene. Uten administratorrettigheter hopper skadevaren over driveren.

Hva det betyr for deg som overvåker Windows-maskiner

Ofrene i denne kampanjen holder til i Asia, og kildene sier ingenting om norske virksomheter. Framgangsmåten er likevel den samme som du møter her hjemme. Har du unntak i Microsoft Defender for en mappe eller en fil, er de verdt en gjennomgang i dag, for det var nettopp et slikt unntak angriperen laget seg her. Vår vurdering er at unntak sjelden blir dokumentert med hvem som ba om dem og hvorfor, og et unntak ingen kan gjøre rede for er et sted ingen ser. Det samme gjelder planlagte oppgaver som kjører som SYSTEM, der navnet kan være valgt for å ligne på noe du stoler på.

Du bør også regne med at en driver kan stå i veien for undersøkelsen din. Når skadevaren først har fått en driver inn i kjernen, gir maskinen deg gale svar om seg selv. Prosessen vises ikke i listen, Windows svarer at mappen ikke finnes, og registernøkkelen kommer ikke med i oppslaget. Da hjelper det ikke å lete på maskinen mens den kjører. Vår vurdering er at svaret må hentes et annet sted, fra trafikken maskinen sender, fra logger som allerede er samlet inn utenfor maskinen, og fra et diskbilde tatt etter at maskinen er slått av. Etter NIS2 artikkel 21 hører dette til håndtering av hendelser, og det å kunne undersøke en maskin du ikke lenger stoler på er en del av den beredskapen.

Berigo anbefaler

  • Gå gjennom alle unntak i Microsoft Defender, og krev at hvert unntak har en eier og en skriftlig begrunnelse.
  • Let etter planlagte oppgaver som kjører som SYSTEM med navn som ligner på Microsofts egne tjenester.
  • Slå på Microsofts blokkeringsliste for sårbare drivere, og kontroller at den faktisk virker på maskinene.
  • Sørg for at sikkerhetsloggene sendes ut av maskinen fortløpende, slik at de finnes selv om maskinen skjuler sporene lokalt.
  • Ha en plan for hvordan dere undersøker en maskin dere ikke stoler på, og øv på den før dere trenger den.

Sikkerhet som forstås, styres og virker.

La oss hjelpe dere å gjøre sikkerhet til et fortrinn, ikke en kostnad. Ta kontakt for en uforpliktende samtale om hvor virksomheten står, og hva som bør prioriteres først.

Ta kontakt