Die neue Ransomware namens CryCryptor hat kanadische Android-Nutzer im Visier und wird über zwei Websites vertrieben. Dort gibt sie sich als offizielle Corona-Tracing-App des kanadischen Gesundheitsministeriums aus. ESET Forschern gelang es die Ransomware zu analysieren und ein Entschlüsselungswerkzeug für die Opfer bereitzustellen.

CryCryptor tauchte nur wenige Tage nach der offiziellen Ankündigung der kanadischen Regierung auf, die Entwicklung einer landesweiten, freiwilligen Tracing-App mit dem Namen „COVID Alert“ zu unterstützen. Die offizielle App soll bereits im nächsten Monat in der Provinz Ontario getestet werden.

ESET informierte das kanadische Zentrum für Cybersicherheit sofort nach der Entdeckung über diese Bedrohung.

Abbildung 1. Eine der Websites, die die falsche App verbreitet hat. Die zweite unterscheidet sich nur bei der Domain. Quelle: covid19tracer[.]ca.

Wenn ein Nutzer CryCryptor zum Opfer fällt, verschlüsselt die Ransomware die Dateien auf dem Gerät – und zwar die meisten gängigen Dateitypen. Doch anstatt das Gerät zu sperren, hinterlässt sie in jedem Verzeichnis mit verschlüsselten Dateien eine ReadMe-Datei mit der E-Mail des Angreifers.

Glücklicherweise konnten wir ein Entschlüsselungs-Tool für die Opfer der Ransomware erstellen.

Nachdem wir durch den Tweet eines Sicherheitsforschers auf die Ransomware aufmerksam wurden, analysierten wir die App. Uns fiel auf, dass es sich, anders als vom Entdecker angenommen, nicht um einen Banking Trojaner handelte. Wir entdeckten darin einen Fehler, der als „Unsachgemäßer Export von Android-Komponenten“ bezeichnet wird und als CWE-926 dokumentiert ist.

Aufgrund dieses Fehlers kann jede App, die auf dem betroffenen Gerät installiert ist, jeden exportierten Dienst starten, den die Ransomware bereitstellt. Auf diese Weise konnten wir das Entschlüsselungs-Tool erstellen - eine App, die einfach die Entschlüsselungsfunktion der Ransomware-App nutzt.

Verschlüsselung / Funktion

Nach dem Start der App fordert die Ransomware die Berechtigung für den Dateizugriff auf dem Gerät an. Nach Erhalt dieser Berechtigung werden bestimmte Dateitypen, wie in Abbildung 2 dargestellt, auf den externen Medien verschlüsselt.

Abbildung 2. Dateitypen, die von CryCryptor verschlüsselt werden.

Abbildung 2. Dateitypen, die von CryCryptor verschlüsselt werden.

Die Dateien werden mit AES mit einem zufällig generierten 16-stelligen Schlüssel verschlüsselt. Nachdem CryCryptor eine Datei verschlüsselt hat, werden drei neue Dateien erstellt und die Originaldatei entfernt.

An die verschlüsselte Datei wird die Dateierweiterung ".enc" angehängt und der Algorithmus generiert für jede verschlüsselte Datei, die mit der Erweiterung ".enc.salt" gespeichert ist, ein eindeutiges Salt und einen Initialisierungsvektor ".enc.iv".

Abbildung 3. Dateien nach der Verschlüsselung.

Abbildung 3. Dateien nach der Verschlüsselung.

Nachdem alle Zieldateien verschlüsselt wurden, zeigt CryCryptor die Benachrichtigung "Verschlüsselte persönliche Dateien, siehe readme_now.txt" an. Die Datei readme_now.txt wird in jedem Verzeichnis mit verschlüsselten Dateien abgelegt.

Abbildung 4. Benachrichtigung über Dateiverschlüsselung (links) und Inhalt der Datei readme_now.txt (rechts)

Entschlüsselung

Der für die Entschlüsselung von Dateien in CryCryptor verantwortliche Dienst, speichert den Verschlüsselungsschlüssel in den gemeinsamen Einstellungen, sodass er sich nicht an einen Command-and-Control-Server wenden muss, um ihn abzurufen.

Wesentlich ist, dass es aufgrund eines Programmierfehlers (Sicherheitslücke CWE-926) möglich ist die Dienste der App auch von externen Programmen aus zu starten.

Auf dieser Grundlage haben wir eine Android-Entschlüsselungs-App für diejenigen erstellt, die von der CryCryptor-Ransomware betroffen sind. Natürlich funktioniert die Entschlüsselungs-App nur für diese Version von CryCryptor.

Eine neue Ransomware-Familie

Die CryCryptor-Ransomware basiert auf Open Source-Code, der auf GitHub verfügbar ist. Wir haben ihn dort mithilfe einer einfachen Suche, auf Basis des Paketnamens der App und einigen einzigartigen Zeichenfolgen, entdeckt.

Die Entwickler der Open-Source-Ransomware mit dem Namen „CryDroid“ hat offensichtlich gewusst, dass der Code für böswillige Zwecke verwendet werden wird. Um das Projekt als Forschungsprojekt zu tarnen, behaupten sie den Code bei VirusTotal hochgeladen zu haben. Es ist unklar, wer das Sample hochgeladen hat, aber tatsächlich erschien es am selben Tag auf VirusTotal als der Code bei GitHub veröffentlicht wurde.

Abbildung 5. Die Open Source-Ransomware.

Wir sind sicher, dass das Projekt nicht Forschungszwecken dient. Kein verantwortlicher Forscher würde ein derartiges Tool, das leicht für böswillige Zwecke missbraucht werden kann, veröffentlichen. Deswegen haben wir auch GitHub über diesen Code informiert.

ESET Produkte bieten Schutz vor CryCryptor-Ransomware und erkennen sie als Trojan.Android/CryCryptor.A.
Grundsätzlich raten wir Android-Nutzern nur Apps aus seriösen Quellen wie dem Google Play Store zu installieren und zudem eine hochwertige mobile Sicherheitslösung auf ihrem Smartphone einzusetzen.

Zeitleiste:

  • 11. Juni 2020: Quellcode veröffentlicht - CryDroid v1.1
  • 11. Juni 2020: Code wurde auf VirusTotal hochgeladen
  • 12. Juni 2020: Die erste bösartige Domain, die die Ransomware-App verteilt hat, wurde registriert
  • 18. Juni 2020: Die bösartige App (diese Android-Ransomware) wurde kompiliert (basierend auf ihrem Zertifikat).
  • 21. Juni 2020: Die zweite bösartige Domain, die dieses Beispiel verteilt hat, wurde registriert
  • 23. Juni 2020: ESET informiert das kanadische Zentrum für Cybersicherheit
  • 23. Juni 2020: Die beiden Domänen reagieren nicht mehr

Wir haben ein Video erstellt, das den Prozess der Ver- und Entschlüsselung zusammen mit unserer Erklärung zeigt.

Indicators of Compromise (IoCs)

Package name Hash ESET detection name
com.crydroid 322AAB72228B1A9C179696E600C1AF335B376655 Trojan.Android/CryCryptor.A

Distribution links

https://covid19tracer[.]ca/
https://tracershield[.]ca/

MITRE ATT&CK techniques

Tactic ID Name Description
Initial Access T1476 Deliver Malicious App via Other Means The malware is downloaded from a fake website
Initial Access T1444 Masquerade as Legitimate Application It impersonates COVID-19 tracking app
Persistence T1402 App Auto-Start at Device Boot It listens for the BOOT_COMPLETED broadcast, ensuring that the app's functionality will be activated every time the device starts
Impact T1471 Data Encrypted for Impact Encrypts files with particular file extensions found on external media