-
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
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Agenda
(Markt-)ÜberblickMotivationHauptkomponentenHighlightsRoadMapDemo:
WATOBO in action
-
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, ...
-
OWASP
OWASP AppSec Germany 2010 Conference
Motivation
Warum noch ein Tool?
5
-
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)
-
OWASP
OWASP AppSec Germany 2010 Conference
Motivation
Fehlende Transparenz bei kommerziellen ScannernCheck-Methoden
werden meist „geheim“ gehaltenZuviel „Voodoo“
-
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,
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
10
-
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
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponentenüberblick
13
Project
GUI
SCANNER
Manual Request
Passive Checks
Active Checks
Plugins
IProxy
Fuzzer
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponente: GUI
15
-
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
-
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
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponente: Fuzzer
Multi-TagMulti-GeneratorMulti-ActionMulti-Filter ...
USE THE FORCE, ...
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponente: Fuzzer
20
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponente: Manual Request Editor
Automatisierter LoginUpdate der
Session-InformationenRequest-HistoryDifferQuickScan
Gezieltes Scannen einer URL
21
-
OWASP
OWASP AppSec Germany 2010 Conference
Komponente: Manual Request Editor
22
-
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
-
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ÄN
DIGER
ENTWIC
KLUNG
-
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
-
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ÄN
DIGER
ENTWIC
KLUNG
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Plugin: SSL-Checker
Prüft unterstütze SSL-CiphersMittels vollständigen
HTTP-Requests
28
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
WATOBO Highlights
Session Management
Ruby-In-Ruby
HTML-Preview
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Highlight: Session Management
Beispiel: (PHPSESSID)=([0-9a-zA-Z]*)(;|&)?
32
-
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“
-
OWASP
OWASP AppSec Germany 2010 Conference
Highlight: Ruby-in-Ruby
Manual Request Editor: Including Binary-Files
-
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
http://www.croczilla.com/bits_and_pieces/jssh/
-
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
-
OWASP
OWASP AppSec Germany 2010 Conference
Road-Map
DokumentationVideos, rdoc
InstallerSchulungen/Trainings/Workshops!
-
OWASP
OWASP AppSec Germany 2010 Conference
WATOBO - Demo
38