Kodesignering er en metode til at bruge en certifikatbaseret digital signatur til et stykke software, så operativsystemet og brugerne kan bestemme dets sikkerhed. Kun den korrekte software kan bruge dens tilsvarende digitale signatur.
Brugere kan sikkert downloade og installere software, og udviklere beskytter deres produkters omdømme med kodesignering. Hackere og malware-distributører bruger dog netop det system til at få ondsindet kode gennem antiviruspakker og andre sikkerhedsprogrammer . Så hvad er kodesigneret malware, og hvordan virker det?
Hvad er kodesigneret malware?
Når software er digitalt signeret, betyder det, at det har en officiel digital signatur. Certifikatmyndigheden udsteder et certifikat til en software for at fastslå, at softwaren er lovlig og sikker at bruge.
Brugere behøver ikke at bekymre sig, fordi operativsystemet vil tjekke certifikatet og verificere den digitale signatur. For eksempel bruger Windows en certifikatkæde, der indeholder alle de nødvendige certifikater for at sikre, at softwaren er legitim.
Certifikatkæden indeholder alle de certifikater, der er nødvendige for at certificere den enhed, der er identificeret af slutcertifikatet. Faktisk består det af et terminalcertifikat, et mellemliggende CA-certifikat og et rod-CA-certifikat, som alle parter i kæden har tillid til. Hvert mellemliggende CA-certifikat i kæden indeholder et certifikat udstedt af CA et niveau over det. Rod-CA udsteder certifikater til sig selv.
Når først systemet er oppe at køre, kan du stole på softwaren, kodesigneringssystemet og CA. Malware er ondsindet software, er ikke tillid til og har ikke adgang til certifikatmyndighed eller kodesignering.
Hackere stjæler certifikater fra certifikatmyndigheden
Antivirussoftware ved, at malware er ondsindet, fordi den påvirker dit system negativt. Det udløser advarsler, brugere rapporterer problemer, og antivirussoftware kan skabe malware-signaturer for at beskytte andre computere, der bruger den samme antivirusmotor.
Men hvis malware-skabere kunne signere malware ved hjælp af officielle digitale signaturer, ville ovenstående proces ikke ske. I stedet kan kodesynget malware komme ind i systemet via den officielle rute, fordi din antivirussoftware og dit operativsystem ikke registrerer noget farligt.
Ifølge Trend Micro-forskning er hele malwaremarkedet fokuseret på at understøtte udviklingen og distributionen af kodesigneret malware. Malware-operatører har adgang til gyldige certifikater, der bruges til at signere ondsindet kode. Tabellen nedenfor viser mængden af malware, der har brugt kodesignering for at undgå antivirussoftware siden april 2018.
Trend Micros forskning viser også, at omkring 66 % af malware har digitale signaturer. Derudover er der nogle specifikke typer malware, der har flere versioner af digitale signaturer, såsom trojanske heste , droppere og ransomware .
Hvor kommer det digitale certifikat for kodesignering fra?
Malware-distributører og -udviklere har to måder at skabe kodesigneret malware på. De stjæler certifikater fra certifikatmyndigheden ved direkte at erhverve eller udgive sig for at være en legitim organisation og anmode om et certifikat fra CA.
Som du kan se, er CA ikke det eneste sted, hackere målretter mod. Distributører med adgang til legitime certifikater kan sælge pålidelige digitalt signerede certifikater til malware-udviklere og -distributører.
Et sikkerhedsforskerhold fra Masaryk University i Tjekkiet og Maryland Cybersecurity Center opdagede fire organisationer, der sælger Microsoft Authenticode-certifikater til anonyme købere. Når en malwareudvikler har et Microsoft Authenticode-certifikat, kan de signere enhver mulig malware gennem kodesignering og certifikatbaseret beskyttelse.
I nogle andre tilfælde vil hackere i stedet for at stjæle certifikater infiltrere softwarebyggeserveren. Når en ny softwareversion frigives, vil den have et legitimt certifikat, hackere udnytter denne proces til at tilføje ondsindet kode.
Eksempel på kodesigneret malware
Så hvordan ser kodesigneret malware ud? Nedenfor er tre eksempler på denne type malware.
- Stuxnet malware : Denne malware ødelagde Irans atomprogram ved hjælp af to stjålne certifikater og fire nul-dages sårbarheder. Disse certifikater blev stjålet fra to virksomheder JMicron og Realtek. Stuxnet brugte stjålne certifikater for at undgå Windows' nye introduktionskrav om, at alle drivere kræver verifikation.
- Asus-serverbrud: Mellem juni og november 2018 trængte hackere ind på en Asus-server, som virksomheder bruger til at skubbe softwareopdateringer til brugerne. Forskning hos Kaspersky Lab viser, at omkring 500 tusinde Windows-enheder modtog denne ondsindede opdatering, før de blev opdaget. Uden at stjæle certifikater underskriver disse hackere legitime Asus digitale certifikater for deres malware, før softwareserveren distribuerer systemopdateringer.
- Flame malware: Variant af Flame-modulet malware rettet mod mellemøstlige lande, ved hjælp af svigagtigt signerede certifikater for at undgå opdagelse. Flame-udviklere brugte en svag krypteringsalgoritme til at forfalske digitale kodesigneringscertifikater, hvilket fik det til at se ud, som om Microsoft havde underskrevet dem. I modsætning til Stuxnet, som var beregnet til at være destruktiv, er Flame et spionværktøj, der søger efter PDF-filer, AutoCAD-filer, tekstfiler og andre typer vigtige industrielle dokumenter.
Hvordan undgår man kodesigneret malware?
Denne type malware bruger kodesignering for at undgå opdagelse af antivirussoftware og -systemer, så det er ekstremt vanskeligt at beskytte mod kodesigneret malware. Det er vigtigt altid at opdatere antivirussoftware og -systemer, undgå at klikke på ukendte links og tjek omhyggeligt , hvor linket kommer fra, før du følger det. Se artiklen Risici fra malware og hvordan man undgår det .