Florian Bogner

31
Aus dem Leben eines Bug (Bounty) Hunters 3 kritische Updates verfügbar Kapsch BusinessCom

Transcript of Florian Bogner

Aus dem Leben einesBug (Bounty) Hunters 3 kritische Updates verfügbar

Kapsch BusinessCom

www.kapsch.net |

Florian BognerPersonenvorstellung

§ Information Security Auditor aka Pentester

§ Speaker und Trainer

§ Blogger: https://bogner.sh

§ Schwachstellen identifiziert in Produkten von ...

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 2

www.kapsch.net |

Florian BognerPersonenvorstellung

§ Information Security Auditor aka Pentester

§ Speaker und Trainer

§ Blogger: https://bogner.sh

§ Schwachstellen identifiziert in Produkten von ...

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 3

www.kapsch.net |

Florian BognerPersonenvorstellung

§ Information Security Auditor aka Pentester

§ Speaker und Trainer

§ Blogger: https://bogner.sh

§ Schwachstellen identifiziert in Produkten von ...

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 4

www.kapsch.net |

Vulnerability Handling & Disclosure Von der Urzeit bis in die Moderne

Die Urzeit: Kein Fokus auf SecurityUnternehmen ignorieren Meldungen von Schwachstellen, spielen Auswirkungen herunter bzw. (er)finden Ausreden.

Teilweise wird sogar mit rechtlichen Schritten bei Veröffentlichung gedroht.

Die Steinzeit: Immer noch kein Fokus auf SecurityIT Security Experten veröffentlichen nur grobe Beschreibung der Schwachstellen ohne Details.

Hersteller bezeichnen diese als rein theoretisch nicht aus nutzbar. (Natürlich werden sie nie behoben)

Industrielle Revolution: Ein Miteinander entwickelt sichUnternehmen nehmen IT Sicherheit ernst. Meldungen über Schwachstellen werden dankend bearbeitet.

Hersteller und freie IT Security Experten arbeiten zusammen: Responsible VulnerabilityDisclosure

Die Moderne: Bug BountyProgramme entstehenUnternehmen belohnen externe Spezialisten für die Meldung von Schwachstellen.

Informationen der Schwachstellen werden nach deren Behebung veröffentlicht.

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 5

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 6

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 7

Schwachstellefinden

Schwachstelle finden>90% aller Meldungen sind Falschmeldungen! (Google VRP)

Deshalb immer folgende Fragestellungen beachten:

Wer kann ein Problem ausnutzen um Was zu erreichen?

Wie sieht ein möglicher Angriffsvektor aus?

Bei Interaktion: Handelt es sich um ein realistisches Vorgehen?

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 8

Schwachstellefinden

Wo und Wie sollenSecurity Probleme gemeldet werden?

Wo und Wie sollen Security Probleme gemeldet werden?Gibt es eine Security Policy?

Gibt es einen Security Kontakt?

Gibt es ein Bug Bounty Programm? (Wichtig: Was ist inkludiert bzw. explizit ausgenommen?)

Gibt es nichts davon è It‘s up to you: Hersteller reagieren sehr unterschiedlich...Optionen: Bug ignorieren, Problem melden, Anonym melden, ...

Bei aktivem Bug Bounty Hunting: diese Fragen zuerst abklären!

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 9

Schwachstellefinden

Wo und Wie sollenSecurity Probleme gemeldet werden?

Problemmelden

Problem meldenKISS: Keep it simple and stupid!

Bitte in Englisch

Empfehlung: Geplantes Veröffentlichungsdatum kommunizieren

Möglichst detaillierte aber minimale Fehlerbeschreibung

Speziell entwickelte Tools in Quellcode und Binärform beilegen

Ein Video kann komplexe Angriffe verdeutlichen

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 10

Schwachstellefinden

Wo und Wie sollenSecurity Probleme gemeldet werden?

Problemmelden

Update wird veröffentlichtDer Hersteller entwickelt Update

Oft wird Fix zur Überprüfung vorab zur Verfügung gestellt

Die meisten Hersteller veröffentlichen ein Security Advisory

Finalen Patch immer überprüfen!

Update wirdveröffentlicht

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 11

Schwachstellefinden

Wo und Wie sollenSecurity Probleme gemeldet werden?

Problemmelden

Bounty wird ausbezahltVulnerability veröffentlichen

Update wirdveröffentlicht

Bounty wird ausbezahlt Meistens PayPal

Bei Spende oft Verdopplung des Betrags

Achtung: muss versteuert werden

www.kapsch.net |

Vulnerability Reporting 101Was ist zu beachten?

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 12

Schwachstellefinden

Wo und Wie sollenSecurity Probleme gemeldet werden?

Problemmelden

Bounty wird ausbezahltVulnerability veröffentlichen

Update wirdveröffentlicht

Vulnerability veröffentlichenImmer bei der Wahrheit bleiben

Keine Systeminterna veröffentlichen

Schwachstellen nicht künstlich hochspielen

Empfehlung: Full Disclosure & BugTraq

Sideloading Vulnerabilities3 kritische Updates verfügbar

Kapsch BusinessCom

www.kapsch.net |02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 14

Mobile Broadband Local Privilege Escalation (CVE-2016-2855)

Live DemoIdentifizieren und Ausnutzen von DLL Sideloading Vulnerabilities

www.kapsch.net |

ZusammenfassungHuawei Mobile Broadband Local Privilege Escalation (CVE-2016-2855)

Filesystem ACLs des Service Verzeichnises unsicherNutzung von Process Monitor um Sideloading Vulnerabilities zu erkennenversion.dll wird aus lokalem Verzeichnis geladenImports mit Dependency Walker identifizierenDLL erstellenSystem neu starten

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 16

Local Privilege Escalation: Von normalen Benutzerrechten è SYSTEM

www.kapsch.net |02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 17

Intel® Solid State Drive Toolbox Local Privilege Escalation (CVE-2016-8101)

Live DemoVerwendung von Process Monitor um komplexe Sideloading Vulnerabilities zu erkennen

www.kapsch.net |

ZusammenfassungIntel® Solid State Drive Toolbox Local Privilege Escalation (CVE-2016-8101)

Nutzung von Process Monitor um Sideloading Vulnerabilities zu erkennen§ Fokus auf Dateioperationen

§ Exkludieren von Program Files & Windows Verzeichnis

Update Informationen aus User-Writable VerzeichnisAnalyse des ServicesErstellung einer “bösartigen” Update InformationAuslösen des Exploits durch Webservice

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 19

Local Privilege Escalation: Von normalen Benutzerrechten è SYSTEM

www.kapsch.net |02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 20

Dropbox Windows ClientHorizontal Privilege Escalation

www.kapsch.net |02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 21

EddyGateAn almost unexploitable* Dropbox Sideloading Vulnerability

* except, if you are named Eddy

Live DemoBesonders betriebssystemunabhängige Anwendungen sind oft anfällig

www.kapsch.net |

ZusammenfassungDropbox Windows Client Horizontal Privilege Escalation

Nutzung von Process Monitor um Sideloading Vulnerabilities zu erkennen§ Fokus auf Dateioperationen

§ Exkludieren von Program Files & Windows Verzeichnis

Laden der OpenSSL Konfiguration aus /Users/eddy...Kann missbraucht werden um DLL nachzuladen (tpm_section)Transparent beim nächsten Start der Anwendung

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 23

Horizontal Privilege Escalation: Von einem Konto (ohne Admin) è in ein anderes Konto

GegenmaßnahmenWie können Sideloading Schwachstellen verhindert werden?

Kapsch BusinessCom

www.kapsch.net |

Introducing procmon.pyA PoC application to detect sideloading vulnerabilities at build time

GegenmaßnahmenEin Tool für alle: Entwickler und Pentester

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 25

Live DemoProcmon.py in Aktion

www.kapsch.net |

Introducing procmon.pyA PoC application to detect sideloading vulnerabilities at build time

GegenmaßnahmenEin Tool für alle: Entwickler und Pentester

Basierend auf Noriben Sandbox (https://github.com/Rurik/Noriben) und Process Monitor (https://technet.microsoft.com/en-us/sysinternals/processmonitor.aspx)Kann in praktisch jeden automatisierten Build Prozess integriert werden

Zeichnet Applikationsverhalten auf und ermöglicht dessen automatische Analyse

Beispiel: Wenn meine Applikation außerhalb des User Verzeichnisses eine DLL lädt è Build Prozess stoppen!

02.11.16 | Aus dem Leben eines Bug (Bounty) Hunters 27

https://github.com/fbogner/procmon.py

www.kapsch.net |02.11.16 | Titel der Präsentation 28

Danke!

www.kapsch.net |02.11.16 | Titel der Präsentation 29

www.kapsch.net |02.11.16 | Titel der Präsentation 30

Vielen Dank für Ihre Aufmerksamkeit.Florian BognerInformation Security Auditor

Kapsch BusinessCom AG

Kapsch BusinessCom AGWienerbergstraße 53 1120 Wien, ÖsterreichPhone: +43 664 628 5491 E-Mail: [email protected]

Hinweis:Der Inhalt dieser Präsentation ist geistiges Eigentum der Kapsch AG. Alle Rechte hinsichtlich des Kopierens, der Vervielfältigung, Änderung, Nutzung, Veröffentlichung oder Weitergabe des Inhalts an Dritte bleiben vorbehalten. Vorgenanntes ist ohne vorausgehende schriftliche Genehmigung der Kapsch AG ausdrücklich untersagt. Bei Produkt- und Firmennamen kann es sich um eingetragene Markennamen oder geschützte Marken Dritter handeln. Diese werden in der Präsentation lediglich zum Zweck der Verdeutlichung und zum Vorteil des jeweiligen rechtmäßigen Eigentümers ohne eine Absicht der Verletzung der Eigentumsrechte verwendet.