Media:OWASP_Tools_Demo_090908

Download Report

Transcript Media:OWASP_Tools_Demo_090908

WebGoat & WebScarab
September 9, 2008
By Stephen Carter & Mike Nixon
[email protected]
[email protected]
OWASP
Copyright © 2008 - The OWASP Foundation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License.
The OWASP Foundation
http://www.owasp.org
Part 1
Introduction to WebGoat & WebScarab
OWASP
2
WebGoat
WebGoat is a deliberately insecure J2EE web
application maintained by OWASP
Goal: Create a de-facto interactive teaching
environment for web application security
Currently over 30 lessons
 Anyone can create a lesson
Future “security benchmarking platform and Web site
Honeypot”
Project Page:
http://www.owasp.org/index.php/Category:OWASP_Web
Goat_Project
OWASP
3
WebGoat
OWASP
WebGoat Installation
Obtaining WebGoat
http://sourceforge.net/project/showfiles.php?group_i
d=64424&package_id=61824
Installation (Developer Version for Windows)
Download WebGoat-OWASP_Developer-5.2.zip
Unzip to C:\
Unzip Eclipse-Workspace.zip to C:\WebGoat-5.2
Double-click eclipse.bat
Open http://localhost/WebGoat/attack
Default username “guest”, password “guest”
OWASP
WebScarab
 WebScarab is a framework for analyzing applications
that communicate using the HTTP and HTTPS protocols
 Proxy, Fuzzer, Session ID Analyzer, Spider and more…
 Disclaimer: “…it is a tool primarily designed to be used by
people who can write code themselves…”
 WebScarab-NG
 Complete rewrite with focus on user-friendliness
 Uses Spring RCP
 Project Page:
http://www.owasp.org/index.php/Category:OWASP_WebScarab_Pr
oject
OWASP
WebScarab Installation
Obtaining WebScarab
http://sourceforge.net/project/showfiles.php?group_i
d=64424&package_id=61823
Installation (Windows)
Download
Double-click webscarab-installer-20070504-1631.jar
Next, Next, …
Start > Programs > WebScarab > WebScarab
OWASP
WebScarab as a Proxy
Firefox
Tools > Options > Advanced > Network > Setting >
Manual Proxy Configuration
 Localhost, port 8008
WebScarab
Proxy > Intercept Requests
OWASP
Part 2
Using WebGoat & WebScarab
OWASP
9
WebGoat Tips
Helpful Tools
HTTP Proxy
 OWASP WebScarab
 Livehttpheaders
 TamperData
Web Developer Tools
 Firebug
 Web Developer
OWASP
10
WebGoat Tips
Built-in help
Hints
 Fight the urge
Show Params
 HTTP Request Params
Show Cookies
 HTTP Request Cookies
Lesson Plan
 Goals & Objectives
Show Java
 Underlying Java source code for the lesson
Solutions
 Last resort!
OWASP
11
Lab: Role Based Access Control
Stage 1: Bypassing business layer access control
Stage 2: Add business layer access control
Check that user is authorized for action
handleRequest() in RoleBasedAccessControl.java
Stage 3: Bypass data layer access control
Stage 4: Add data layer access control
Check that user is authorized for action on a certain
employee
handleRequest() in RoleBasedAccessControl.java
OWASP
Lab: Cross Site Scripting (XSS)
 Stage 1 – Stored XSS
 Stage 2 – Correct Stored XSS Vuln
 Filter before it is written to the database
 parseEmployeeProfile() in UpdateProfile.java
 Stage 3 – Stored XSS revisited
 Stage 4 – Correct Stored XSS Vuln
 Encode/filter after retrieving from database, before displaying to
the user
 getEmployeeProfile() in ViewProfile.java
 HtmlEncoder.encode()
 Stage 5 – Reflected XSS
 Stage 6 – Correct Reflected XSS Vuln
 getRequestParameter() in FindProfile.java
OWASP
OWASP
Reminders
 Next Meeting
 December 2, 2008 6:00 PM – 8:00 PM
 Presentations: TBD
 Some ideas: Jakarta Commons/Struts Validator, SOA/Web Services Security, Web
application security testing, ACEGI, mod_security
 Location: Gevity, Lakewood Ranch
 OWASP Conference & Training




http://www.owasp.org/index.php/OWASP_NYC_AppSec_2008_Conference
Joe Jarzombek (Director for Software Assurance – DHS)
Howard Schmidt (White House Cyber-security Advisor)
Robert “Rsnake” Hansen, Jeremiah Grossman, and others
OWASP
15
Reminders
Becoming Involved
Participate in OWASP projects
 Contribute to existing projects
 Propose new projects
 Spearhead new ventures
Support & Participate in the Suncoast Chapter
 Present
 Spread the word
 Sponsorship
Mailing Lists
 Open forums for discussion of any relevant web application
security topics
Become a Member
http://www.owasp.org/index.php/Membership
OWASP
16
Special thanks to John Hale &
Gevity for the conference room!
Thank you for attending!
OWASP
17
References
RSA 2008 Breifing by J. Grossman
http://www.slideshare.net/guestdb261a/csrfrsa2008j
eremiahgrossman-349028/
OWASP