@voidagency/web-scanner 0.0.1
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.
- package/README.md +198 -0
- package/dist/aggregator.d.ts +65 -0
- package/dist/aggregator.d.ts.map +1 -0
- package/dist/aggregator.js +546 -0
- package/dist/aggregator.js.map +1 -0
- package/dist/categories.d.ts +59 -0
- package/dist/categories.d.ts.map +1 -0
- package/dist/categories.js +278 -0
- package/dist/categories.js.map +1 -0
- package/dist/cli.d.ts +12 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +457 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +19 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +121 -0
- package/dist/config.js.map +1 -0
- package/dist/coverage.d.ts +49 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/coverage.js +165 -0
- package/dist/coverage.js.map +1 -0
- package/dist/enrichers/nvd.d.ts +55 -0
- package/dist/enrichers/nvd.d.ts.map +1 -0
- package/dist/enrichers/nvd.js +326 -0
- package/dist/enrichers/nvd.js.map +1 -0
- package/dist/report.d.ts +12 -0
- package/dist/report.d.ts.map +1 -0
- package/dist/report.js +460 -0
- package/dist/report.js.map +1 -0
- package/dist/runners/nuclei.d.ts +59 -0
- package/dist/runners/nuclei.d.ts.map +1 -0
- package/dist/runners/nuclei.js +531 -0
- package/dist/runners/nuclei.js.map +1 -0
- package/dist/runners/testssl.d.ts +16 -0
- package/dist/runners/testssl.d.ts.map +1 -0
- package/dist/runners/testssl.js +179 -0
- package/dist/runners/testssl.js.map +1 -0
- package/dist/runners/zap.d.ts +30 -0
- package/dist/runners/zap.d.ts.map +1 -0
- package/dist/runners/zap.js +389 -0
- package/dist/runners/zap.js.map +1 -0
- package/dist/types.d.ts +172 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/package.json +54 -0
- package/templates/drupal-api-index-exposed.yaml +81 -0
- package/templates/drupal-api-user-detail.yaml +76 -0
- package/templates/drupal-api-user-listing.yaml +59 -0
- package/templates/drupal-dev-files-exposed.yaml +73 -0
- package/templates/drupal-file-path-disclosure.yaml +59 -0
- package/templates/drupal-files-listing.yaml +63 -0
- package/templates/drupal-install-error-disclosure.yaml +62 -0
- package/templates/drupal-theme-lockfiles.yaml +79 -0
- package/templates/drupal-version-detect.yaml +89 -0
- package/templates/http-options-enabled.yaml +56 -0
- package/templates/nextjs-version-detect.yaml +35 -0
- package/templates/php-version-detect.yaml +37 -0
- package/zap.yaml +33 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Test Categories Configuration
|
|
3
|
+
* Maps scanner tags to human-readable test categories
|
|
4
|
+
* Used to track test coverage and show "Nothing found" results
|
|
5
|
+
*
|
|
6
|
+
* Supports both ZAP (primary) and Nuclei (supplementary)
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Define all test categories
|
|
10
|
+
* Order matters - this is how they'll appear in the report
|
|
11
|
+
*
|
|
12
|
+
* ZAP Plugin IDs reference:
|
|
13
|
+
* - 10003: Vulnerable JS Library (Retire.js)
|
|
14
|
+
* - 10038: CSP Header Not Set
|
|
15
|
+
* - 10020: Missing X-Frame-Options
|
|
16
|
+
* - 10035: Strict-Transport-Security Not Set
|
|
17
|
+
* - 10021: X-Content-Type-Options Missing
|
|
18
|
+
* - 10098: Cross-Domain Misconfiguration (CORS)
|
|
19
|
+
* - 10202: Absence of Anti-CSRF Tokens
|
|
20
|
+
* - 90003: Sub Resource Integrity Missing
|
|
21
|
+
* - 10037: X-Powered-By Information Leak
|
|
22
|
+
* - 10036: Server Version Leak
|
|
23
|
+
* - 10027: Information Disclosure - Suspicious Comments
|
|
24
|
+
* - 10031: User Controllable HTML Attribute (XSS hint)
|
|
25
|
+
* - 10017: Cross-Domain JavaScript Source
|
|
26
|
+
*/
|
|
27
|
+
export const TEST_CATEGORIES = [
|
|
28
|
+
// Vulnerable Components (ZAP primary) - Most specific first
|
|
29
|
+
{
|
|
30
|
+
id: 'js-libraries',
|
|
31
|
+
name: 'JavaScript Library CVEs',
|
|
32
|
+
description: 'Vulnerable JavaScript libraries (jQuery, Bootstrap, etc.)',
|
|
33
|
+
tags: ['js-library', 'outdated-component'],
|
|
34
|
+
sources: ['zap'],
|
|
35
|
+
zapPluginIds: ['10003'],
|
|
36
|
+
},
|
|
37
|
+
// Security Headers (ZAP + Nuclei) - Remove broad "misconfig" tag
|
|
38
|
+
{
|
|
39
|
+
id: 'security-headers',
|
|
40
|
+
name: 'Security Headers',
|
|
41
|
+
description: 'HTTP security headers like HSTS, CSP, X-Frame-Options, X-Content-Type-Options',
|
|
42
|
+
tags: ['header', 'headers', 'csp', 'hsts', 'clickjacking', 'x-frame-options', 'x-content-type'],
|
|
43
|
+
templatePatterns: ['*-header*', '*security-header*'],
|
|
44
|
+
sources: ['zap', 'nuclei'],
|
|
45
|
+
zapPluginIds: ['10038', '10020', '10035', '10021', '10063'],
|
|
46
|
+
},
|
|
47
|
+
// CORS (ZAP + Nuclei)
|
|
48
|
+
{
|
|
49
|
+
id: 'cors',
|
|
50
|
+
name: 'CORS Misconfiguration',
|
|
51
|
+
description: 'Cross-Origin Resource Sharing misconfigurations',
|
|
52
|
+
tags: ['cors', 'cross-domain'],
|
|
53
|
+
templatePatterns: ['*cors*'],
|
|
54
|
+
sources: ['zap', 'nuclei'],
|
|
55
|
+
zapPluginIds: ['10098'],
|
|
56
|
+
},
|
|
57
|
+
// CSRF (ZAP primary)
|
|
58
|
+
{
|
|
59
|
+
id: 'csrf',
|
|
60
|
+
name: 'Cross-Site Request Forgery',
|
|
61
|
+
description: 'Missing Anti-CSRF tokens in forms',
|
|
62
|
+
tags: ['csrf'],
|
|
63
|
+
templatePatterns: ['*csrf*'],
|
|
64
|
+
sources: ['zap'],
|
|
65
|
+
zapPluginIds: ['10202'],
|
|
66
|
+
},
|
|
67
|
+
// SRI (ZAP primary)
|
|
68
|
+
{
|
|
69
|
+
id: 'sri',
|
|
70
|
+
name: 'Subresource Integrity',
|
|
71
|
+
description: 'External scripts missing integrity attribute',
|
|
72
|
+
tags: ['sri', 'integrity'],
|
|
73
|
+
sources: ['zap'],
|
|
74
|
+
zapPluginIds: ['90003'],
|
|
75
|
+
},
|
|
76
|
+
// Sensitive Files (Nuclei primary) - BEFORE info-disclosure to catch file exposures
|
|
77
|
+
{
|
|
78
|
+
id: 'sensitive-files',
|
|
79
|
+
name: 'Sensitive Files',
|
|
80
|
+
description: 'Backup files, config files (composer.json, .env), database dumps, lock files',
|
|
81
|
+
tags: ['backup', 'config', 'file', 'dev', 'lockfile', 'npm', 'yarn', 'theme'],
|
|
82
|
+
templatePatterns: ['*backup*', '*config*', '*.log', '*.bak', '*composer*', '*env*', '*lockfile*', '*-files-*', '*-dev-*'],
|
|
83
|
+
sources: ['nuclei'],
|
|
84
|
+
},
|
|
85
|
+
// Information Disclosure (Both) - More specific: version leaks, not file exposures
|
|
86
|
+
{
|
|
87
|
+
id: 'info-disclosure',
|
|
88
|
+
name: 'Information Disclosure',
|
|
89
|
+
description: 'Server version leaks, sensitive information in responses',
|
|
90
|
+
tags: ['disclosure', 'info-disclosure', 'version-leak'],
|
|
91
|
+
templatePatterns: ['*disclosure*'],
|
|
92
|
+
sources: ['zap', 'nuclei'],
|
|
93
|
+
zapPluginIds: ['10037', '10036', '10027', '10009'],
|
|
94
|
+
},
|
|
95
|
+
// XSS (ZAP hints + Nuclei)
|
|
96
|
+
{
|
|
97
|
+
id: 'xss',
|
|
98
|
+
name: 'Cross-Site Scripting (XSS)',
|
|
99
|
+
description: 'Reflected, stored, and DOM-based XSS',
|
|
100
|
+
tags: ['xss', 'user-input'],
|
|
101
|
+
templatePatterns: ['*xss*'],
|
|
102
|
+
sources: ['zap', 'nuclei'],
|
|
103
|
+
zapPluginIds: ['10031', '10110'],
|
|
104
|
+
},
|
|
105
|
+
// SSL/TLS (testssl.sh primary)
|
|
106
|
+
{
|
|
107
|
+
id: 'ssl-tls',
|
|
108
|
+
name: 'SSL/TLS Configuration',
|
|
109
|
+
description: 'Certificate validation, cipher suites, protocol versions',
|
|
110
|
+
tags: ['ssl', 'tls'],
|
|
111
|
+
templatePatterns: ['ssl-*', 'tls-*'],
|
|
112
|
+
sources: ['testssl'],
|
|
113
|
+
},
|
|
114
|
+
// Untrusted Certificates (testssl.sh)
|
|
115
|
+
{
|
|
116
|
+
id: 'untrusted-certs',
|
|
117
|
+
name: 'Untrusted Certificates',
|
|
118
|
+
description: 'Self-signed, expired, or untrusted SSL certificates',
|
|
119
|
+
tags: ['certificate', 'cert', 'untrusted'],
|
|
120
|
+
templatePatterns: ['*certificate*', '*cert-*'],
|
|
121
|
+
sources: ['testssl'],
|
|
122
|
+
},
|
|
123
|
+
// HTTP Debug Methods
|
|
124
|
+
{
|
|
125
|
+
id: 'http-methods',
|
|
126
|
+
name: 'HTTP Debug Methods',
|
|
127
|
+
description: 'Dangerous HTTP methods like TRACE, DEBUG, OPTIONS enabled',
|
|
128
|
+
tags: ['http', 'options', 'trace', 'debug', 'methods'],
|
|
129
|
+
templatePatterns: ['*http-options*', '*http-trace*', '*http-debug*', '*http-method*'],
|
|
130
|
+
sources: ['nuclei'],
|
|
131
|
+
},
|
|
132
|
+
// Client Access Policies
|
|
133
|
+
{
|
|
134
|
+
id: 'client-access',
|
|
135
|
+
name: 'Client Access Policies',
|
|
136
|
+
description: 'Flash crossdomain.xml and Silverlight clientaccesspolicy.xml files',
|
|
137
|
+
tags: ['crossdomain', 'clientaccess', 'flash', 'silverlight'],
|
|
138
|
+
templatePatterns: ['*crossdomain*', '*clientaccess*', '*flash-*'],
|
|
139
|
+
sources: ['nuclei'],
|
|
140
|
+
},
|
|
141
|
+
// Admin Panels (Nuclei primary)
|
|
142
|
+
{
|
|
143
|
+
id: 'admin-panels',
|
|
144
|
+
name: 'Administration Consoles',
|
|
145
|
+
description: 'Exposed admin panels, login pages, management interfaces',
|
|
146
|
+
tags: ['panel', 'login', 'admin'],
|
|
147
|
+
templatePatterns: ['*-panel', '*-login', '*admin*'],
|
|
148
|
+
sources: ['nuclei'],
|
|
149
|
+
},
|
|
150
|
+
// Directory Listing
|
|
151
|
+
{
|
|
152
|
+
id: 'directory-listing',
|
|
153
|
+
name: 'Directory Listing',
|
|
154
|
+
description: 'Directories with listing enabled',
|
|
155
|
+
tags: ['listing'],
|
|
156
|
+
templatePatterns: ['*directory-listing*', '*dir-listing*'],
|
|
157
|
+
sources: ['nuclei'],
|
|
158
|
+
},
|
|
159
|
+
// Technology Detection (Both)
|
|
160
|
+
{
|
|
161
|
+
id: 'tech-detection',
|
|
162
|
+
name: 'Software Identification',
|
|
163
|
+
description: 'Server software, frameworks, CMS detection',
|
|
164
|
+
tags: ['tech', 'detect', 'technologies', 'discovery', 'version'],
|
|
165
|
+
templatePatterns: ['*-detect', '*version-detect*'],
|
|
166
|
+
sources: ['zap', 'nuclei'],
|
|
167
|
+
},
|
|
168
|
+
// GraphQL Endpoints (Nuclei)
|
|
169
|
+
{
|
|
170
|
+
id: 'graphql',
|
|
171
|
+
name: 'GraphQL Endpoints',
|
|
172
|
+
description: 'GraphQL endpoints and introspection',
|
|
173
|
+
tags: ['graphql'],
|
|
174
|
+
templatePatterns: ['*graphql*'],
|
|
175
|
+
sources: ['nuclei'],
|
|
176
|
+
},
|
|
177
|
+
// API Endpoints (Nuclei primary)
|
|
178
|
+
{
|
|
179
|
+
id: 'api-endpoints',
|
|
180
|
+
name: 'API Endpoints',
|
|
181
|
+
description: 'REST APIs, Swagger/OpenAPI documentation',
|
|
182
|
+
tags: ['api', 'swagger', 'openapi', 'rest'],
|
|
183
|
+
templatePatterns: ['*swagger*', '*openapi*', '*api-*'],
|
|
184
|
+
sources: ['nuclei'],
|
|
185
|
+
},
|
|
186
|
+
// SQL Injection (Nuclei)
|
|
187
|
+
{
|
|
188
|
+
id: 'sqli',
|
|
189
|
+
name: 'SQL Injection',
|
|
190
|
+
description: 'SQL injection vulnerabilities',
|
|
191
|
+
tags: ['sqli', 'sql'],
|
|
192
|
+
templatePatterns: ['*sqli*', '*sql-injection*'],
|
|
193
|
+
sources: ['nuclei'],
|
|
194
|
+
},
|
|
195
|
+
// LFI/Path Traversal
|
|
196
|
+
{
|
|
197
|
+
id: 'lfi',
|
|
198
|
+
name: 'Local File Inclusion',
|
|
199
|
+
description: 'LFI and path traversal vulnerabilities',
|
|
200
|
+
tags: ['lfi', 'traversal'],
|
|
201
|
+
templatePatterns: ['*lfi*', '*traversal*'],
|
|
202
|
+
sources: ['nuclei'],
|
|
203
|
+
},
|
|
204
|
+
// RCE
|
|
205
|
+
{
|
|
206
|
+
id: 'rce',
|
|
207
|
+
name: 'Command Injection',
|
|
208
|
+
description: 'OS command injection, RCE vulnerabilities',
|
|
209
|
+
tags: ['rce', 'command-injection'],
|
|
210
|
+
templatePatterns: ['*rce*', '*command*'],
|
|
211
|
+
sources: ['nuclei'],
|
|
212
|
+
},
|
|
213
|
+
// SSRF
|
|
214
|
+
{
|
|
215
|
+
id: 'ssrf',
|
|
216
|
+
name: 'Server-Side Request Forgery',
|
|
217
|
+
description: 'SSRF vulnerabilities',
|
|
218
|
+
tags: ['ssrf'],
|
|
219
|
+
templatePatterns: ['*ssrf*'],
|
|
220
|
+
sources: ['nuclei'],
|
|
221
|
+
},
|
|
222
|
+
// Open Redirect
|
|
223
|
+
{
|
|
224
|
+
id: 'redirect',
|
|
225
|
+
name: 'Open Redirect',
|
|
226
|
+
description: 'Open redirect vulnerabilities',
|
|
227
|
+
tags: ['redirect'],
|
|
228
|
+
templatePatterns: ['*redirect*'],
|
|
229
|
+
sources: ['zap', 'nuclei'],
|
|
230
|
+
zapPluginIds: ['10044'],
|
|
231
|
+
},
|
|
232
|
+
// CVE-based (Both)
|
|
233
|
+
{
|
|
234
|
+
id: 'known-cves',
|
|
235
|
+
name: 'Known Vulnerabilities (CVEs)',
|
|
236
|
+
description: 'CVE-based vulnerability checks',
|
|
237
|
+
tags: ['cve'],
|
|
238
|
+
templatePatterns: ['CVE-*', 'cve-*'],
|
|
239
|
+
sources: ['zap', 'nuclei', 'nvd'],
|
|
240
|
+
},
|
|
241
|
+
];
|
|
242
|
+
/**
|
|
243
|
+
* Match a finding to categories based on tags and template ID
|
|
244
|
+
*/
|
|
245
|
+
export function matchCategories(templateId, tags = []) {
|
|
246
|
+
const matchedCategories = [];
|
|
247
|
+
const lowerTags = new Set(tags.map(t => t.toLowerCase()));
|
|
248
|
+
const lowerTemplateId = templateId.toLowerCase();
|
|
249
|
+
for (const category of TEST_CATEGORIES) {
|
|
250
|
+
// Check tag match
|
|
251
|
+
const tagMatch = category.tags.some(catTag => lowerTags.has(catTag.toLowerCase()));
|
|
252
|
+
// Check template pattern match
|
|
253
|
+
let patternMatch = false;
|
|
254
|
+
if (category.templatePatterns) {
|
|
255
|
+
patternMatch = category.templatePatterns.some(pattern => {
|
|
256
|
+
const regex = new RegExp(pattern.replaceAll('*', '.*').replaceAll('?', '.'), 'i');
|
|
257
|
+
return regex.test(lowerTemplateId);
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
if (tagMatch || patternMatch) {
|
|
261
|
+
matchedCategories.push(category.id);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return matchedCategories;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Get category by ID
|
|
268
|
+
*/
|
|
269
|
+
export function getCategoryById(id) {
|
|
270
|
+
return TEST_CATEGORIES.find(c => c.id === id);
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Get all category IDs
|
|
274
|
+
*/
|
|
275
|
+
export function getAllCategoryIds() {
|
|
276
|
+
return TEST_CATEGORIES.map(c => c.id);
|
|
277
|
+
}
|
|
278
|
+
//# sourceMappingURL=categories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"categories.js","sourceRoot":"","sources":["../src/categories.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* VoidSec Scanner CLI
|
|
4
|
+
* Security scanning orchestrator
|
|
5
|
+
*
|
|
6
|
+
* Architecture:
|
|
7
|
+
* - ZAP (primary): JS CVEs, Headers, CORS, CSRF, XSS hints
|
|
8
|
+
* - Nuclei (supplementary): CMS detection, exposed files, takeovers
|
|
9
|
+
* - testssl.sh: SSL/TLS analysis
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
|