+ All Categories
Home > Documents > Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019...

Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019...

Date post: 05-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
31
Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt? Digicomp Hacking Day
Transcript
Page 1: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

Referent: Yves Kraft

21. Mai 2019

Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man

dagegen unternimmt?

Digicomp Hacking Day

Page 2: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

2 © 2019 Oneconsult AG

→ Yves Kraft

○ Branch Manager Bern

○ Senior Penetration Tester & Security Consultant

○ Studium BSc FH CS (Vertiefung IT-Security)

○ ISO 27001 Lead Auditor, OSCP, OPST, OPSA, OPSE, CTT+ & OSSTMM Trainer

○ Kontinuierliche Weiterbildung in den Bereichen IT-Security und Netzwerk

○ @nrx_ch

○ Technische Security Audits, Konzeptionelles Consulting

○ Security Officer

○ Training & Coaching (Kursleiter bei Digicomp)

○ Spende des Speaker-Honorars für www.hackersforcharity.org/

VORSTELLUNG

Page 3: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

3 © 2019 Oneconsult AG

NETZWERKSCHEMA

Page 4: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

4 © 2019 Oneconsult AG

ACTIVE DIRECTORY KILL CHAIN ATTACK & DEFENSE

Quelle: https://github.com/infosecn1nja/AD-Attack-Defense

Page 5: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

5 © 2019 Oneconsult AG

→ Ziel

○ Zugangsdaten erhalten / Erster Zugriff auf die Infrastruktur

→ Extern

○ Phishing

○ Terminal Server Breakout (RDS)

○ Apache Tomcat Default Credentials

○ .git auf Webserver (Wordpress)

→ Intern

○ Passwort Bruteforce (RDP)

○ Foxit Exploit

MACHINE COMPROMISE

Page 6: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

6 © 2019 Oneconsult AG

→ Ziel

○ Zugang ausbauen / Lokale Admin Privilegien erlangen

→ Zugangsdaten in Dateien GPO|GPP (cpassword)

→ Schwache Dateiberechtigungen

→ Unattend.xml

→ Password Reuse

→ Mimikatz

PRIVILEGE ESCALATION LOKALER ADMIN

Page 7: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

7 © 2019 Oneconsult AG

→ Ziel

○ Zugang ausbauen / Domain Admin Privilegien erlangen

→ RDP Session Hijacking

→ Pass-The-Hash

→ NTLM Relay (scf-File Attack)

→ Password Reuse

→ Mimikatz

PRIVILEGE ESCALATION DOMAIN ADMIN

Page 8: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

8 © 2019 Oneconsult AG

→ Ziel

○ Permanenter Zugang sichern

→ DCSync

→ DCShadow

PERSISTENCE

Page 9: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

© 2019 Oneconsult AG

Szenarien

Page 10: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

10 © 2019 Oneconsult AG

→ Angreifer

○ Klonen der Login-Page von MyDigicomp (https://idp.digicomp.ch)

○ Registrieren der Fakedomain https://idp-digicomp.ch

○ Erstellen eines Phishing Mails (Wettbewerb 2019 | Gewinner!)

→ Opfer

○ Öffnet E-Mail und folgt Link auf https://idp-digicomp.ch

○ Gibt Zugangsdaten ein

→ Massnahmen

○ Think before you klick!

SZENARIO: PHISHING

Page 11: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

11 © 2019 Oneconsult AG

→ Angreifer○ Öffnen der RDS-Verbindung (https://remote.lab.extern) ○ Ausbrechen aus Published App

› Dialog Boxen und Menüs, Internet Explorer, Shortcuts, Taskmanager, Scripts(.bat/.wsh)

› Tipps: • cmd.exe /K pause falls CMD gesperrt, ältere PS-Version• Bei fehlenden Schreibrechten: C:\Users\USER\AppData\Local\Temp, C:\temp,

C:\Windows\Tasks• Office: VBA! ☺

→ Massnahmen○ System Hardening○ Application Whitelisting○ Netzwerksegmentierung

SZENARIO: TERMINAL SERVER BREAKOUT (RDS)

Page 12: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

12 © 2019 Oneconsult AG

→ Angreifer

○ Apache Tomcat mit Default/leicht zu erratenden Zugangsdaten

○ Reverse-Shell als war-Datei erstellen, hochladen und Ausführen

→ Massnahmen

○ Tomcat Manager nur intern/auf Localhost betreiben

○ Komplexe Passwörter verwenden

SZENARIO: APACHE TOMCAT DEFAULT CREDENTIALS

Page 13: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

13 © 2019 Oneconsult AG

→ Angreifer

○ .GIT Verzeichnis wird auf Webserver entdeckt. Dieses Verzeichnisses können einzelne Commits wiederhergestellt werden

○ Auch wenn sensitive Informationen nicht mehr vorhanden sind, ältere Commits enthalten die Dateien noch

→ Massnahmen

○ Repository-Verzeichnisse auf Server entfernen

○ Keine sensitiven Informationen in Repository hochladen

SZENARIO: .GIT AUF WORDPRESS

Page 14: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

14 © 2019 Oneconsult AG

→ Angreifer

○ RDP-Port (3389) geöffnet

○ Es gibt zahlreiche Tools für Brute-Force Angriffe(und genauso viele Techniken)

→ Massnahmen

○ Account Lockout

○ Logging

SZENARIO: PASSWORD BRUTE-FORCE

Page 15: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

15 © 2019 Oneconsult AG

→ Angreifer

○ UAF Exploit in bekanntem PDF-Reader

○ Exploit-PDF lädt Payload von Netzwerk-Share

→ Massnahmen

○ Updates installieren

○ Antivirus/Intrusion Detection

○ Application Whitelisting

SZENARIO: FOXIT EXPLOIT

Page 16: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

16 © 2019 Oneconsult AG

→ Angreifer

○ Desöfteren können Zugangsdaten (Plaintext, Hash oder verschlüsselt) aus Dateien gelesen werden.

○ Microsoft bietet mit Group Policy Preferences (GPP) Gruppenrichtlinien Objekte mit Passwörtern zu speichern (verschlüsselt mit AES).

○ https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-gppref/2c15cbf0-f086-4c74-8b70-1f2fa45dd4be

→ Massnahmen

○ Keine Zugangsdaten in Scripts

○ Zugang zu Netzwerkshares einschränken

SZENARIO: ZUGANGSDATEN IN DATEIEN GPO

Page 17: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

17 © 2019 Oneconsult AG

→ Angreifer

○ Falls Prozesse/Dienste mit erhöhten Rechten laufen und die Pfade zu den Executables schreibbar sind, können über dieses Weg die Rechte eskaliert werden

○ Beispiel: GrassSoft Macro Expert

→ Massnahmen

○ Dateiberechtigungen prüfen

SZENARIO: SCHWACHE DATEIBERECHTIGUNGEN

Page 18: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

18 © 2019 Oneconsult AG

→ Angreifer

○ Bei Windows Setup Automatisierungen kann es sein, dass Zugangsdaten in Setup-Dateien übrig bleiben.

› C:\unattend.xml

› C:\Windows\Panther\Unattend.xml

› C:\Windows\Panther\Unattend\Unattend.xml

› C:\Windows\system32\sysprep.inf

› C:\Windows\system32\sysprep\sysprep.xml

› C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\web.config

› C:\inetpub\wwwroot\web.config

SZENARIO: UNATTEND.XML

Page 19: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

19 © 2019 Oneconsult AG

→ Gemäss Panda Security [1] haben Forscher der Virginia Tech University and DashlaneAnalysten herausgefunden, dass…○ After examining a database of over 28 million users and their 61 million passwords, they

have uncovered an alarming figure: 52% of the users studied have the same passwords (or very similar and easily hackable ones) for different services.

○ Of the 28.8 million users studied, 38% reused the same password for two different online services, and 21% of them slightly modified an old one to sign up for a new service.

○ With 85% of passwords reused or slightly changed in the case of online shopping, and 62% for email,…

→ Angreifer○ Desöfteren setzen Benutzer die gleichen oder ähnliche Zugangsdaten für

unterschiedliche Accounts ein.○ So auch unser Admin Hans Muster

→ Massnahmen○ Password Policy implementieren und durchsetzen

SZENARIO: PASSWORD REUSE

[1] https://www.pandasecurity.com/mediacenter/security/password-reuse/

Page 20: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

20 © 2019 Oneconsult AG

→ Tool, um Authentifizierungsprotokolle zu überwinden→ Liest Authentifizerungsdaten aus

○ Kerberos Tickets, NTLM-Hashes, Klartext-Passwörter, etc.

→ Massnahmen○ Credential Guard○ Debugging von Programmen unterbinden

› Windows Settings -> Security Settings -> Local Policies -> User Rights Assignment -> Debug programs

○ WDigest deaktivieren› HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityPro

viders\Wdigest○ Restricted Admin Mode○ Credential Cache anpassen

SZENARIO: MIMIKATZ

Page 21: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

21 © 2019 Oneconsult AG

→ Angreifer

○ Als lokaler Admin kann man RDP Sessions von anderen Benutzern übernehmen

○ Service erstellen, der tscon.exe starten und die RDP-Verbindung «umbiegt»

○ Mimikatz bietet diese Funktionalität auch

→ Massnahmen

○ Logoff von Disconnected Sessions (z.B. per GPO)

○ RDP nicht zugänglich machen

SZENARIO: RDP SESSION HIJACKING

Page 22: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

22 © 2019 Oneconsult AG

→ Angreifer

○ Die meisten Passwort-basierenden Authentifizierungsmethoden speichern das Passwort in Form eines Hashes (z.B. SAM bei Windows)

○ Angreifer liest Hash aus und meldet sich damit beim System an

→ Massnahmen

○ Konten mit hohen Berechtigungsstufen so selten wie möglich und nur auf gehärteten Rechnern verwenden

○ Niemals direkt vom Arbeitsplatzrechner auf zu administrierende Systeme verbinden

○ Lokaler Admin: individuelles Passwort auf jedem System (LAPS verwenden)

○ Delegieren von Berechtigungen an normale Benutzerkonten anstelle von dauerhaft „Run as Administrator“ zu verwenden

○ Anwenden der Empfehlungen aus dem «Mitigating Pass-the-Hash Attacks and Other Credential Theft» und «Best Practices for Securing Active Directory.docx» Whitepapers von Microsoft

SZENARIO: PASS-THE-HASH

Page 23: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

23 © 2019 Oneconsult AG

→ Angreifer

○ NTLM-Hahes müssen nicht geknackt werden, sondern können einfach weitergeleitet werden.

○ Angreifer erstellt .scf-Datei auf Share und lässt ntlmrelayx laufen

○ User/Admin ruft Share auf, Credentials werden an Opfer-System weitergeleitet

→ Massnahmen

○ SMB Signing aktivieren

SZENARIO: NTLM RELAY (SCF-FILE ATTACK)

Page 24: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

24 © 2019 Oneconsult AG

→ DCShadow ermöglicht es einem Angreifer, einen gefälschten ActiveDirectory Domain Controller (Fake DC) zu erstellen, der schädliche Änderungen an legitimen DCs replizieren kann.

→ Ist das ein Bug?

→ Eine Vulnerability?

○ Nein ein Feature!

○ Protokolle sind von Microsoft dokumentiert:

› [MS-ADTS]: Active Directory Technical Specification

› [MS-DRSR]: Directory Replication Service (DRS) Remote Protocol

SZENARIO: DCSHADOW

Page 25: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

25 © 2019 Oneconsult AG

Die DCShadow-Attacke läuft in folgenden drei Schritten ab:

→ Registrieren eines "DC" durch Erstellen von 2 Objekten in der CN= Konfiguration und ändern der SPN (Service Principal Name)

→ “Pushen” der Daten (ausgelöst durch DrsReplicaAdd, KCC oder interne AD-Events)

→ Entfernen des erstellten Objekts, um den DC zu “demoten”

WAS PASSIERT NUN BEI EINER DCSHADOW-ATTACKE?

Page 26: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

26 © 2019 Oneconsult AG

→ Da DCShadow Replikationsinformationen weitergibt, ist DCShadow für die Weitergabe von Replikations-Metadaten verantwortlich

→ Metadaten sind für jedermann Per LDPA oder RPC zugänglich(auch aus vertrauenswürdigen Domänen)

→ Metadaten werden von forensischen Analysten verwendet, um den Hergang des kompletten Angriffs zu reproduzieren

→ Diesen Daten kann nicht mehr vertraut werden!

FORENSISCHE ASPEKTE

Page 27: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

27 © 2019 Oneconsult AG

→ Auf Netzwerkebene lässt sich DCShadow leicht erkennen:

○ DrsAddEntry oder DrsReplicaAdd dürfen nur von DCs aus gemachtwerden

→ Mit Logging lassen sich DCShadow-Aktivitäten erkennen:

○ Objekte hinzufügen oder Computer-Objekte ändern (siehe nächsteFolie)

○ Änderungen können jedoch nur auf dem kompromittierten DC beobachtet werden

→ Verwendung von LDAP-Cookies (LDAP_SERVER_DIRSYNC_OID) ist einweiterer Weg über LDAP-Modifikationen informiert zu werden

→ Überwachen von Directory Service Replication Events (siehe nächste Folie)

→ @gentilkiwi stellt ein Splunk-Script für Erkennung zur Verfügung: https://gist.github.com/gentilkiwi/dcc132457408cf11ad2061340dcb53c2

WIE KÖNNEN DCSHADOW-ATTACKEN ERKANNT WERDEN?

Page 28: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

28 © 2019 Oneconsult AG

→ Ändern von 2 SPNs überwachen

○ Der Directory Replication Service (DRS) SPN mit dem Format "<DRS interface GUID>/<DSA GUID>/<DNS Domain Name>" wobei die <DRS Interface GUID> immer E3514235–4B06–11D1-AB04–00C04FC2DCD2 ist (via DrsAddEntry)

→ Eventlog

○ Event ID 4742 (SPN Änderung)

○ Event ID 5137 (Rogue DC hinzufügen)

○ Event ID 5141 (Rogue DC entfernen)

○ Event IDs 4928,4929 (Monitoring von Replication)

○ Event IDs 4935/4936 (Replication Fehler)

WIE KÖNNEN DCSHADOW-ATTACKEN ERKANNT WERDEN?

Page 29: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

29 © 2019 Oneconsult AG

→ Mittels Directory Replication Service (DRS) ist es möglich, an Passwort-Hashes aus der NTDS.DIT-Datei zu gelangen. Diese Technik lässt sich mit den Rechten eines Domänenadministrators von jedem System in der Domäne ausführen.

→ DCSync simuliert Verhalten eines DC

→ Fordert andere DCs auf, Informationen mit MS-DRSR zu replizieren

→ «Ich bin auch ein Domaincontroller! Lass uns spielen!»

→ Geschieht ohne Code auf dem DC

→ Ziel: NTLM-Hash eines beliebigen Kontos erhalten (z.B. KRBTGT Konto => Golden Ticket)

→ Nutzt die Vorteile einer gültigen und notwendigen Funktion von Active Directory

→ Kann nicht ausgeschaltet oder deaktiviert werden

SZENARIO: DCSYNC

Page 30: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

30 © 2019 Oneconsult AG

→ https://github.com/infosecn1nja/AD-Attack-Defense

→ https://www.pandasecurity.com/mediacenter/security/password-reuse/

→ https://download.microsoft.com/download/7/7/A/77ABC5BD-8320-41AF-863C-6ECFB10CB4B9/Mitigating-Pass-the-Hash-Attacks-and-Other-Credential-Theft-Version-2.pdf

WEITERFÜHRENDE QUELLEN & CREDITS

Page 31: Firma XYZ wurde gehackt!» Warum es jeden treffen kann und ......Referent: Yves Kraft 21. Mai 2019 Firma XYZ wurde gehackt!» Warum es jeden treffen kann und was man dagegen unternimmt?

© 2019 Oneconsult AG31


Recommended