WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox...

38
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP Foundation OWASP http://www.owasp.org WATOBO The Web Application Toolbox Andreas Schmidt SIBERAS http://www.siberas.de 20.10.2010

Transcript of WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox...

Page 1: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

Copyright © The OWASP FoundationPermission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.

The OWASP Foundation

OWASP

http://www.owasp.org

WATOBOThe Web Application Toolbox

Andreas Schmidt

SIBERAShttp://www.siberas.de

20.10.2010

Page 2: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Bio

Andreas SchmidtSeit 1998 im Security-Bereich tätigSeit 2001 spezialisiert auf Audits/PenetrationstestsMitgründer von siberas (2009)

http://www.siberas.de

Page 3: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Agenda

(Markt-)ÜberblickMotivationHauptkomponentenHighlightsRoadMapDemo: WATOBO in action

Page 4: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Überblick

Kommerzielle ToolsWebInspect, AppScan, NTOSpider, Acunetix, ....Primär für automatisierte Audits

Freie ToolsWebScarab, Paros, BurpSuite(+$), ...Primär für manuelle Penetrationstests

1001+ Script-ToolsNikto, sqlmap, ...

Page 5: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Motivation

Warum noch ein Tool?

5

Page 6: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Motivation

Kosten/Nutzen-Verhältnis von (kommerziellen) automatisierten Tools zu hoch!Typische Nachteile vollautomatisierter Tools, z.B.

Logik-Fehler, ...manuelle „Begehung“ der Applikation trotzdem

notwendig

Daseinsberechtigung dennoch gegeben!Einfache Bedienung, Reporting, zentrales

Management, QA-Schnittstellen, ...

pay() if pentester.needsFeature?(feature)

Page 7: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Motivation

Fehlende Transparenz bei kommerziellen ScannernCheck-Methoden werden meist „geheim“ gehaltenZuviel „Voodoo“

Page 8: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Motivation

Manuelle Tools besitzen meist kein Session-ManagementErneutes Einloggen notwendigMühsames kopieren der SessionID

Anpassen von (kommerziellen) Tools meist nur schwer möglichFehlender Source-CodeEntwicklungsumgebung/Compiler notwendigOftmals umständlich und unflexibel, z.B. XML,

Page 9: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Motivation

Manuelle Tools haben oft nur begrenzte automatisierte FunktionenAusnahme: BurpSuite Pro ($$)

Vorteile quell-offener ToolsLeistungsfähigkeit und Grenzen können eingeschätzt werdenKönnen schnell an neue Anforderungen angepasst werdenSkript-Sprachen

Page 10: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

10

Page 11: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Ansatz: Vorteile beider „Welten“

Fokus: semi-automatisierte PenetrationstestsSession-ManagmentProxy-Basiertes ToolWeb-Testing-Framework

typische Funktionen, wie Parser, Shaper, ...einfach zu erweitern!

Kein Angriffswerkzeug!Keine Exploitmodule in Open-Source-Version

11

Page 12: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Zielgruppe

Primär für professionelle Pentester!Idealerweise mit Ruby-Kenntnissen

Aber auch für Entwickler, Admins,... - Basis-Checks einfach durchzuführen- Kurze Beschreibung der Schwachstellen sowie

Maßnahmenempfehlung

Page 13: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponentenüberblick

13

Project

GUI

SCANNER

Manual Request

Passive Checks

Active Checks

Plugins

IProxy

Fuzzer

Page 14: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: GUI

GUI ist ein Muss!Web-App-Analyse ohne GUI nicht möglichCLI nicht für alle Bereiche sinnvoll ;)

Für manuelle Tests optimiertOne-Click En-/DecoderFilter FunktionenSchnelle Analyse der Funktionsweise

14

Page 15: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: GUI

15

Page 16: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: I(nterceptor/)Proxy

Klassische Proxy-FunktionInterceptor

Abfangen und Manipulieren von Requests/Responses

Pass-ThroughServer-Antwort wird direkt an Browser durchgereichtEinstellbar: Content-Type/Content-LengthApplikation lässt sich flüssig bedienen!

Pseudo-ServerZ.b für HTML-Preview

16

Page 17: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Scanner

Multi-Threaded

Smart-Scan-FunktionReduziert Anzahl von RequestsÄhnliche URLs werden zusammengefasstBerücksichtigt „Non-Unique-Parameter“

Z.B. action=addUser oder function=showFile

Steuert Active-Checks

17

Page 18: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Scanner

Feingranulare Definition des Target-ScopesSite (host:port)Root-PathExclude-Patterns

Session-ManagementErkennt LogoutKann (Re-)Login automatisiert durchführen

18

Page 19: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Fuzzer

Multi-TagMulti-GeneratorMulti-ActionMulti-Filter ...

USE THE FORCE, ...

Page 20: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Fuzzer

20

Page 21: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Manual Request Editor

Automatisierter LoginUpdate der Session-InformationenRequest-HistoryDifferQuickScan

Gezieltes Scannen einer URL

21

Page 22: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Manual Request Editor

22

Page 23: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Active Checks

Werden über Scanner gesteuertDienen zum aktiven Testen

SQL-InjectionXSS...

Gute Balance zwischen Einfachheit/FlexibilitätNur mit Skript-Sprachen möglich!Einige Hersteller haben eigene (Skript-)Sprachen,

oder nutzen JavaScript

23

Page 24: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Active Checks

Aktuelle Checkliste (13):+ Dirwalker

+ Fileextensions

+ Http_methods

+ Domino_db

+ Lfi_simple

+ Jboss_basic

+ Its_commands

+ Its_services

+ Its_service_parameter

+ Its_xss

+ Sqli_simple

+ Sql_boolean

+ Xss_simple

24

IN STÄNDIGER

ENTWICKLUNG

Page 25: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Passive Checks

Grep-Style-ChecksPattern-Matching

Identifiziert SchwachstellenZ.B. Cookie-Security, unverschlüsselte Anmeldung, ...

Extrahiert hilfreiche InformationenZ.B. HotSpots, Email, IP‘s...

25

Page 26: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Passive Checks

Aktuelle Checkliste (14):+ Cookie_options

+ Cookie_xss

+ Detect_code

+ Detect_fileupload

+ Detect_infrastructure

+ Dirindexing

+ Disclosure_emails

+ Disclosure_ipaddr

+ Filename_as_parameter

+ Hotspots

+ Multiple_server_headers

+ Possible_login

+ Redirectionz

+ Redirect_url

26

IN STÄNDIGER

ENTWICKLUNG

Page 27: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Komponente: Plugins

Für individuelle TestsNicht Scanner-kompatibelZ.B. site-spezifische Checks, wie beispielsweise SSL-

Cipher

Framework-Funktionen und SchnittstellenlistSites, listDirs, ...SessionManagementScanner

27

Page 28: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Plugin: SSL-Checker

Prüft unterstütze SSL-CiphersMittels vollständigen HTTP-Requests

28

Page 29: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Umsetzung

Ruby, Ruby, Ruby, ...http://www.ruby-lang.org

FXRuby für GUIRuby-Port von Fox-Toolkit

http://www.fxruby.org

Plattformunabhängig(FX)Ruby für Windows, Linux, MacOS, ...

Entwicklungsplattform WindowsWird auch unter Linux (Backtrack) getestet

Page 30: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

WATOBO Highlights

Session Management

Ruby-In-Ruby

HTML-Preview

Page 31: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Highlight: Session Management

Pattern-basiertRegular Expressions Hash[$1]=$2

Header und Body wird analysiertNur text/*-Content-Types => Geschwindigkeit

Session-IDs in Cookie und URLsCa. 15 vordefinierte PatternsRegex-Validator

31

Page 32: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Highlight: Session Management

Beispiel: (PHPSESSID)=([0-9a-zA-Z]*)(;|&)?

32

Page 33: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Highlight: Ruby-in-Ruby

Mittels spezieller Tags (‚%%‘) lässt sich direkt Ruby-Code integrieren

Nützlich für die Erzeugung vonvielen Zeichen, Headern, ...Binaerzeichen, Konvertierung, Berechnungen, ...Daten aus verschiedenen Quellen, z.B. Dateien

Fuzzer nutzt Ruby (procs) für „Actions“

Page 34: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Highlight: Ruby-in-Ruby

Manual Request Editor: Including Binary-Files

Page 35: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Highlight: HTML-Preview

HTML-Preview sehr hilfreichDoku-Screenshots, schnelle visuelle Analyse

FXRuby besitzt kein HTML(WebKit)-Widget ..., aber Browser gibt‘s auf jedem System

IE, Firefox

Browser-Steuerung mittels JSSH (Firefox) und Win32OLE (IE)http://www.croczilla.com/bits_and_pieces/jssh/

35

Page 36: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Road-Map

CSRF-Token Handling!Recheck-Funktion

KB-Diffing

Neue Module, Plugins, Parser, En-/DecoderSOAP/XML

Source-Code-Unterstützungzum Abgleich der Angriffsfläche

Page 37: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

Road-Map

DokumentationVideos, rdoc

InstallerSchulungen/Trainings/Workshops!

Page 38: WATOBO - The Web Application Toolbox · 2021. 3. 9. · WATOBO - The Web Application Toolbox Author: Andreas Schmidt Subject: Application Security Keywords: Application Security,

OWASP

OWASP AppSec Germany 2010 Conference

WATOBO - Demo

38