bmt 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
|
|
1
1
|
{
|
2
2
|
"metadata": {
|
3
3
|
"title": "Website Testing",
|
4
|
-
"release_date": "
|
5
|
-
"description": "Bugcrowd
|
6
|
-
"vrt_version": "
|
4
|
+
"release_date": "2025-04-24T00:00:00+00:00",
|
5
|
+
"description": "Bugcrowd Web Methodology Testing",
|
6
|
+
"vrt_version": "1.16"
|
7
7
|
},
|
8
8
|
"content": {
|
9
9
|
"steps": [
|
@@ -17,74 +17,74 @@
|
|
17
17
|
"key": "search_engine_discovery_and_reconnaissance",
|
18
18
|
"title": "Conduct Search Engine Discovery and Reconnaissance for Information Leakage",
|
19
19
|
"caption": "OTG-INFO-001, WAHHM - Recon and Analysis",
|
20
|
-
"description": "
|
21
|
-
"tools": "
|
20
|
+
"description": "Query search engines for leaked credentials, configurations, or documents via misindexing.",
|
21
|
+
"tools": "bbot, dorky, Censys, Google Dorks, Shodan",
|
22
22
|
"vrt_category": "sensitive_data_exposure"
|
23
23
|
},
|
24
24
|
{
|
25
25
|
"key": "fingerprint",
|
26
26
|
"title": "Fingerprint Web Server",
|
27
27
|
"caption": "OTG-INFO-002, WAHHM - Recon and Analysis",
|
28
|
-
"description": "
|
29
|
-
"tools": "
|
28
|
+
"description": "Identify server, CMS, or database software and version to exploit CVEs or misconfigurations.",
|
29
|
+
"tools": "httpx, Nuclei, Wappalyzer",
|
30
30
|
"vrt_category": "server_security_misconfiguration"
|
31
31
|
},
|
32
32
|
{
|
33
33
|
"key": "webserver_metafiles",
|
34
34
|
"title": "Review Webserver Metafiles for Information Leakage",
|
35
35
|
"caption": "OTG-INFO-003, WAHHM - Recon and Analysis",
|
36
|
-
"description": "
|
36
|
+
"description": "Check robots.txt, sitemap.xml and identify <META> Tags from website for exposed endpoints or directories.",
|
37
37
|
"tools": "Browser, curl, wget"
|
38
38
|
},
|
39
39
|
{
|
40
40
|
"key": "enumerate_applications",
|
41
41
|
"title": "Enumerate Applications on Webserver",
|
42
42
|
"caption": "if in scope OTG-INFO-004, WAHHM - Recon and Analysis",
|
43
|
-
"description": "Find applications hosted in the webserver (Virtual hosts/Subdomain), non-standard ports, DNS zone transfers",
|
44
|
-
"tools": "
|
43
|
+
"description": "Find applications hosted in the webserver (Virtual hosts/Subdomain), non-standard ports, DNS zone transfers to expand the attack surface.",
|
44
|
+
"tools": "Amass, bbot, ffuf, gowitness, Subfinder"
|
45
45
|
},
|
46
46
|
{
|
47
47
|
"key": "webpage_comments_and_metadata",
|
48
48
|
"title": "Review Webpage Comments and Metadata for Information Leakage",
|
49
49
|
"caption": "OTG-INFO-005, WAHHM - Recon and Analysis",
|
50
|
-
"description": "
|
51
|
-
"tools": "Browser,
|
50
|
+
"description": "Analyze HTML and JavaScript for leaked API keys, credentials, or endpoints.",
|
51
|
+
"tools": "Browser, GitDorker, LinkFinder, TruffleHog",
|
52
52
|
"vrt_category": "sensitive_data_exposure"
|
53
53
|
},
|
54
54
|
{
|
55
55
|
"key": "application_entry_points",
|
56
56
|
"title": "Identify application entry points",
|
57
57
|
"caption": "OTG-INFO-006, WAHHM - Recon and Analysis",
|
58
|
-
"description": "Identify
|
59
|
-
"tools": "Burp
|
58
|
+
"description": "Identify forms, APIs, or parameters for injection or logic vulnerabilities.",
|
59
|
+
"tools": "Arjun, Burp Suite (Param-miner), kiterunner"
|
60
60
|
},
|
61
61
|
{
|
62
62
|
"key": "execution_paths",
|
63
63
|
"title": "Map execution paths through application",
|
64
64
|
"caption": "OTG-INFO-007, WAHHM - Recon and Analysis",
|
65
|
-
"description": "Map
|
66
|
-
"tools": "Burp
|
65
|
+
"description": "Map application workflows to uncover hidden or unprotected routes.",
|
66
|
+
"tools": "Burp Suite, ffuf, Interlace, nuclei"
|
67
67
|
},
|
68
68
|
{
|
69
69
|
"key": "fingerprint_webapp_framework",
|
70
70
|
"title": "Fingerprint Web Application Framework",
|
71
71
|
"caption": "OTG-INFO-008, WAHHM - Recon and Analysis",
|
72
|
-
"description": "
|
73
|
-
"tools": "
|
72
|
+
"description": "Identify the web application framework or CMS by examining HTTP headers, cookies, source code, and specific file/folder structures for characteristic indicators.",
|
73
|
+
"tools": "BuiltWith, Burp Suite, httpx, Wappalyzer"
|
74
74
|
},
|
75
75
|
{
|
76
76
|
"key": "fingerprint_webapp",
|
77
77
|
"title": "Fingerprint Web Application",
|
78
78
|
"caption": "OTG-INFO-009, WAHHM - Recon and Analysis",
|
79
79
|
"description": "Identify the web application and version to determine known vulnerabilities and the appropriate exploits.",
|
80
|
-
"tools": "
|
80
|
+
"tools": "Nuclei, httpx, Wappalyzer"
|
81
81
|
},
|
82
82
|
{
|
83
83
|
"key": "application_architecture",
|
84
84
|
"title": "Map Application Architecture",
|
85
85
|
"caption": "OTG-INFO-010, WAHHM - Recon and Analysis",
|
86
86
|
"description": "Identify application architecture including Web language, WAF, Reverse proxy, Application Server, Backend Database",
|
87
|
-
"tools": "
|
87
|
+
"tools": "Censys, httpx, Shodan, wafw00f, Wappalyzer"
|
88
88
|
}
|
89
89
|
]
|
90
90
|
},
|
@@ -98,63 +98,103 @@
|
|
98
98
|
"key": "network_and_infrastructure",
|
99
99
|
"title": "Test Network/Infrastructure Configuration",
|
100
100
|
"caption": "OTG-CONFIG-001, WAHHM - Recon and Analysis, Assess Application Hosting",
|
101
|
-
"description": "
|
102
|
-
"tools": "Nessus",
|
101
|
+
"description": "Assess infrastructure interactions and configuration management for software, backend DB servers, WebDAV, and FTP to uncover known vulnerabilities.",
|
102
|
+
"tools": "naabu, Nessus, Nmap, RustScan",
|
103
103
|
"vrt_category": "server_security_misconfiguration"
|
104
104
|
},
|
105
105
|
{
|
106
106
|
"key": "application_platform",
|
107
107
|
"title": "Test Application Platform Configuration",
|
108
108
|
"caption": "OTG-CONFIG-002, WAHHM - Recon and Analysis",
|
109
|
-
"description": "
|
110
|
-
"tools": "Browser,
|
109
|
+
"description": "Testing application platform configuration involves identifying default installation paths, handling server errors, enforcing minimal privileges, and managing software logging.",
|
110
|
+
"tools": "Browser, ffuf, Nuclei",
|
111
111
|
"vrt_category": "server_security_misconfiguration"
|
112
112
|
},
|
113
113
|
{
|
114
114
|
"key": "file_extensions_handling",
|
115
115
|
"title": "Test File Extensions Handling for Sensitive Information",
|
116
116
|
"caption": "OTG-CONFIG-003, WAHHM - Recon and Analysis",
|
117
|
-
"description": "
|
118
|
-
"tools": "Browser,
|
117
|
+
"description": "Locate crucial files and information with the following extensions: .asa, .inc, .sql, .zip, .tar, .pdf, .txt, and others.",
|
118
|
+
"tools": "Browser, ffuf",
|
119
119
|
"vrt_category": "sensitive_data_exposure"
|
120
120
|
},
|
121
121
|
{
|
122
122
|
"key": "backup_and_unreferenced_files",
|
123
123
|
"title": "Backup and Unreferenced Files for Sensitive Information",
|
124
124
|
"caption": "OTG-CONFIG-004, WAHHM - Recon and Analysis",
|
125
|
-
"description": "
|
126
|
-
"tools": "
|
125
|
+
"description": "Examine JavaScript code, comments, cache, and backup files (.old, .bak, .inc, .src). Utilize filename guessing to discover additional files.",
|
126
|
+
"tools": "Browser, ffuf, gau, LinkFinder",
|
127
127
|
"vrt_category": "sensitive_data_exposure"
|
128
128
|
},
|
129
129
|
{
|
130
130
|
"key": "admin_interfaces",
|
131
131
|
"title": "Enumerate Infrastructure and Application Admin Interfaces",
|
132
132
|
"caption": "OTG-CONFIG-005, WAHHM - Recon and Analysis",
|
133
|
-
"description": "
|
134
|
-
"tools": "Burp
|
133
|
+
"description": "Perform directory and file enumeration. Extract comments and links from source code, specifically looking for administrative interfaces (e.g., /admin, /administrator, /backoffice, /backend). Investigate alternative server ports, such as Tomcat running on port 8080.",
|
134
|
+
"tools": "Burp Suite, ffuf, gau, kiterunner, LinkFinder"
|
135
135
|
},
|
136
136
|
{
|
137
137
|
"key": "http_methods",
|
138
138
|
"title": "Test HTTP Methods",
|
139
139
|
"caption": "OTG-CONFIG-006, WAHHM - Test Handling of Access",
|
140
|
-
"description": "
|
141
|
-
"tools": "
|
140
|
+
"description": "Probe risky HTTP methods (e.g., OPTIONS, TRACE, PUT) for unauthorized access.",
|
141
|
+
"tools": "Burp Suite, curl, ffuf",
|
142
142
|
"vrt_category": "server_security_misconfiguration"
|
143
143
|
},
|
144
144
|
{
|
145
145
|
"key": "http_transport_security",
|
146
146
|
"title": "Test HTTP Strict Transport Security",
|
147
147
|
"caption": "OTG-CONFIG-007, WAHHM - Test Handling of Access",
|
148
|
-
"description": "
|
149
|
-
"tools": "Burp
|
148
|
+
"description": "Check the HTTP response headers from the web server to identify the presence and details of the Strict-Transport-Security (HSTS) header.",
|
149
|
+
"tools": "Browser, Burp Suite, curl",
|
150
150
|
"vrt_category": "server_security_misconfiguration"
|
151
151
|
},
|
152
152
|
{
|
153
153
|
"key": "ria_cross_domain_policy",
|
154
154
|
"title": "Test RIA cross domain policy",
|
155
155
|
"caption": "OTG-CONFIG-008, WAHHM - Test Handling of Access",
|
156
|
-
"description": "
|
157
|
-
"tools": "Burp
|
156
|
+
"description": "Test crossdomain.xml and clientaccesspolicy.xml for permissive data access.",
|
157
|
+
"tools": "Burp Suite, curl, wget",
|
158
|
+
"vrt_category": "server_security_misconfiguration"
|
159
|
+
},
|
160
|
+
{
|
161
|
+
"key": "test_for_subdomain_takeover",
|
162
|
+
"title": "Test for Subdomain Takeover",
|
163
|
+
"caption": "OTG-CONFIG-010",
|
164
|
+
"description": "Exploit dangling DNS records for subdomain takeover.",
|
165
|
+
"tools": "Amass, bbot, dig, gowitness, subfinder",
|
166
|
+
"vrt_category": "server_security_misconfiguration"
|
167
|
+
},
|
168
|
+
{
|
169
|
+
"key": "test_cloud_storage",
|
170
|
+
"title": "Test Cloud Storage",
|
171
|
+
"caption": "OTG-CONFIG-011",
|
172
|
+
"description": "Check AWS S3 buckets, GCP Cloud Storage, and Azure Blob Storage for public data exposure.",
|
173
|
+
"tools": "awscli, Azure CLI, CloudFox, GCPBucketBrute, s3recon",
|
174
|
+
"vrt_category": "server_security_misconfiguration"
|
175
|
+
},
|
176
|
+
{
|
177
|
+
"key": "web_cache_deception",
|
178
|
+
"title": "Web Cache Deception",
|
179
|
+
"caption": "",
|
180
|
+
"description": "Cache sensitive pages as public resources via path manipulation.",
|
181
|
+
"tools": "Browser, Burp Suite (Param-miner), curl",
|
182
|
+
"vrt_category": "server_security_misconfiguration"
|
183
|
+
},
|
184
|
+
{
|
185
|
+
"key": "web_cache_poisoning",
|
186
|
+
"title": "Web Cache Poisoning",
|
187
|
+
"caption": "",
|
188
|
+
"description": "Poison CDN or service worker cache with malicious content.",
|
189
|
+
"tools": "Browser, Burp Suite (Param-miner), curl",
|
190
|
+
"vrt_category": "server_security_misconfiguration"
|
191
|
+
},
|
192
|
+
{
|
193
|
+
"key": "content_security_policy",
|
194
|
+
"title": "Testing Content Security Policy (CSP)",
|
195
|
+
"caption": "",
|
196
|
+
"description": "Assess the implementation of the Content Security Policy to ensure it effectively mitigates risks of cross-site scripting (XSS) and data injection attacks.",
|
197
|
+
"tools": "Burp Suite, CSP Evaluator, ZAP",
|
158
198
|
"vrt_category": "server_security_misconfiguration"
|
159
199
|
}
|
160
200
|
]
|
@@ -170,7 +210,7 @@
|
|
170
210
|
"title": "Test Role Definitions",
|
171
211
|
"caption": "OTG-IDENT-001, WAHHM - Test Handling of Access",
|
172
212
|
"description": "Validate the system roles defined within the application by creating a permission matrix.",
|
173
|
-
"tools": "Burp
|
213
|
+
"tools": "Browser, Burp Suite, ZAP",
|
174
214
|
"vrt_category": "broken_access_control"
|
175
215
|
},
|
176
216
|
{
|
@@ -178,46 +218,46 @@
|
|
178
218
|
"title": "Test User Registration Process",
|
179
219
|
"caption": "OTG-IDENT-002, WAHHM - Test Handling of Access",
|
180
220
|
"description": "Verify that the identity requirements for user registration are aligned with business and security requirements",
|
181
|
-
"tools": "Burp
|
221
|
+
"tools": "Browser, Burp Suite, ZAP",
|
182
222
|
"vrt_category": "server_security_misconfiguration"
|
183
223
|
},
|
184
224
|
{
|
185
225
|
"key": "account_provisioning",
|
186
226
|
"title": "Test Account Provisioning Process",
|
187
227
|
"caption": "OTG-IDENT-003, WAHHM - Test Handling of Access",
|
188
|
-
"description": "
|
189
|
-
"tools": "Burp
|
228
|
+
"description": "Identify the roles with user provisioning capabilities and the permissible scope of the accounts they can provision.",
|
229
|
+
"tools": "Browser, Burp Suite, ZAP"
|
190
230
|
},
|
191
231
|
{
|
192
232
|
"key": "guessable_user_accounts",
|
193
233
|
"title": "Testing for Account Enumeration and Guessable User Account",
|
194
234
|
"caption": "OTG-IDENT-004, WAHHM - Test Handling of Access",
|
195
|
-
"description": "
|
196
|
-
"tools": "Browser, Burp
|
235
|
+
"description": "Check login and forgot password mechanisms for generic error leakage and return code vulnerabilities, and attempt to enumerate valid users through direct methods or timing exploits.",
|
236
|
+
"tools": "Browser, Burp Suite, ZAP",
|
197
237
|
"vrt_category": "server_security_misconfiguration"
|
198
238
|
},
|
199
239
|
{
|
200
240
|
"key": "username_policy",
|
201
241
|
"title": "Testing for Weak or unenforced username policy",
|
202
242
|
"caption": "OTG-IDENT-005, WAHHM - Test Handling of Access",
|
203
|
-
"description": "User account
|
204
|
-
"tools": "Browser, Burp
|
243
|
+
"description": "User account naming conventions often follow predictable patterns (e.g., initials and last name), making valid account names easily guessable.",
|
244
|
+
"tools": "Browser, Burp Suite, ZAP",
|
205
245
|
"vrt_category": "server_security_misconfiguration"
|
206
246
|
},
|
207
247
|
{
|
208
248
|
"key": "guest_accounts_permission",
|
209
249
|
"title": "Test Permissions of Guest/Training Accounts",
|
210
250
|
"caption": "OTG-IDENT-006, WAHHM - Test Handling of Access",
|
211
|
-
"description": "
|
212
|
-
"tools": "Burp
|
251
|
+
"description": "Evaluate if guest and training account access permissions consistently align with the defined access policy.",
|
252
|
+
"tools": "Browser, Burp Suite, ZAP",
|
213
253
|
"vrt_category": "server_security_misconfiguration"
|
214
254
|
},
|
215
255
|
{
|
216
256
|
"key": "account_suspension_resumption",
|
217
257
|
"title": "Test Account Suspension/Resumption Process",
|
218
258
|
"caption": "OTG-IDENT-007, WAHHM - Test Handling of Access",
|
219
|
-
"description": "Verify the
|
220
|
-
"tools": "Burp
|
259
|
+
"description": "Verify the alignment of user registration identity requirements with business and security needs, and subsequently validate the entire registration process.",
|
260
|
+
"tools": "Browser, Burp Suite, ZAP",
|
221
261
|
"vrt_category": "server_security_misconfiguration"
|
222
262
|
}
|
223
263
|
]
|
@@ -233,23 +273,23 @@
|
|
233
273
|
"title": "Testing for Credentials Transported over an Encrypted Channel",
|
234
274
|
"caption": "OTG-AUTHN-001, WAHHM - Miscellaneous Tests",
|
235
275
|
"description": "Check the referrer whether it’s HTTP or HTTPs. Sending data through HTTP and HTTPS.",
|
236
|
-
"tools": "Burp
|
276
|
+
"tools": "Burp Suite, ZAP",
|
237
277
|
"vrt_category": "broken_authentication_and_session_management"
|
238
278
|
},
|
239
279
|
{
|
240
280
|
"key": "default_credentials",
|
241
281
|
"title": "Testing for default credentials",
|
242
282
|
"caption": "OTG-AUTHN-002, WAHHM - Test Handling of Access",
|
243
|
-
"description": "
|
244
|
-
"tools": "Burp
|
283
|
+
"description": "Test for default credentials in common applications and default passwords assigned to new accounts.",
|
284
|
+
"tools": "Browser, Burp Suite, ZAP, Hydra",
|
245
285
|
"vrt_category": "server_security_misconfiguration"
|
246
286
|
},
|
247
287
|
{
|
248
288
|
"key": "lock_out_mechanism",
|
249
|
-
"title": "Testing for Weak
|
289
|
+
"title": "Testing for Weak Lockout Mechanism",
|
250
290
|
"caption": "OTG-AUTHN-003, WAHHM - Test Handling of Access",
|
251
|
-
"description": "Evaluate the
|
252
|
-
"tools": "Browser",
|
291
|
+
"description": "Evaluate the strength of the account lockout against password guessing and the security of the account unlock process.",
|
292
|
+
"tools": "Browser, Burp Suite, ZAP, Hydra",
|
253
293
|
"vrt_category": "server_security_misconfiguration"
|
254
294
|
},
|
255
295
|
{
|
@@ -257,47 +297,47 @@
|
|
257
297
|
"title": "Testing for bypassing authentication schema",
|
258
298
|
"caption": "OTG-AUTHN-004, WAHHM - Test Handling of Access",
|
259
299
|
"description": "Force browsing (/admin/main.php, /page.asp?authenticated=yes), Parameter Modification, Session ID prediction, SQL Injection",
|
260
|
-
"tools": "Burp
|
300
|
+
"tools": "Arjun, Browser, Burp Suite, kiterunner, Param-miner, ZAP",
|
261
301
|
"vrt_category": "broken_authentication_and_session_management"
|
262
302
|
},
|
263
303
|
{
|
264
304
|
"key": "remember_password",
|
265
305
|
"title": "Test remember password functionality",
|
266
306
|
"caption": "OTG-AUTHN-005, WAHHM - Test Handling of Access",
|
267
|
-
"description": "
|
268
|
-
"tools": "Burp
|
307
|
+
"description": "Check application cookies for password storage (ensuring they are not in plaintext but hashed) and verify the autocomplete=off attribute on password fields.",
|
308
|
+
"tools": "Browser, Burp Suite, ZAP",
|
269
309
|
"vrt_category": "broken_authentication_and_session_management"
|
270
310
|
},
|
271
311
|
{
|
272
312
|
"key": "browser_cache",
|
273
313
|
"title": "Testing for Browser cache weakness",
|
274
314
|
"caption": "OTG-AUTHN-006, WAHHM - Miscellaneous Tests",
|
275
|
-
"description": "
|
276
|
-
"tools": "Burp
|
315
|
+
"description": "Test for browser history vulnerabilities after logout and examine HTTP response headers for proper cache control directives (e.g., Cache-Control: no-cache)",
|
316
|
+
"tools": "Browser, Burp Suite, ZAP, Firefox add-on CacheViewer2",
|
277
317
|
"vrt_category": "server_security_misconfiguration"
|
278
318
|
},
|
279
319
|
{
|
280
320
|
"key": "password_policy",
|
281
321
|
"title": "Testing for Weak password policy",
|
282
322
|
"caption": "OTG-AUTHN-007, WAHHM - Test Handling of Access",
|
283
|
-
"description": "
|
284
|
-
"tools": "Burp
|
323
|
+
"description": "Assess the application's resistance to dictionary-based brute-force attacks by evaluating password length, complexity, reuse restrictions, and aging requirements.",
|
324
|
+
"tools": "Browser, Burp Suite, ZAP, Hydra",
|
285
325
|
"vrt_category": "insufficient_security_configurability"
|
286
326
|
},
|
287
327
|
{
|
288
328
|
"key": "security_question",
|
289
329
|
"title": "Testing for Weak security question/answer",
|
290
330
|
"caption": "OTG-AUTHN-008, WAHHM - Test Handling of Access",
|
291
|
-
"description": "
|
292
|
-
"tools": "Browser",
|
331
|
+
"description": "Test password reset questions for inherent weakness (pre-generated, self-generated) and susceptibility to brute-force attacks due to unlimited attempts.",
|
332
|
+
"tools": "Browser, Burp Suite, ZAP",
|
293
333
|
"vrt_category": "broken_authentication_and_session_management"
|
294
334
|
},
|
295
335
|
{
|
296
336
|
"key": "change_password",
|
297
337
|
"title": "Testing for weak password change or reset functionalities",
|
298
338
|
"caption": "OTG-AUTHN-009, WAHHM - Test Handling of Access",
|
299
|
-
"description": "Test password reset
|
300
|
-
"tools": "Browser, Burp
|
339
|
+
"description": "Test password reset for plaintext password display, insecure email transmission, and missing random tokens, and assess password change for old password requirement and CSRF vulnerability.",
|
340
|
+
"tools": "Browser, Burp Suite, ZAP",
|
301
341
|
"vrt_category": "broken_authentication_and_session_management"
|
302
342
|
},
|
303
343
|
{
|
@@ -305,7 +345,35 @@
|
|
305
345
|
"title": "Testing for Weaker authentication in alternative channel",
|
306
346
|
"caption": "OTG-AUTHN-010, WAHHM - Test Handling of Access",
|
307
347
|
"description": "Understand the primary mechanism and Identify other channels (Mobile App, Call center, SSO)",
|
308
|
-
"tools": "Browser"
|
348
|
+
"tools": "Browser, Burp Suite, ZAP"
|
349
|
+
},
|
350
|
+
{
|
351
|
+
"key": "single_sign_on_misconfigurations",
|
352
|
+
"title": "Single Sign-On Misconfigurations",
|
353
|
+
"caption": "",
|
354
|
+
"description": "Exploit OAuth or OpenID Connect flaws (e.g., redirect URI tampering)",
|
355
|
+
"tools": "Browser, Burp Suite, ZAP"
|
356
|
+
},
|
357
|
+
{
|
358
|
+
"key": "testing_for_mfa",
|
359
|
+
"title": "Testing for 2FA/MFA",
|
360
|
+
"caption": "",
|
361
|
+
"description": "Attempt to bypass the implemented two-factor authentication to identify potential weaknesses.",
|
362
|
+
"tools": "Browser, Burp Suite, ZAP"
|
363
|
+
},
|
364
|
+
{
|
365
|
+
"key": "testing_for_password_reset_token",
|
366
|
+
"title": "Testing for Password Reset Token Exposure to Third-Party Domains",
|
367
|
+
"caption": "",
|
368
|
+
"description": "Check if password reset tokens are exposed to third-party domains via referrer headers or other methods.",
|
369
|
+
"tools": "Browser, Burp Suite, ZAP"
|
370
|
+
},
|
371
|
+
{
|
372
|
+
"key": "testing_for_reusable_password_reset_token",
|
373
|
+
"title": "Testing for Reusable Password Reset Tokens",
|
374
|
+
"caption": "",
|
375
|
+
"description": "Determine if password reset tokens can be used multiple times.",
|
376
|
+
"tools": "Browser, Burp Suite, ZAP"
|
309
377
|
}
|
310
378
|
]
|
311
379
|
},
|
@@ -319,32 +387,32 @@
|
|
319
387
|
"key": "directory_traversal_and_file_include",
|
320
388
|
"title": "Testing Directory traversal/file include",
|
321
389
|
"caption": "OTG-AUTHZ-001, WAHHM - Test Handling of Input",
|
322
|
-
"description": "
|
323
|
-
"tools": "Burp
|
390
|
+
"description": "Test for Dot-Dot-Slash (../), Directory Traversal, Local File Inclusion (LFI), and Remote File Inclusion (RFI) vulnerabilities.",
|
391
|
+
"tools": "Arjun, Burp Suite, ffuf, Param-miner, Wfuzz, ZAP",
|
324
392
|
"vrt_category": "server_side_injection"
|
325
393
|
},
|
326
394
|
{
|
327
395
|
"key": "bypass_schema",
|
328
396
|
"title": "Testing for bypassing authorization schema",
|
329
397
|
"caption": "OTG-AUTHZ-002, WAHHM - Test Handling of Access",
|
330
|
-
"description": "
|
331
|
-
"tools": "Burp
|
398
|
+
"description": "Test for the ability to access resources without authentication, bypass Access Control Lists (ACLs), and perform forceful browsing to restricted areas (e.g., /admin/adduser.jsp)",
|
399
|
+
"tools": "Burp Suite (Authorize), ZAP",
|
332
400
|
"vrt_category": "broken_access_control"
|
333
401
|
},
|
334
402
|
{
|
335
403
|
"key": "privilege_escalation",
|
336
404
|
"title": "Testing for Privilege Escalation",
|
337
405
|
"caption": "OTG-AUTHZ-003, WAHHM - Test Handling of Access",
|
338
|
-
"description": "
|
339
|
-
"tools": "Burp
|
406
|
+
"description": "Escalate privileges via parameter tampering or logic flaws.",
|
407
|
+
"tools": "Burp Suite (Authorize), ZAP",
|
340
408
|
"vrt_category": "broken_authentication_and_session_management"
|
341
409
|
},
|
342
410
|
{
|
343
411
|
"key": "direct_object_reference",
|
344
412
|
"title": "Testing for Insecure Direct Object References",
|
345
413
|
"caption": "OTG-AUTHZ-004, WAHHM - Test Handling of Access",
|
346
|
-
"description": "
|
347
|
-
"tools": "Burp
|
414
|
+
"description": "Access objects by manipulating identifiers (e.g., user IDs)",
|
415
|
+
"tools": "Burp Suite (Authorize), ZAP",
|
348
416
|
"vrt_category": "broken_access_control"
|
349
417
|
}
|
350
418
|
]
|
@@ -359,8 +427,8 @@
|
|
359
427
|
"key": "bypass_schema",
|
360
428
|
"title": "Testing for Bypassing Session Management Schema",
|
361
429
|
"caption": "OTG-SESS-001, WAHHM - Test Handling of Access",
|
362
|
-
"description": "
|
363
|
-
"tools": "Burp
|
430
|
+
"description": "Predictable SessionIDs transmitted without encryption expose a vulnerability to interception and potential brute-force attacks, leading to authentication bypass.",
|
431
|
+
"tools": "Browser, Burp Suite, ZAP",
|
364
432
|
"vrt_category": "broken_authentication_and_session_management"
|
365
433
|
},
|
366
434
|
{
|
@@ -368,7 +436,7 @@
|
|
368
436
|
"title": "Testing for Cookies attributes",
|
369
437
|
"caption": "OTG-SESS-002, WAHHM - Test Handling of Access",
|
370
438
|
"description": "Check HTTPOnly and Secure flag expiration, inspect for sensitive data.",
|
371
|
-
"tools": "Burp
|
439
|
+
"tools": "Browser, Burp Suite, ZAP",
|
372
440
|
"vrt_category": "server_security_misconfiguration"
|
373
441
|
},
|
374
442
|
{
|
@@ -376,31 +444,31 @@
|
|
376
444
|
"title": "Testing for Session Fixation",
|
377
445
|
"caption": "OTG-SESS-003, WAHHM - Test Handling of Access",
|
378
446
|
"description": "The application doesn't renew the cookie after a successful user authentication.",
|
379
|
-
"tools": "Burp
|
447
|
+
"tools": "Burp Suite, ZAP",
|
380
448
|
"vrt_category": "broken_authentication_and_session_management"
|
381
449
|
},
|
382
450
|
{
|
383
451
|
"key": "exposed_variables",
|
384
452
|
"title": "Testing for Exposed Session Variables",
|
385
453
|
"caption": "OTG-SESS-004, WAHHM - Test Handling of Access",
|
386
|
-
"description": "
|
387
|
-
"tools": "Burp
|
454
|
+
"description": "Unencrypted and reused session tokens sent via GET requests expose sessions to easy interception and hijacking.",
|
455
|
+
"tools": "Burp Suite, ZAP",
|
388
456
|
"vrt_category": "broken_authentication_and_session_management"
|
389
457
|
},
|
390
458
|
{
|
391
459
|
"key": "csrf",
|
392
460
|
"title": "Testing for Cross Site Request Forgery",
|
393
461
|
"caption": "OTG-SESS-005, WAHHM - Test Handling of Access",
|
394
|
-
"description": "
|
395
|
-
"tools": "Burp
|
462
|
+
"description": "Predictable URLs combined with missing CSRF tokens allow attackers to directly trigger actions on behalf of logged-in users.",
|
463
|
+
"tools": "Burp Suite, ZAP",
|
396
464
|
"vrt_category": "cross_site_request_forgery_csrf"
|
397
465
|
},
|
398
466
|
{
|
399
467
|
"key": "logout",
|
400
468
|
"title": "Testing for logout functionality",
|
401
469
|
"caption": "OTG-SESS-006, WAHHM - Test Handling of Access",
|
402
|
-
"description": "
|
403
|
-
"tools": "Burp
|
470
|
+
"description": "Verify session invalidation server-side and across SSO after logout to prevent reuse.",
|
471
|
+
"tools": "Burp Suite, ZAP",
|
404
472
|
"vrt_category": "broken_authentication_and_session_management"
|
405
473
|
},
|
406
474
|
{
|
@@ -408,16 +476,40 @@
|
|
408
476
|
"title": "Test Session Timeout",
|
409
477
|
"caption": "OTG-SESS-007, WAHHM - Test Handling of Access",
|
410
478
|
"description": "Check session timeout, after the timeout has passed, all session tokens should be destroyed or be unusable.",
|
411
|
-
"tools": "Burp
|
479
|
+
"tools": "Burp Suite, ZAP",
|
412
480
|
"vrt_category": "broken_authentication_and_session_management"
|
413
481
|
},
|
414
482
|
{
|
415
483
|
"key": "puzzling",
|
416
484
|
"title": "Testing for Session puzzling",
|
417
485
|
"caption": "OTG-SESS-008, WAHHM - Test Handling of Access",
|
418
|
-
"description": "
|
486
|
+
"description": "Reusing session variables for multiple purposes allows attackers to manipulate application flow by accessing pages in unintended sequences.",
|
419
487
|
"tools": "Burp Proxy, ZAP",
|
420
488
|
"vrt_category": "broken_authentication_and_session_management"
|
489
|
+
},
|
490
|
+
{
|
491
|
+
"key": "concurrent",
|
492
|
+
"title": "Test for Concurrent Sessions",
|
493
|
+
"caption": "",
|
494
|
+
"description": "Check how the application manages multiple active sessions for the same account. Ensure it prevents risks like session hijacking and improper session handling.",
|
495
|
+
"tools": "Browser, Burp Suite, ZAP",
|
496
|
+
"vrt_category": "broken_authentication_and_session_management"
|
497
|
+
},
|
498
|
+
{
|
499
|
+
"key": "permission",
|
500
|
+
"title": "Test for Session Validity After Permission Change",
|
501
|
+
"caption": "",
|
502
|
+
"description": "Check if sessions remain valid when user permissions are changed.",
|
503
|
+
"tools": "Browser, Burp Suite, ZAP",
|
504
|
+
"vrt_category": "broken_authentication_and_session_management"
|
505
|
+
},
|
506
|
+
{
|
507
|
+
"key": "json_web_token",
|
508
|
+
"title": "JSON Web Token (JWT) Attacks",
|
509
|
+
"caption": "",
|
510
|
+
"description": "Check the security of JWTs by ensuring strong signing algorithms, preventing tampering, and protecting sensitive data. Verify secure transmission, token expiration, and revocation practices.",
|
511
|
+
"tools": "Burp Suite, jwt_tool, jwtXploiter, ZAP",
|
512
|
+
"vrt_category": "broken_authentication_and_session_management"
|
421
513
|
}
|
422
514
|
]
|
423
515
|
},
|
@@ -431,61 +523,61 @@
|
|
431
523
|
"key": "reflected_xss",
|
432
524
|
"title": "Testing for Reflected Cross Site Scripting",
|
433
525
|
"caption": "OTG-INPVAL-001, WAHHM - Test Handling of Input",
|
434
|
-
"description": "
|
435
|
-
"tools": "Burp
|
526
|
+
"description": "Bypass input validation and leverage HTTP Parameter Pollution to inject XSS payloads, circumventing standard XSS detection vectors.",
|
527
|
+
"tools": "Arjun, Burp Suite (Param-miner), ZAP"
|
436
528
|
},
|
437
529
|
{
|
438
530
|
"key": "stored_xss",
|
439
531
|
"title": "Testing for Stored Cross Site Scripting",
|
440
532
|
"caption": "OTG-INPVAL-002, WAHHM - Test Handling of Input",
|
441
|
-
"description": "
|
442
|
-
"tools": "Burp
|
533
|
+
"description": "Identify and exploit persistent cross-site scripting vectors within input handling and HTML rendering to achieve arbitrary JavaScript execution across multiple authenticated user contexts.",
|
534
|
+
"tools": "Burp Suite, XSSer, ZAP",
|
443
535
|
"vrt_category": "cross_site_scripting_xss"
|
444
536
|
},
|
445
537
|
{
|
446
538
|
"key": "http_verb_tampering",
|
447
539
|
"title": "Testing for HTTP Verb Tampering",
|
448
540
|
"caption": "OTG-INPVAL-003, WAHHM - Test Handling of Input",
|
449
|
-
"description": "
|
450
|
-
"tools": "
|
541
|
+
"description": "Forge non-standard HTTP requests to probe and circumvent URL-based authentication and authorization mechanisms.",
|
542
|
+
"tools": "Burp Suite, HTTPie, httpx, ZAP",
|
451
543
|
"vrt_category": "server_security_misconfiguration"
|
452
544
|
},
|
453
545
|
{
|
454
546
|
"key": "http_param_pollution",
|
455
547
|
"title": "Testing for HTTP Parameter pollution",
|
456
548
|
"caption": "OTG-INPVAL-004, WAHHM - Test Handling of Input",
|
457
|
-
"description": "Identify
|
458
|
-
"tools": "
|
549
|
+
"description": "Identify bypasses in input validation and filtering mechanisms via HTTP Parameter Pollution (HPP) to inject malicious payloads through user-supplied data.",
|
550
|
+
"tools": "Arjun, Burp Suite (Param-miner), ZAP",
|
459
551
|
"vrt_category": "server_side_injection"
|
460
552
|
},
|
461
553
|
{
|
462
554
|
"key": "sql_injection",
|
463
555
|
"title": "Testing for SQL Injection",
|
464
556
|
"caption": "OTG-INPVAL-005, WAHHM - Test Handling of Input",
|
465
|
-
"description": "Union, Boolean, Error
|
466
|
-
"tools": "Burp Proxy (SQLipy), SQLMap
|
557
|
+
"description": "Identify and exploit SQL injection vulnerabilities (Union, Boolean, Error-based, Out-of-band, Time-delay) to achieve unauthorized database access and data manipulation.",
|
558
|
+
"tools": "Burp Proxy (SQLipy), SQLMap",
|
467
559
|
"vrt_category": "server_side_injection"
|
468
560
|
},
|
469
561
|
{
|
470
562
|
"key": "oracle",
|
471
|
-
"title": "Oracle
|
563
|
+
"title": "Testing for Oracle",
|
472
564
|
"caption": "",
|
473
|
-
"description": "
|
474
|
-
"tools": "
|
565
|
+
"description": "Discover PL/SQL web application endpoints, leverage PL/SQL packages for access, bypass exclusion mechanisms, and exploit SQL injection vulnerabilities.",
|
566
|
+
"tools": "SQLMap"
|
475
567
|
},
|
476
568
|
{
|
477
569
|
"key": "mysql",
|
478
|
-
"title": "MySQL
|
570
|
+
"title": "Testing for MySQL",
|
479
571
|
"caption": "",
|
480
|
-
"description": "Identify MySQL version
|
481
|
-
"tools": "SQLMap
|
572
|
+
"description": "Identify target MySQL version and leverage single quote injection via information_schema to achieve arbitrary file read/write capabilities.",
|
573
|
+
"tools": "SQLMap"
|
482
574
|
},
|
483
575
|
{
|
484
576
|
"key": "sql_server",
|
485
|
-
"title": "SQL Server
|
577
|
+
"title": "Testing for SQL Server",
|
486
578
|
"caption": "",
|
487
|
-
"description": "
|
488
|
-
"tools": "SQLMap
|
579
|
+
"description": "Leverage comment operators, query separators, and stored procedures (like xp_cmdshell) to inject and execute arbitrary commands within the database.",
|
580
|
+
"tools": "SQLMap"
|
489
581
|
},
|
490
582
|
{
|
491
583
|
"key": "postgre_sql",
|
@@ -496,47 +588,47 @@
|
|
496
588
|
},
|
497
589
|
{
|
498
590
|
"key": "ms_access",
|
499
|
-
"title": "MS Access
|
591
|
+
"title": "Testing for MS Access",
|
500
592
|
"caption": "",
|
501
|
-
"description": "
|
593
|
+
"description": "Exploit error-based SQL injection (via GROUP BY) to enumerate database columns and extract schema information using targeted fuzzing lists.",
|
502
594
|
"tools": "SQLMap"
|
503
595
|
},
|
504
596
|
{
|
505
597
|
"key": "nosql_injection",
|
506
598
|
"title": "Testing for NoSQL injection",
|
507
599
|
"caption": "",
|
508
|
-
"description": "
|
600
|
+
"description": "Identify NoSQL database vulnerabilities by injecting special characters (' \" \\ ; { } ) and reserved keywords to manipulate query logic and potentially gain unauthorized access.",
|
509
601
|
"tools": "NoSQLMap"
|
510
602
|
},
|
511
603
|
{
|
512
604
|
"key": "ldap_injection",
|
513
605
|
"title": "Testing for LDAP Injection",
|
514
606
|
"caption": "OTG-INPVAL-006, WAHHM - Test Handling of Input",
|
515
|
-
"description": "
|
516
|
-
"tools": "Burp
|
607
|
+
"description": "Actively examining LDAP endpoints using specialized inputs to detect exploitable injection flaws that could lead to unauthorized data exposure or manipulation.",
|
608
|
+
"tools": "Burp Suite, ZAP",
|
517
609
|
"vrt_category": "server_side_injection"
|
518
610
|
},
|
519
611
|
{
|
520
612
|
"key": "orm_injection",
|
521
613
|
"title": "Testing for ORM Injection",
|
522
614
|
"caption": "OTG-INPVAL-007, WAHHM - Test Handling of Input",
|
523
|
-
"description": "
|
524
|
-
"tools": "
|
615
|
+
"description": "Analyze application data flow to detect injection points where crafted input can alter ORM-generated queries, enabling unintended database interactions.",
|
616
|
+
"tools": "SQLMap",
|
525
617
|
"vrt_category": "server_side_injection"
|
526
618
|
},
|
527
619
|
{
|
528
620
|
"key": "xml_injection",
|
529
621
|
"title": "Testing for XML Injection",
|
530
622
|
"caption": "OTG-INPVAL-008, WAHHM - Test Handling of Input",
|
531
|
-
"description": "
|
532
|
-
"tools": "Burp
|
623
|
+
"description": "Analyze XML parsing mechanisms for vulnerabilities where maliciously structured XML input can be injected to manipulate application logic or extract sensitive data.",
|
624
|
+
"tools": "Burp Suite, oxml_xxe, XXEinjector, ZAP",
|
533
625
|
"vrt_category": "server_side_injection"
|
534
626
|
},
|
535
627
|
{
|
536
628
|
"key": "ssi_injection",
|
537
629
|
"title": "Testing for SSI Injection",
|
538
630
|
"caption": "OTG-INPVAL-009, WAHHM - Test Handling of Input",
|
539
|
-
"description": "
|
631
|
+
"description": "Examine .shtml resources for server-side include processing flaws that allow the injection of control characters and directives to achieve arbitrary code execution or sensitive file access on the server.",
|
540
632
|
"tools": "Burp Proxy, ZAP",
|
541
633
|
"vrt_category": "server_side_injection"
|
542
634
|
},
|
@@ -544,46 +636,46 @@
|
|
544
636
|
"key": "xpath_injection",
|
545
637
|
"title": "Testing for XPath Injection",
|
546
638
|
"caption": "OTG-INPVAL-010, WAHHM - Test Handling of Input",
|
547
|
-
"description": "
|
548
|
-
"tools": "Burp
|
639
|
+
"description": "Analyze XML path processing for vulnerabilities where crafted input, such as single quotes and logical OR conditions (e.g., ' or '1'='1), can be injected to induce errors revealing underlying structure or bypass authentication logic.",
|
640
|
+
"tools": "Burp Suite, ReadyAPI, ZAP",
|
549
641
|
"vrt_category": "server_side_injection"
|
550
642
|
},
|
551
643
|
{
|
552
644
|
"key": "imap_smtp_injection",
|
553
|
-
"title": "IMAP/SMTP Injection",
|
645
|
+
"title": "Testing for IMAP/SMTP Injection",
|
554
646
|
"caption": "OTG-INPVAL-011, WAHHM - Test Handling of Input",
|
555
|
-
"description": "
|
556
|
-
"tools": "Burp
|
647
|
+
"description": "Analyze mail client data handling for vulnerabilities where crafted input with special characters can be injected into IMAP/SMTP commands (headers, body, footer), potentially leading to unintended mail server actions or information disclosure.",
|
648
|
+
"tools": "Burp Suite, netcat, nmap IMAP/SMTP NSE script, ZAP",
|
557
649
|
"vrt_category": "server_side_injection"
|
558
650
|
},
|
559
651
|
{
|
560
652
|
"key": "code_injection",
|
561
653
|
"title": "Testing for Code Injection",
|
562
654
|
"caption": "OTG-INPVAL-012, WAHHM - Test Handling of Input",
|
563
|
-
"description": "
|
564
|
-
"tools": "Burp
|
655
|
+
"description": "Analyze input fields for vulnerabilities where the injection of OS commands (e.g., ; system('id')) can lead to arbitrary command execution on the underlying system.",
|
656
|
+
"tools": "Arjun, Burp Suite (Param-miner), Liffy, ZAP",
|
565
657
|
"vrt_category": "server_side_injection"
|
566
658
|
},
|
567
659
|
{
|
568
660
|
"key": "local_file_inclusion",
|
569
661
|
"title": "Testing for Local File Inclusion",
|
570
662
|
"caption": "",
|
571
|
-
"description": "
|
572
|
-
"tools": "Burp
|
663
|
+
"description": "Analyze application file handling for vulnerabilities where manipulated input with dot-dot-slash sequences (../../) or PHP wrappers (php://filter) can be used to access sensitive local files.",
|
664
|
+
"tools": "Arjun, Burp Suite (Param-miner), Liffy, ZAP"
|
573
665
|
},
|
574
666
|
{
|
575
667
|
"key": "remote_file_inclusion",
|
576
668
|
"title": "Testing for Remote File Inclusion",
|
577
669
|
"caption": "",
|
578
|
-
"description": "
|
579
|
-
"tools": "Burp
|
670
|
+
"description": "Analyze web applications for vulnerabilities where external URLs provided as parameters (e.g., ?file=http://attacker.com/malicious_page) can be included and executed by the server, leading to arbitrary code execution or data compromise.",
|
671
|
+
"tools": "Arjun, Burp Suite (Param-miner), Liffy, ZAP"
|
580
672
|
},
|
581
673
|
{
|
582
674
|
"key": "command_injection",
|
583
675
|
"title": "Testing for Command Injection",
|
584
676
|
"caption": "OTG-INPVAL-013, WAHHM - Test Handling of Input",
|
585
|
-
"description": "
|
586
|
-
"tools": "Burp
|
677
|
+
"description": "Analyze application input handling to identify vulnerabilities where crafted payloads leveraging OS-specific syntax (e.g., ``;,|+`) can be injected to execute arbitrary operating system commands on the underlying server.",
|
678
|
+
"tools": "Burp Suite, ZAP",
|
587
679
|
"vrt_category": "server_side_injection"
|
588
680
|
},
|
589
681
|
{
|
@@ -591,45 +683,93 @@
|
|
591
683
|
"title": "Testing for Buffer overflow",
|
592
684
|
"caption": "OTG-INPVAL-014, WAHHM - Test Handling of Input",
|
593
685
|
"description": "Testing for heap overflow vulnerability\nTesting for stack overflow vulnerability\nTesting for format string vulnerability",
|
594
|
-
"tools": "
|
686
|
+
"tools": "Burp Suite, Radamsa, wfuzz, ZAP",
|
595
687
|
"vrt_category": "server_side_injection"
|
596
688
|
},
|
597
689
|
{
|
598
690
|
"key": "heap_overflow",
|
599
691
|
"title": "Testing for Heap overflow",
|
600
692
|
"caption": "",
|
601
|
-
"description": "",
|
602
|
-
"tools": ""
|
693
|
+
"description": "Examining dynamic memory allocation to detect if writing beyond allocated heap buffers can corrupt data structures, potentially enabling arbitrary code execution.",
|
694
|
+
"tools": "Burp Suite, Radamsa, wfuzz, ZAP"
|
603
695
|
},
|
604
696
|
{
|
605
697
|
"key": "stack_overflow",
|
606
698
|
"title": "Testing for Stack overflow",
|
607
699
|
"caption": "",
|
608
|
-
"description": "",
|
609
|
-
"tools": ""
|
700
|
+
"description": "Investigating function call mechanisms to find if excessive data written to the stack can overwrite return addresses or local variables, potentially leading to control-flow redirection.",
|
701
|
+
"tools": "Burp Suite, Radamsa, wfuzz, ZAP"
|
610
702
|
},
|
611
703
|
{
|
612
704
|
"key": "format_string",
|
613
705
|
"title": "Testing for Format string",
|
614
706
|
"caption": "",
|
615
|
-
"description": "",
|
616
|
-
"tools": ""
|
707
|
+
"description": "Probing input handling with format specifiers to determine if attacker-controlled strings can be used to read from or write to arbitrary memory locations.",
|
708
|
+
"tools": "Burp Suite, Radamsa, wfuzz, ZAP"
|
617
709
|
},
|
618
710
|
{
|
619
711
|
"key": "incubated_vulnerabilities",
|
620
|
-
"title": "Testing for
|
712
|
+
"title": "Testing for Incubated Vulnerabilities",
|
621
713
|
"caption": "OTG-INPVAL-015, WAHHM - Test Handling of Input",
|
622
|
-
"description": "
|
623
|
-
"tools": "Burp
|
714
|
+
"description": "Analyze application components (file upload, data handling, server configurations) for latent vulnerabilities like Stored XSS and SQL/XPath Injection, and identifying misconfigurations that could be exploited over time.",
|
715
|
+
"tools": "Burp Suite, ZAP",
|
624
716
|
"vrt_category": "server_security_misconfiguration"
|
625
717
|
},
|
626
718
|
{
|
627
|
-
"key": "
|
628
|
-
"title": "Testing for HTTP Splitting
|
719
|
+
"key": "http_response_splitting",
|
720
|
+
"title": "Testing for HTTP Response Splitting",
|
721
|
+
"caption": "OTG-INPVAL-016, WAHHM - Test Handling of Input",
|
722
|
+
"description": "Analyze HTTP header handling for vulnerabilities allowing the injection of CRLF sequences (%0d%0a) to manipulate server responses and potentially conduct cross-user attacks.",
|
723
|
+
"tools": "Burp Suite, netcat, ZAP",
|
724
|
+
"vrt_category": "server_side_injection"
|
725
|
+
},
|
726
|
+
{
|
727
|
+
"key": "http_request_smuggling",
|
728
|
+
"title": "Testing for HTTP Request Smuggling",
|
629
729
|
"caption": "OTG-INPVAL-016, WAHHM - Test Handling of Input",
|
630
|
-
"description": "
|
631
|
-
"tools": "Burp
|
730
|
+
"description": "Analyze backend HTTP processing for discrepancies in request parsing that allow the injection and misrouting of subsequent requests.",
|
731
|
+
"tools": "Burp Suite, netcat, ZAP",
|
632
732
|
"vrt_category": "server_side_injection"
|
733
|
+
},
|
734
|
+
{
|
735
|
+
"key": "host_header_injection",
|
736
|
+
"title": "Testing for Host Header Injection",
|
737
|
+
"caption": "OTG-INPVAL-017",
|
738
|
+
"description": "Analyze application handling of the Host header for vulnerabilities allowing manipulation to conduct actions like cache poisoning or redirect users to malicious sites.",
|
739
|
+
"tools": "Burp Suite, curl, ZAP",
|
740
|
+
"vrt_category": "server_security_misconfiguration"
|
741
|
+
},
|
742
|
+
{
|
743
|
+
"key": "server_side_template_injection",
|
744
|
+
"title": "Testing for Server-side Template Injection",
|
745
|
+
"caption": "OTG-INPVAL-018",
|
746
|
+
"description": "Analyze server-side template rendering for vulnerabilities allowing injection of malicious code within template syntax to achieve remote code execution or data exfiltration.",
|
747
|
+
"tools": "Burp Suite, ZAP",
|
748
|
+
"vrt_category": "server_security_misconfiguration"
|
749
|
+
},
|
750
|
+
{
|
751
|
+
"key": "server_side_request_forgery",
|
752
|
+
"title": "Testing for Server-Side Request Forgery",
|
753
|
+
"caption": "OTG-INPVAL-019",
|
754
|
+
"description": "Probe application functionality that handles external URLs to identify vulnerabilities allowing unauthorized server-initiated requests.",
|
755
|
+
"tools": "Burp Suite, interactsh, SSRFmap",
|
756
|
+
"vrt_category": "server_security_misconfiguration"
|
757
|
+
},
|
758
|
+
{
|
759
|
+
"key": "insecure_deserialization",
|
760
|
+
"title": "Testing for Insecure Deserialization",
|
761
|
+
"caption": "",
|
762
|
+
"description": "Analyze application endpoints that deserialize data for vulnerabilities allowing manipulation of serialized objects to achieve arbitrary code execution or other malicious outcomes.",
|
763
|
+
"tools": "Burp Suite, ysoserial, ZAP",
|
764
|
+
"vrt_category": "server_security_misconfiguration"
|
765
|
+
},
|
766
|
+
{
|
767
|
+
"key": "testing_for_graphql",
|
768
|
+
"title": "Testing for GraphQL",
|
769
|
+
"caption": "",
|
770
|
+
"description": "Assess GraphQL implementations for vulnerabilities related to introspection, denial-of-service via complex queries, and insecure field access.",
|
771
|
+
"tools": "Burp Suite (GraphQL Raider), graphql-cop, GraphQLmap, InQL",
|
772
|
+
"vrt_category": "server_security_misconfiguration"
|
633
773
|
}
|
634
774
|
]
|
635
775
|
},
|
@@ -643,16 +783,24 @@
|
|
643
783
|
"key": "error_codes",
|
644
784
|
"title": "Analysis of Error Codes",
|
645
785
|
"caption": "OTG-ERR-001, WAHHM - Recon and Analysis",
|
646
|
-
"description": "
|
647
|
-
"tools": "Burp
|
786
|
+
"description": "Examine error messages and handling mechanisms for disclosure of sensitive data, internal system details, or potential for denial-of-service.",
|
787
|
+
"tools": "Burp Suite, ZAP",
|
648
788
|
"vrt_category": "server_security_misconfiguration"
|
649
789
|
},
|
650
790
|
{
|
651
791
|
"key": "stack_traces",
|
652
792
|
"title": "Analysis of Stack Traces",
|
653
793
|
"caption": "OTG-ERR-002, WAHHM - Recon and Analysis",
|
654
|
-
"description": "
|
655
|
-
"tools": "Burp
|
794
|
+
"description": "Check application responses for exposed stack traces that could disclose sensitive internal information.",
|
795
|
+
"tools": "Burp Suite, ZAP",
|
796
|
+
"vrt_category": "server_security_misconfiguration"
|
797
|
+
},
|
798
|
+
{
|
799
|
+
"key": "forbidden_bypass",
|
800
|
+
"title": "Testing for 403 forbidden bypass",
|
801
|
+
"caption": "",
|
802
|
+
"description": "Test various techniques like HTTP verb manipulation, URL encoding, directory traversal, header manipulation, path fuzzing, case manipulation, adding a trailing slash, and attaching a URL fragment to bypass 403 Forbidden errors",
|
803
|
+
"tools": "Burp Suite (403-bypasser), ZAP, 403jump",
|
656
804
|
"vrt_category": "server_security_misconfiguration"
|
657
805
|
}
|
658
806
|
]
|
@@ -668,24 +816,32 @@
|
|
668
816
|
"title": "Testing for Weak SSL/TSL Ciphers, Insufficient Transport Layer Protection",
|
669
817
|
"caption": "OTG-CRYPST-001, WAHHM - Test Handling of Access",
|
670
818
|
"description": "Identify SSL service, Identify weak ciphers/protocols (ie. RC4, BEAST, CRIME, POODLE)",
|
671
|
-
"tools": "testssl.sh,
|
819
|
+
"tools": "testssl.sh, nmap --script ssl-enum-ciphers",
|
672
820
|
"vrt_category": "server_security_misconfiguration"
|
673
821
|
},
|
674
822
|
{
|
675
823
|
"key": "padding_oracle",
|
676
824
|
"title": "Testing for Padding Oracle",
|
677
825
|
"caption": "OTG-CRYPST-002, WAHHM - Test Handling of Access",
|
678
|
-
"description": "
|
679
|
-
"tools": "
|
826
|
+
"description": "Evaluate application behavior across three ciphertext states: valid decryption, decryption resulting in errors (non-padding), and padding-related decryption failures.",
|
827
|
+
"tools": "Burp Suite (Padding Oracle Hunter), PadBuster, python-paddingoracle, POET",
|
680
828
|
"vrt_category": "broken_authentication_and_session_management"
|
681
829
|
},
|
682
830
|
{
|
683
831
|
"key": "unencrypted_channels",
|
684
832
|
"title": "Testing for Sensitive information sent via unencrypted channels",
|
685
833
|
"caption": "OTG-CRYPST-003, WAHHM - Test Handling of Access",
|
686
|
-
"description": "
|
687
|
-
"tools": "Burp
|
834
|
+
"description": "Ensure encrypted transport for sensitive information: authentication secrets, session tokens, and protected data (e.g., PCI, customer records)",
|
835
|
+
"tools": "Burp Suite, curl, ZAP",
|
688
836
|
"vrt_category": "broken_authentication_and_session_management"
|
837
|
+
},
|
838
|
+
{
|
839
|
+
"key": "weak_encryption",
|
840
|
+
"title": "Testing for Weak Encryption",
|
841
|
+
"caption": "OTG-CRYPST-004, WAHHM - Test Handling of Access",
|
842
|
+
"description": "Identify weak encryption algorithms (e.g., MD5, SHA-1) in storage or transit.",
|
843
|
+
"tools": "DevTools, Burp Suite, ZAP",
|
844
|
+
"vrt_category": "cryptographic_weakness"
|
689
845
|
}
|
690
846
|
]
|
691
847
|
},
|
@@ -699,70 +855,94 @@
|
|
699
855
|
"key": "data_validation",
|
700
856
|
"title": "Test Business Logic Data Validation",
|
701
857
|
"caption": "OTG-BUSLOGIC-001, WAHHM - Test for Logic Flaws",
|
702
|
-
"description": "
|
703
|
-
"tools": "Burp
|
858
|
+
"description": "Evaluate business logic for proper data validation implementation, covering range checks, format validation, consistency checks, and adherence to business rules.",
|
859
|
+
"tools": "Burp Suite, ZAP",
|
704
860
|
"vrt_category": "broken_access_control"
|
705
861
|
},
|
706
862
|
{
|
707
863
|
"key": "forge_requests",
|
708
864
|
"title": "Test Ability to Forge Requests",
|
709
865
|
"caption": "OTG-BUSLOGIC-002, WAHHM - Test for Logic Flaws",
|
710
|
-
"description": "
|
711
|
-
"tools": "Burp
|
866
|
+
"description": "Test the ability to forge HTTP requests to assess potential vulnerabilities related to request manipulation and unauthorized actions.",
|
867
|
+
"tools": "Burp Suite, ZAP",
|
712
868
|
"vrt_category": "server_side_injection"
|
713
869
|
},
|
714
870
|
{
|
715
871
|
"key": "integrity_check",
|
716
872
|
"title": "Test Integrity Checks",
|
717
873
|
"caption": "OTG-BUSLOGIC-003, WAHHM - Test for Logic Flaws",
|
718
|
-
"description": "
|
719
|
-
"tools": "Burp
|
874
|
+
"description": "Validate data integrity across application components (inputs, databases, logs) by verifying expected data types, formats, and authorized modifications based on business logic. Attempt to inject invalid data and unauthorized operations.",
|
875
|
+
"tools": "Burp Suite, ZAP",
|
720
876
|
"vrt_category": "broken_access_control"
|
721
877
|
},
|
722
878
|
{
|
723
879
|
"key": "process_timing",
|
724
880
|
"title": "Test for Process Timing",
|
725
881
|
"caption": "OTG-BUSLOGIC-004, WAHHM - Test for Logic Flaws",
|
726
|
-
"description": "
|
727
|
-
"tools": "Burp
|
882
|
+
"description": "Exploit race conditions via timing attacks.",
|
883
|
+
"tools": "Burp Suite (Turbo Intruder), ZAP",
|
728
884
|
"vrt_category": "server_side_injection"
|
729
885
|
},
|
730
886
|
{
|
731
887
|
"key": "usage_limits",
|
732
888
|
"title": "Test Number of Times a Function Can be Used Limits",
|
733
889
|
"caption": "OTG-BUSLOGIC-005, WAHHM - Test for Logic Flaws",
|
734
|
-
"description": "
|
735
|
-
"tools": "Burp
|
890
|
+
"description": "Attempt to exceed defined rate limits on critical endpoints to verify proper implementation and resilience.",
|
891
|
+
"tools": "Burp Suite, ZAP",
|
736
892
|
"vrt_category": "broken_access_control"
|
737
893
|
},
|
738
894
|
{
|
739
895
|
"key": "workflow_circumvention",
|
740
896
|
"title": "Testing for the Circumvention of Work Flows",
|
741
897
|
"caption": "OTG-BUSLOGIC-006, WAHHM - Test for Logic Flaws",
|
742
|
-
"description": "
|
743
|
-
"tools": "Burp
|
898
|
+
"description": "Skip workflow steps (e.g., payment) for unauthorized access.",
|
899
|
+
"tools": "Burp Suite, ZAP",
|
744
900
|
"vrt_category": "broken_access_control"
|
745
901
|
},
|
746
902
|
{
|
747
903
|
"key": "application_misuse",
|
748
904
|
"title": "Test Defenses Against Application Mis-use",
|
749
905
|
"caption": "OTG-BUSLOGIC-007, WAHHM - Test for Logic Flaws",
|
750
|
-
"description": "
|
751
|
-
"tools": "Burp
|
906
|
+
"description": "Test for vulnerabilities allowing abuse of application functionality (e.g., excessive resource consumption, unintended workflows).",
|
907
|
+
"tools": "Burp Suite, ZAP"
|
752
908
|
},
|
753
909
|
{
|
754
910
|
"key": "upload_unexpected_files",
|
755
911
|
"title": "Test Upload of Unexpected File Types",
|
756
912
|
"caption": "OTG-BUSLOGIC-008, WAHHM - Test for Logic Flaws",
|
757
|
-
"description": "
|
758
|
-
"tools": "Burp
|
913
|
+
"description": "Test Upload of Unexpected File Types to assess the application's handling of non-standard file uploads and prevent potential security risks like remote code execution.",
|
914
|
+
"tools": "Burp Suite, curl, ZAP"
|
759
915
|
},
|
760
916
|
{
|
761
917
|
"key": "malicious_files",
|
762
918
|
"title": "Test Upload of Malicious Files",
|
763
919
|
"caption": "OTG-BUSLOGIC-009, WAHHM - Test for Logic Flaws",
|
764
|
-
"description": "
|
765
|
-
"tools": "Burp
|
920
|
+
"description": "Test Upload of Malicious Files to Assess Potential for Remote Code Execution, Data Exposure, or System Compromise.",
|
921
|
+
"tools": "Burp Suite, curl, ZAP",
|
922
|
+
"vrt_category": "server_security_misconfiguration"
|
923
|
+
},
|
924
|
+
{
|
925
|
+
"key": "exif_metadata",
|
926
|
+
"title": "Testing for Stripped EXIF Geolocation Metadata in Uploaded Images",
|
927
|
+
"caption": "",
|
928
|
+
"description": "Check uploaded images for unstripped EXIF metadata leaking sensitive data.",
|
929
|
+
"tools": "exiftool",
|
930
|
+
"vrt_category": "server_security_misconfiguration"
|
931
|
+
},
|
932
|
+
{
|
933
|
+
"key": "csv_injection",
|
934
|
+
"title": "Testing for CSV Injection",
|
935
|
+
"caption": "",
|
936
|
+
"description": "Check for formula injection vulnerabilities in CSV export functionality.",
|
937
|
+
"tools": "Burp Suite, ZAP",
|
938
|
+
"vrt_category": "server_security_misconfiguration"
|
939
|
+
},
|
940
|
+
{
|
941
|
+
"key": "password_requirement",
|
942
|
+
"title": "Testing for Lack of Password Confirmation",
|
943
|
+
"caption": "",
|
944
|
+
"description": "Verify absence of password confirmation prompts for sensitive actions: Account deletion, email change, password change, and 2FA management.",
|
945
|
+
"tools": "Browser, Burp Suite, ZAP",
|
766
946
|
"vrt_category": "server_security_misconfiguration"
|
767
947
|
}
|
768
948
|
]
|
@@ -775,97 +955,109 @@
|
|
775
955
|
"items": [
|
776
956
|
{
|
777
957
|
"key": "dom_based_xss",
|
778
|
-
"title": "Testing for DOM
|
958
|
+
"title": "Testing for DOM-based Cross-Site Scripting",
|
779
959
|
"caption": "OTG-CLIENT-001, WAHHM - Miscellaneous Tests",
|
780
|
-
"description": "
|
781
|
-
"tools": "Burp
|
960
|
+
"description": "Analyze client-side JavaScript for vulnerabilities where attacker-controlled data in the DOM can be manipulated to execute malicious scripts.",
|
961
|
+
"tools": "Browser, Burp Suite, DOMinator, ZAP",
|
782
962
|
"vrt_category": "cross_site_scripting_xss"
|
783
963
|
},
|
784
964
|
{
|
785
965
|
"key": "javascript_execution",
|
786
966
|
"title": "Testing for JavaScript Execution",
|
787
967
|
"caption": "OTG-CLIENT-002, WAHHM - Test Handling of Input",
|
788
|
-
"description": "
|
789
|
-
"tools": "Burp
|
968
|
+
"description": "Test for the ability to inject and execute malicious JavaScript.",
|
969
|
+
"tools": "Browser, Burp Suite, ZAP",
|
790
970
|
"vrt_category": "cross_site_scripting_xss"
|
791
971
|
},
|
792
972
|
{
|
793
973
|
"key": "html_injection",
|
794
974
|
"title": "Testing for HTML Injection",
|
795
975
|
"caption": "OTG-CLIENT-003, WAHHM - Test Handling of Input",
|
796
|
-
"description": "
|
797
|
-
"tools": "Burp
|
976
|
+
"description": "Check input fields and website areas for the ability to inject arbitrary HTML code.",
|
977
|
+
"tools": "Browser, Burp Suite, ZAP",
|
798
978
|
"vrt_category": "server_side_injection"
|
799
979
|
},
|
800
980
|
{
|
801
981
|
"key": "url_redirect",
|
802
|
-
"title": "Testing for Client
|
982
|
+
"title": "Testing for Client-Side URL Redirect",
|
803
983
|
"caption": "OTG-CLIENT-004, WAHHM - Test Handling of Input",
|
804
|
-
"description": "
|
805
|
-
"tools": "Burp
|
984
|
+
"description": "Analyze client-side code for manipulable redirect parameters that could lead to phishing or malicious site redirects.",
|
985
|
+
"tools": "Browser, Burp Suite, ZAP",
|
806
986
|
"vrt_category": "unvalidated_redirects_and_forwards"
|
807
987
|
},
|
808
988
|
{
|
809
989
|
"key": "css_injection",
|
810
990
|
"title": "Testing for CSS Injection",
|
811
991
|
"caption": "OTG-CLIENT-005, WAHHM - Test Handling of Input",
|
812
|
-
"description": "
|
813
|
-
"tools": "Burp
|
992
|
+
"description": "Analyze CSS handling for vulnerabilities allowing injection of malicious styles to alter page rendering or extract sensitive information.",
|
993
|
+
"tools": "Browser, Burp Suite, ZAP",
|
814
994
|
"vrt_category": "server_security_misconfiguration"
|
815
995
|
},
|
816
996
|
{
|
817
997
|
"key": "resource_manipulation",
|
818
998
|
"title": "Testing for Client Side Resource Manipulation",
|
819
999
|
"caption": "OTG-CLIENT-006, WAHHM - Test Handling of Input",
|
820
|
-
"description": "
|
821
|
-
"tools": "Burp
|
1000
|
+
"description": "Assess the application's resilience against attacks that involve manipulating client-side resources to achieve malicious outcomes.",
|
1001
|
+
"tools": "Browser, Burp Suite, ZAP",
|
822
1002
|
"vrt_category": "server_security_misconfiguration"
|
823
1003
|
},
|
824
1004
|
{
|
825
1005
|
"key": "cors",
|
826
|
-
"title": "
|
1006
|
+
"title": "Testing Cross-Origin Resource Sharing",
|
827
1007
|
"caption": "OTG-CLIENT-007, WAHHM - Miscellaneous Tests",
|
828
|
-
"description": "
|
829
|
-
"tools": "Burp
|
830
|
-
"vrt_category": "server_security_misconfiguration"
|
831
|
-
},
|
832
|
-
{
|
833
|
-
"key": "cross_site_flashing",
|
834
|
-
"title": "Testing for Cross Site Flashing",
|
835
|
-
"caption": "OTG-CLIENT-008, WAHHM - Test Handling of Input",
|
836
|
-
"description": "Decompile, Undefined variables, Unsafe methods, Include malicious SWF http://victim/file.swf?lang=http://evil",
|
837
|
-
"tools": "FlashBang, Flare, Flasm, SWFScan, SWF Intruder",
|
1008
|
+
"description": "Verify proper CORS configuration to prevent unauthorized cross-domain data access.",
|
1009
|
+
"tools": "Browser, Burp Suite, ZAP",
|
838
1010
|
"vrt_category": "server_security_misconfiguration"
|
839
1011
|
},
|
840
1012
|
{
|
841
1013
|
"key": "clickjacking",
|
842
1014
|
"title": "Testing for Clickjacking",
|
843
1015
|
"caption": "OTG-CLIENT-009, WAHHM - Miscellaneous Tests",
|
844
|
-
"description": "
|
845
|
-
"tools": "Burp
|
1016
|
+
"description": "Determine if the website implements sufficient client-side defenses (e.g., X-Frame-Options, Content-Security-Policy) to prevent rendering within a frame controlled by a malicious site.",
|
1017
|
+
"tools": "Browser, Burp Suite, ZAP",
|
846
1018
|
"vrt_category": "server_security_misconfiguration"
|
847
1019
|
},
|
848
1020
|
{
|
849
1021
|
"key": "web_sockets",
|
850
1022
|
"title": "Testing WebSockets",
|
851
1023
|
"caption": "OTG-CLIENT-010, WAHHM - Test Handling of Input",
|
852
|
-
"description": "
|
853
|
-
"tools": "Burp
|
1024
|
+
"description": "Check WebSocket endpoints by inspecting ws:// or wss:// URI scheme for proper authorization and data handling.",
|
1025
|
+
"tools": "Burp Suite, wscat, wssip, ZAP"
|
854
1026
|
},
|
855
1027
|
{
|
856
1028
|
"key": "web_messaging",
|
857
|
-
"title": "
|
1029
|
+
"title": "Testing Web Messaging",
|
858
1030
|
"caption": "OTG-CLIENT-011, WAHHM - Test Handling of Input",
|
859
|
-
"description": "
|
860
|
-
"tools": "Burp
|
1031
|
+
"description": "Evaluate JavaScript Web Messaging implementation, focusing on validation of origin restrictions and secure data processing, including trusted domains.",
|
1032
|
+
"tools": "Browser, Burp Suite, ZAP"
|
861
1033
|
},
|
862
1034
|
{
|
863
|
-
"key": "
|
864
|
-
"title": "
|
1035
|
+
"key": "browser_storage",
|
1036
|
+
"title": "Testing Browser Storage",
|
865
1037
|
"caption": "OTG-CLIENT-012, WAHHM - Miscellaneous Tests",
|
866
|
-
"
|
867
|
-
"
|
868
|
-
|
1038
|
+
"description": "Evaluate the secure implementation and appropriate use of browser storage mechanisms (LocalStorage, SessionStorage, IndexedDB, Cookies) to prevent unauthorized access and data leakage.",
|
1039
|
+
"tools": "Browser"
|
1040
|
+
},
|
1041
|
+
{
|
1042
|
+
"key": "script_inclusion",
|
1043
|
+
"title": "Testing for Cross-Site Script Inclusion",
|
1044
|
+
"caption": "OTG-CLIENT-013",
|
1045
|
+
"description": "Verify the application's resistance to the inclusion of malicious, externally hosted JavaScript code within its execution context.",
|
1046
|
+
"tools": "Browser, Burp Suite, ZAP"
|
1047
|
+
},
|
1048
|
+
{
|
1049
|
+
"key": "outdated_javascript",
|
1050
|
+
"title": "Testing for Outdated JavaScript Dependency",
|
1051
|
+
"caption": "",
|
1052
|
+
"description": "Identify and assess outdated JavaScript dependencies for known vulnerabilities.",
|
1053
|
+
"tools": "BuiltWith, retire.js, Wappalyzer"
|
1054
|
+
},
|
1055
|
+
{
|
1056
|
+
"key": "dependency_confusion",
|
1057
|
+
"title": "Testing for Dependency Confusion",
|
1058
|
+
"caption": "",
|
1059
|
+
"description": "Validate that the application's build process and package manager are configured to exclusively source internal dependencies from trusted, private registries, mitigating dependency confusion vulnerabilities.",
|
1060
|
+
"tools": "confused, gau, snync, waybackurls"
|
869
1061
|
}
|
870
1062
|
]
|
871
1063
|
},
|