Hacking und Bug Hunting

Wie man Softwarefehler aufspürt und damit Geld verdient – ein Blick über die Schulter eines erfolgreichen Bug Hunters

Peter Yaworski

Cite this publication as

Peter Yaworski, Hacking und Bug Hunting (2020), dpunkt.verlag, Heidelberg, ISBN: 9783960889694

4832
accesses
17
quotes

Description / Abstract

Bugs in Websites aufspüren, Gutes tun, Spaß dabei haben ... und Geld verdienen
Ein praktischer Leitfaden für die Suche nach Softwarefehlern
Ein Blick hinter die Kulissen: Sie sehen, wie professionelle Bughunter vorgehen
Eine Anleitung, wie man mit Bughunting Geld verdient
Lernen Sie, wie Hacker Websites knacken und wie auch Sie das tun können.
Dieses Buch ist ein praktischer Leitfaden für die Suche nach Software-Bugs. Egal ob Sie in die Cybersicherheit einsteigen, um das Internet zu einem sichereren Ort zu machen, oder ob Sie als erfahrener Entwickler sichereren Code schreiben wollen – Peter Yaworski, ein überzeugter "Ethical Hacker", zeigt Ihnen, wie es geht.
Sie lernen die gängigsten Arten von Bugs kennen, wie Cross-Site-Scripting, unsichere Objekt-Referenzen oder Server-Side Request-Forgery. Echte Fallbeispiele aufgedeckter und entlohnter Schwachstellen in Anwendungen von Twitter, Facebook, Google und Uber zeigen erstaunliche Hacks, und sie erfahren, wie Hacker bei Überweisungen Race Conditions nutzen, URL-Parameter verwenden, um unbeabsichtigt Tweets zu liken, und vieles mehr.
Sie lernen:
- wie Angreifer Websites kompromittieren
- wo Sie mit der Suche nach Bugs anfangen
- welche Funktionalitäten üblicherweise mit Schwachstellen assoziiert werden
- wie Sie Bug-Bounty-Programme finden
- wie Sie effektive Schwachstellen-Reports verfassen
"Hacking und Bug-Hunting" ist eine faszinierende und umfassende Einführung in die Sicherheit von Webanwendungen, mit Geschichten von der vordersten Schwachstellenfront und praktischen Erkenntnissen. Mit Ihrem neu gewonnenen Wissen um die Websicherheit und Schwachstellen können Sie das Web zu einem sichereren Ort machen—und dabei noch Geld verdienen.

Description

Peter Yaworski ist ein erfolgreicher Bug-Bounty-Jäger, der schon Programmierfehler in zahlreichen Unternehmen aufgespürt hat, u.a. bei Salesforce, Twitter, Airbnb und dem amerikanischen Verteidigungsministerium. Er arbeitet momentan als Application Security Engineer für Shopify.

Table of content

  • BEGINN
  • Inhalt
  • Vorwort
  • Danksagung
  • Einführung
  • Wer dieses Buch lesen sollte
  • Wie man dieses Buch liest
  • Was Sie in diesem Buch finden
  • Ein Disclaimer zum Hacking
  • Kapitel 1: Bug-Bounty-Grundlagen
  • 1.1 Schwachstellen und Bug-Bounties
  • 1.2 Client und Server
  • 1.3 Was beim Besuch einer Website passiert
  • 1.4 HTTP-Requests
  • 1.5 Zusammenfassung
  • Kapitel 2: Offene Redirects
  • 2.1 Wie offene Redirects funktionieren
  • 2.2 Offener Redirect bei Shopify-Theme-Installation
  • 2.3 Offener Redirect bei Shopify-Log-in
  • 2.4 Interstitieller Redirect bei HackerOne
  • 2.5 Zusammenfassung
  • Kapitel 3: HTTP Parameter Pollution
  • 3.1 Serverseitiges HPP
  • 3.2 Clientseitiges HPP
  • 3.3 HackerOnes Social-Media-Buttons
  • 3.4 Abmelden von Benachrichtigungen bei Twitter
  • 3.5 Twitter Web Intents
  • 3.6 Zusammenfassung
  • Kapitel 4: Cross Site Request Forgery
  • 4.1 Authentifizierung
  • 4.2 CSRF mit GET-Requests
  • 4.3 CSRF mit POST-Requests
  • 4.4 Schutz vor CSRF-Angriffen
  • 4.5 Twitter-Abmeldung bei Shopify
  • 4.6 Instacart-Zonen eines Nutzers ändern
  • 4.7 Vollständige Übernahme eines Badoo-Accounts
  • 4.8 Zusammenfassung
  • Kapitel 5: HTML Injection und Content Spoofing
  • 5.1 Coinbase: Kommentare einfügen durch Zeichencodierung
  • 5.2 Ungewolltes Einbinden von HTML bei HackerOne
  • 5.3 Den Fix zu obigem Bug bei HackerOne umgehen
  • 5.4 Content Spoofing bei Within Security
  • 5.5 Zusammenfassung
  • Kapitel 6: Carriage Return/Line Feed Injection
  • 6.1 HTTP Request Smuggling
  • 6.2 Response-Splitting bei v.shopify.com
  • 6.3 HTTP Response Splitting bei Twitter
  • 6.4 Zusammenfassung
  • Kapitel 7: Cross-Site Scripting (XSS)
  • 7.1 Arten von XSS
  • 7.2 Shopify-Großhandel
  • 7.3 Shopifys Währungsformatierung
  • 7.4 Gespeichertes XSS bei Yahoo! Mail
  • 7.5 Google-Bildersuche
  • 7.6 Google Tag Manager: Gespeichertes XSS
  • 7.7 XSS bei United Airlines
  • 7.8 Zusammenfassung
  • Kapitel 8: Template Injection
  • 8.1 Serverseitige Template Injections
  • 8.2 Clientseitige Template Injections
  • 8.3 Angular Template Injection bei Uber
  • 8.4 Flask Jinja2 Template Injection bei Uber
  • 8.5 Dynamisches Rendering bei Rails
  • 8.6 Smarty Template Injection bei Unikrn
  • 8.7 Zusammenfassung
  • Kapitel 9: SQL Injection
  • 9.1 SQL-Datenbanken
  • 9.2 SQLi-Gegenmaßnahmen
  • 9.3 Blinde SQLi bei Yahoo! Sports
  • 9.4 Blinde SQLi bei Uber
  • 9.5 Drupal-SQLi
  • 9.6 Zusammenfassung
  • Kapitel 10: Server-Side Request Forgery
  • 10.1 Die Auswirkungen eines SSFRF-Angriffs demonstrieren
  • 10.2 GET- oder POST-Requests
  • 10.3 Blinde SSRFs durchführen
  • 10.4 Nutzer mit SSRF-Responses angreifen
  • 10.5 ESEA-SSRF und Abfrage von AWS-Metadaten
  • 10.6 Internes DNS-SSRF bei Google
  • 10.7 Internes Port-Scanning mit Webhooks
  • 10.8 Zusammenfassung
  • Kapitel 11: Externe Entitäten bei XML
  • 11.1 eXtensible Markup Language
  • 11.2 Wie XXE-Angriffe funktionieren
  • 11.3 Lese-Zugriff auf Google
  • 11.4 Facebook-XXE mit Microsoft Word
  • 11.5 Wikiloc XXE
  • 11.6 Zusammenfassung
  • Kapitel 12: Remote Code Execution
  • 12.1 Shell-Befehle ausführen
  • 12.2 Funktionen ausführen
  • 12.3 Strategien zur Ausweitung der Remote Code Execution
  • 12.4 ImageMagick-RCE bei Polyvore
  • 12.5 Algolia-RCE auf facebooksearch.algolia.com
  • 12.6 RCE durch SSH
  • 12.7 Zusammenfassung
  • Kapitel 13: Speicher-Schwachstellen
  • 13.1 Pufferüberlauf
  • 13.2 Out-of-Bounds
  • 13.3 Integer-Überlauf bei PHP-ftp_genlist()
  • 13.4 Pythons hotshot-Modul
  • 13.5 Libcurl-Out-of-Bounds
  • 13.6 Zusammenfassung
  • Kapitel 14: Übernahme von Subdomains
  • 14.1 Domainnamen verstehen
  • 14.2 Wie Subdomain-Übernahmen funktionieren
  • 14.3 Subdomain-Übernahme bei Ubiquiti
  • 14.4 Scan.me verweist auf Zendesk
  • 14.5 Windsor-Subdomain-Übernahme bei Shopify
  • 14.6 Fastly-Übernahme bei Snapchat
  • 14.7 Legal Robot-Übernahme
  • 14.8 SendGrid-Mail-Übernahme bei Uber
  • 14.9 Zusammenfassung
  • Kapitel 15: Race Conditions
  • 15.1 HackerOne-Einladungen mehrfach akzeptieren
  • 15.2 Überschreiten des Keybase-Einladungs-Limits
  • 15.3 Race Condition bei HackerOne-Zahlungen
  • 15.4 Race Condition bei Shopify-Partnern
  • 15.5 Zusammenfassung
  • Kapitel 16: Insecure Direct Object References
  • 16.1 Einfache IDORs aufspüren
  • 16.2 Komplexere IDORs aufspüren
  • 16.3 Rechte-Ausweitung (Privilege Escalation) bei Binary.com
  • 16.4 App-Erzeugung bei Moneybird
  • 16.5 API-Token-Diebstahl bei Twitter Mopub
  • 16.6 Preisgabe von Kundeninformationen bei ACME
  • 16.7 Zusammenfassung
  • Kapitel 17: OAuth-Schwachstellen
  • 17.1 Der OAuth-Workflow
  • 17.2 Slack-OAuth-Token stehlen
  • 17.3 Umgehen der Authentifizierung mit Standard-Passwörtern
  • 17.4 Microsoft-Log-in-Token stehlen
  • 17.5 Offizielle Facebook-Access-Token stehlen
  • 17.6 Zusammenfassung
  • Kapitel 18: Schwachstellen in Anwendungslogik und -konfiguration
  • 18.1 Shopify-Administrator-Rechte umgehen
  • 18.2 Account-Schutz bei Twitter umgehen
  • 18.3 Signal-Manipulation bei HackerOne
  • 18.4 Fehlerhafte S3-Bucket-Rechte bei HackerOne
  • 18.5 GitLabs Zwei-Faktor-Authentifizierung umgehen
  • 18.6 Preisgabe der PHP-Info bei Yahoo!
  • 18.7 HackerOne-Hacktivity-Wahl
  • 18.8 Zugriff auf PornHubs Memcache-Installation
  • 18.9 Zusammenfassung
  • Kapitel 19: Eigene Bug-Bounties
  • 19.1 Erkundung
  • 19.2 Die Anwendung testen
  • 19.3 Nächste Schritte
  • 19.4 Zusammenfassung
  • Kapitel 20: Bug-Reports
  • 20.1 Lesen Sie die Regeln
  • 20.2 Zuerst die Details und dann mehr
  • 20.3 Überprüfen Sie die Schwachstelle noch einmal
  • 20.4 Ihre Reputation
  • 20.5 Zeigen Sie dem Unternehmen gegenüber Respekt
  • 20.6 Die Höhe von Bounties ansprechen
  • 20.7 Zusammenfassung
  • Anhang A: Tools
  • A.1 Web-Proxies
  • A.2 Subdomain-Auflistung
  • A.3 Entdeckung (Discovery)
  • A.4 Screenshots
  • A.5 Port-Scanning
  • A.6 Erkundung (Reconnaissance)
  • A.7 Hacking-Tools
  • A.8 Mobile Apps
  • A.9 Browser-Plug-ins
  • Anhang B: Ressourcen
  • B.1 Onlinetraining
  • B.2 Bug-Bounty-Plattformen
  • B.3 Empfohlene Literatur
  • B.4 Videos
  • B.5 Empfohlene Blogs
  • Stichwortverzeichnis

Related titles

    More of this author(s)