Lecture 2 - Web Application Mapping
Lecture 2 - Web Application Mapping
Excerpts and concepts taken from the Web Application Hacker’s Handbook 2nd Edition License: Creative Commons
Stuttard & Pinto, Wiley Press
2
E n u m e ra t i n g C o n t e n t
3
Enumeration Basics
What is Spidering?
Automated Spidering
Automated Spidering
Enumeration: robots.txt
Manual/Directed Spidering
Manual/Directed Spidering
§ Examples:
Brute-Force Enumeration
§ In order to identify backend content not directly
visible to users, the use of automated brute
forcing utilities is paramount
Brute-Force Results
16
Brute-Force Enumeration
§ When brute-forcing an application, each request will
return a status code
Brute-Force Wordlists
§ For example:
https://example.com/users/user/1
https://example.com/users/user/2
https://example.com/users/
https://example.com/admins/
https://example.com/admins/user/1
https://example.com/admins/admin/1
19
§ .old § .tar § ~1
§ .bak § .tar.gz § .tmp
§ .backup § .zip § .temp
§ .sql § .src
§ .txt § .php5
20
Server Misconfigurations
Hidden Parameters
§ Webmasters may use custom or hidden parameters
in GET or POST requests to toggle the visibility or
functionality of a web app
https://example.com/index.php
https://example.com/index.php?debug=1
§ Cookies
§ HTTP headers
§ Out-of-band channels
26
/search.php?searchTerm=data&results=10
/process/search;searchTerm=data
/process/search?searchTerm=data$results=10
/process/searchTerm=data/search
/process/search?searchTerm=data:data2
27
/search/data
/search/searchTerm/data
/search/searchTerm/data/
/search/data/10
/search/data/data2/10.json
Cookie: cart=item676&cart=item888&discount=10
Cookie: username=joe.blow&authenticated=1
29
S e r v e r- S i d e A n a l y s i s
32
Result:
HTTP/1.1 200 OK
Date: Mon, 13 Jan 2020 20:18:25 GMT
Server: Apache/2.4.18 (Ubuntu)
Strict-Transport-Security: max-age=2600000;
Vary: Host
Content-Type: text/html; charset=UTF-8
34
§ Examples:
https://example.com?search=’
https://example.com/users?id=-1000
36
Analysis Example #1
https://wahh-app.com/calendar.jsp?name=new%20applicants
&isExpired=0&startDate=22%2F09%2F2010
&endDate=22%2F03%2F2011&OrderBy=name
Example taken from the Web Application Hacker’s Handbook 2nd Edition
Stuttard & Pinto, Wiley Press
39
Analysis Example #2
https://wahh-app.com/workbench.aspx?template=NewBranch.tpl
&loc= /default&ver=2.31&edit=false
Example taken from the Web Application Hacker’s Handbook 2nd Edition
Stuttard & Pinto, Wiley Press
40
Analysis Example #3
[email protected]&[email protected]&subject=
Problem+logging+in&message=Please+help...
Example taken from the Web Application Hacker’s Handbook 2nd Edition
Stuttard & Pinto, Wiley Press
41
Let’s break!
S e e Yo u N e x t T i m e