Skip to main content

Analyse van de ransomware Judge

Door 23 januari 2021 maart 10th, 2021 Blog, CERT

Ransomware blijft voor zowel bedrijven als consumenten nog altijd een van de grootste cyberdreigingen. Ook al zijn er in ransomware-land al vele grote namen bekend, er duiken nog altijd regelmatig nieuwe ransomwarefamilies op. We zijn sinds kort een van die nieuwe families op het spoor: Judge. BleepingComputer postte over deze nieuwe familie en ze verwezen daarin naar een tweet van xiaopao.

We vonden het tijd om deze ransomware onder de loep te nemen en in deze blogpost delen we onze bevindingen. Als eerste geven we een algemene omschrijving van de ransomware. Daarna lichten we een aantal vreemde details toe en gaan we dieper in op hoe de bestanden worden versleuteld. Tenslotte komen we met een oplossing: een gratis decryptor voor deze ransomware. De decryptor is binnenkort gratis te downloaden via het platform ‘NoMoreRansom’.

Algemene omschrijving

Judge-ransomware is geschreven in een .NET-programmeertaal, hoogstwaarschijnlijk Visual Basic. De eerste actie die de ransomware uitvoert, is controleren of de Mutex ‘vYtzIm0SDgeCYX5eq8g7’ aanwezig is (zo niet dan wordt hij gecreëerd) om te voorkomen dat meerdere instances parallel lopen. Vervolgens worden er enkele controles uitgevoerd om erachter te komen of het proces in een sandbox draait, worden processen die op de blacklist staan uitgeschakeld en worden systeemherstelpunten verwijderd. Als deze taken zijn uitgevoerd, wordt de cryptografie geïnitialiseerd en worden bestanden versleuteld.

Een opvallend detail aan Judge is dat de ransomware zowel een encryptor als een decryptor is. Zoals we in onderstaand screenshot kunnen zien, zit er rechtsonder in het scherm een knop ‘Enter your decrypt key’. Als er op deze knop wordt gedrukt, wordt het slachtoffer naar een volgend scherm geleid waar een wachtwoord kan worden ingevoerd om de bestanden direct te ontsleutelen. Normaal gesproken wordt er bij ransomware, in tegenstelling tot deze aanpak waarbij er slechts een sleutel of wachtwoord wordt gegeven, een aparte decryptor aangeboden als het slachtoffer heeft betaald.

Een ander opmerkelijk feit is dat de ransomware anti-sandboxcontroles uitvoert. De ransomware gaat algemene dingen als CheckRemoteDebuggerPresent en artefacten op het geïnfecteerde systeem langs die wijzen op aanwezigheid van VMware, VirtualBox of Sandboxie. Onderstaande screenshot laat een interessantere anti-sandboxcontrole zien. De naam van de functie suggereert dat de ransomware probeert te achterhalen of hij draait in de ANY.RUN-sandbox. In dit geval komt de query naar de IP-API terug als ‘true’ als het systeem van het slachtoffer zich in een datacenter of hostingnetwerk bevindt. De ransomware gebruikt dit waarschijnlijk om te controleren of hij wel of niet op een server draait.

Bestandsversleuteling

Judge-ransomware versleutelt bestanden met behulp van het algoritme AES-256 in de modus CBC. Elk bestand wordt in zijn geheel versleuteld in blokken van 4 KiB – daarom duurt het soms een tijdje voordat grote bestanden zijn versleuteld. Versleutelde bestanden krijgen een extensie als: ‘[[email protected]].judge’ en hebben geen voettekst met informatie over de versleuteling.

Tijdens de versleuteling genereert de ransomware een wachtwoord om de sleutel en IV voor AES van af te leiden en elk bestand wordt volgens met diezelfde sleutel en IV versleuteld. Het slachtoffer heeft dit wachtwoord nodig om de bestanden later te kunnen ontsleutelen. De aanvaller moet alleen wel dit wachtwoord aan het slachtoffer kunnen verstrekken. Het blijkt dat de ransomware het wachtwoord in combinatie met een waarde voor de identificatie van het slachtoffer in platte tekst naar de command & control-server van de aanvaller stuurt. In de meeste gevallen moet het slachtoffer eerst zijn publieke waarde vrijgeven, waarna de ransomware-aanvaller de geheime waarde voor ontsleuteling stuurt. In dit geval kan dat niet, omdat deze ransomware alleen gebruikmaakt van symmetrische encryptie.

Gratis decryptor

We zijn op basis van onze analyse van deze Judge-ransomware tot de conclusie gekomen dat het mogelijk is om alle (niet-gecorrumpeerde) getroffen bestanden te ontsleutelen zonder het losgeld te hoeven betalen. We hebben een decryptor ontwikkeld die we gratis ter beschikking stellen aan de slachtoffers van Judge. De decryptor is te downloaden via het platform ‘NoMoreRansom’.

Indicators of Compromise (IoC)

Indicator Value
SHA256 of ransomware 73ffa4ad8f7c49254febc4f90456a675905b173204a5450259ac3af483eb7a2f
SHA256 of ransomware (unpacked) ed6688508433b68b84ac86fbe6c9e20c68f0d6a925fe4d16a3896013efed00a9
Command & control hostname fedex[.]tokyo