n8n-nodes-soar 0.1.16 → 0.1.19
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/dist/common/asset.js +141 -0
- package/dist/common/collector.js +32 -0
- package/dist/common/connectionType.js +15 -0
- package/dist/common/executor/docker.executor.js +97 -0
- package/dist/common/executor/executor.js +48 -0
- package/dist/common/executor/k8s.executor.js +190 -0
- package/dist/common/runner/container.runner.js +174 -0
- package/dist/common/runner/priority.js +44 -0
- package/dist/common/runner/priority.runner.js +38 -0
- package/dist/common/runner/runner.js +57 -0
- package/dist/credentials/Docker/Docker.credentials.js +149 -0
- package/dist/credentials/Docker/docker.svg +7 -0
- package/dist/credentials/{FofaCredentials.credentials.js → FofaApi/FofaApi.credentials.js} +5 -5
- package/dist/credentials/Kubernetes/Kubernetes.credentials.js +82 -0
- package/dist/credentials/Kubernetes/k8s.svg +1 -0
- package/dist/nodes/Asset/SplitAsset/SplitAsset.node.js +110 -0
- package/dist/nodes/Asset/SplitAsset/split.svg +13 -0
- package/dist/nodes/Collector/Collector.node.js +123 -0
- package/dist/nodes/Executor/DockerExecutor/DockerExecutor.node.js +59 -0
- package/dist/nodes/Executor/DockerExecutor/docker.svg +7 -0
- package/dist/nodes/Executor/KubernetesExecutor/KubernetesExecutor.node.js +59 -0
- package/dist/nodes/Executor/KubernetesExecutor/k8s.svg +1 -0
- package/dist/nodes/Fofa/Fofa.node.js +20 -7
- package/dist/nodes/Katana/Katana.node.js +1 -1
- package/dist/nodes/Nuclei/Nuclei.node.js +1 -1
- package/dist/nodes/Runner/Dns/Dns.node.js +199 -0
- package/dist/nodes/Runner/Dns/script.js +81 -0
- package/dist/nodes/Runner/Httpx/Httpx.node.js +830 -0
- package/dist/nodes/Runner/Httpx/httpx.svg +3 -0
- package/dist/nodes/Runner/Katana/Katana.node.js +521 -0
- package/dist/nodes/Runner/Katana/a.json +30 -0
- package/dist/nodes/Runner/Katana/katana.svg +3 -0
- package/dist/nodes/Runner/Masscan/Masscan.node.js +151 -0
- package/dist/nodes/Runner/Masscan/masscan.svg +70 -0
- package/dist/nodes/{Naabu → Runner/Naabu}/Naabu.node.js +86 -48
- package/dist/nodes/Runner/Naabu/naabu.svg +3 -0
- package/dist/nodes/Runner/Nuclei/Nuclei.node.js +1057 -0
- package/dist/nodes/Runner/Nuclei/a.json +48 -0
- package/dist/nodes/Runner/Nuclei/nuclei.svg +3 -0
- package/dist/nodes/Runner/Priority/Priority.node.js +110 -0
- package/dist/nodes/Runner/PriorityAdd/PriorityAdd.node.js +97 -0
- package/dist/nodes/Runner/Router/SwitchRouter/SwitchRouter.node.js +101 -0
- package/dist/nodes/{Subfinder → Runner/Subfinder}/Subfinder.node.js +74 -43
- package/dist/nodes/Runner/Subfinder/subfinder.svg +3 -0
- package/dist/nodes/Runner/Unauthor/Unauthor.node.js +169 -0
- package/package.json +63 -59
- package/dist/nodes/Cdncheck/Cdncheck.node.json +0 -9
- package/dist/nodes/Fofa/Fofa.node.json +0 -9
- package/dist/nodes/Httpx/Httpx.node.json +0 -9
- package/dist/nodes/Naabu/Naabu.node.json +0 -9
- package/dist/nodes/Subfinder/Subfinder.node.json +0 -9
- package/dist/utils/executor.js +0 -233
- package/dist/utils/interface.js +0 -4
- package/dist/utils/runner/docker.runner.js +0 -72
- package/dist/utils/runner/k8s.runner.js +0 -167
- package/dist/utils/runner/runner.js +0 -11
- /package/dist/credentials/{fofa.svg → FofaApi/fofa.svg} +0 -0
@@ -0,0 +1,830 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "Httpx", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return Httpx;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
const _connectionType = require("../../../common/connectionType");
|
12
|
+
const _containerrunner = require("../../../common/runner/container.runner");
|
13
|
+
const _priority = require("../../../common/runner/priority");
|
14
|
+
function _define_property(obj, key, value) {
|
15
|
+
if (key in obj) {
|
16
|
+
Object.defineProperty(obj, key, {
|
17
|
+
value: value,
|
18
|
+
enumerable: true,
|
19
|
+
configurable: true,
|
20
|
+
writable: true
|
21
|
+
});
|
22
|
+
} else {
|
23
|
+
obj[key] = value;
|
24
|
+
}
|
25
|
+
return obj;
|
26
|
+
}
|
27
|
+
class HttpxRunner extends _containerrunner.ContainerRunner {
|
28
|
+
cmd(assets) {
|
29
|
+
const path = this.func.getNodeParameter("path", this.itemIndex);
|
30
|
+
return [
|
31
|
+
"httpx",
|
32
|
+
"-disable-update-check",
|
33
|
+
"-json",
|
34
|
+
"-silent",
|
35
|
+
"-target",
|
36
|
+
assets.map((a)=>`${a.getHostAndPort()}${path}`).join(","),
|
37
|
+
...this.collectGeneratedOptions([
|
38
|
+
"options.probes",
|
39
|
+
"options.headless",
|
40
|
+
"options.matchers",
|
41
|
+
"options.extractor",
|
42
|
+
"options.filters",
|
43
|
+
"options.rateLimit",
|
44
|
+
"options.miscellaneous",
|
45
|
+
"options.output",
|
46
|
+
"options.configurations",
|
47
|
+
"options.optimizations"
|
48
|
+
])
|
49
|
+
];
|
50
|
+
}
|
51
|
+
process(rawAssets, stdout) {
|
52
|
+
const path = this.func.getNodeParameter("path", this.itemIndex);
|
53
|
+
const result = new Map();
|
54
|
+
for (const line of stdout.trim().split("\n")){
|
55
|
+
const json = JSON.parse(line);
|
56
|
+
result.set(json.input, json);
|
57
|
+
}
|
58
|
+
return rawAssets.map((a)=>{
|
59
|
+
const response = result.get(`${a.getHostAndPort()}${path}`);
|
60
|
+
if (response) {
|
61
|
+
a.response = response;
|
62
|
+
a.success = true;
|
63
|
+
}
|
64
|
+
return a;
|
65
|
+
});
|
66
|
+
}
|
67
|
+
}
|
68
|
+
class Httpx {
|
69
|
+
async supplyData(itemIndex) {
|
70
|
+
return {
|
71
|
+
response: [
|
72
|
+
new HttpxRunner("httpx", _priority.APP_RUNNER_PRIORITY, this, itemIndex)
|
73
|
+
]
|
74
|
+
};
|
75
|
+
}
|
76
|
+
constructor(){
|
77
|
+
_define_property(this, "description", {
|
78
|
+
displayName: "Runner: Httpx",
|
79
|
+
name: "httpx",
|
80
|
+
icon: "file:httpx.svg",
|
81
|
+
group: [
|
82
|
+
"transform"
|
83
|
+
],
|
84
|
+
version: 1,
|
85
|
+
codex: {
|
86
|
+
alias: [
|
87
|
+
"Httpx"
|
88
|
+
],
|
89
|
+
categories: [
|
90
|
+
"SOAR"
|
91
|
+
],
|
92
|
+
subcategories: {
|
93
|
+
SOAR: [
|
94
|
+
"runner"
|
95
|
+
]
|
96
|
+
},
|
97
|
+
resources: {
|
98
|
+
primaryDocumentation: [
|
99
|
+
{
|
100
|
+
url: "https://github.com/projectdiscovery/httpx"
|
101
|
+
}
|
102
|
+
]
|
103
|
+
}
|
104
|
+
},
|
105
|
+
description: "Interact with Httpx",
|
106
|
+
defaults: {
|
107
|
+
name: "Httpx"
|
108
|
+
},
|
109
|
+
// eslint-disable-next-line n8n-nodes-base/node-class-description-inputs-wrong-regular-node
|
110
|
+
inputs: [],
|
111
|
+
// eslint-disable-next-line n8n-nodes-base/node-class-description-outputs-wrong
|
112
|
+
outputs: [
|
113
|
+
_connectionType.NodeConnectionType.Runner
|
114
|
+
],
|
115
|
+
properties: [
|
116
|
+
{
|
117
|
+
displayName: "Only Success",
|
118
|
+
name: "onlySuccess",
|
119
|
+
type: "boolean",
|
120
|
+
default: true
|
121
|
+
},
|
122
|
+
{
|
123
|
+
displayName: "Path",
|
124
|
+
name: "path",
|
125
|
+
type: "string",
|
126
|
+
default: "/"
|
127
|
+
},
|
128
|
+
{
|
129
|
+
displayName: "Method",
|
130
|
+
name: "method",
|
131
|
+
type: "options",
|
132
|
+
default: "GET",
|
133
|
+
options: [
|
134
|
+
{
|
135
|
+
name: "GET",
|
136
|
+
value: "GET"
|
137
|
+
},
|
138
|
+
{
|
139
|
+
name: "POST",
|
140
|
+
value: "POST"
|
141
|
+
},
|
142
|
+
{
|
143
|
+
name: "PUT",
|
144
|
+
value: "PUT"
|
145
|
+
},
|
146
|
+
{
|
147
|
+
name: "DELETE",
|
148
|
+
value: "DELETE"
|
149
|
+
},
|
150
|
+
{
|
151
|
+
name: "HEAD",
|
152
|
+
value: "HEAD"
|
153
|
+
},
|
154
|
+
{
|
155
|
+
name: "OPTIONS",
|
156
|
+
value: "OPTIONS"
|
157
|
+
},
|
158
|
+
{
|
159
|
+
name: "PATCH",
|
160
|
+
value: "PATCH"
|
161
|
+
},
|
162
|
+
{
|
163
|
+
name: "TRACE",
|
164
|
+
value: "TRACE"
|
165
|
+
}
|
166
|
+
]
|
167
|
+
},
|
168
|
+
{
|
169
|
+
displayName: "Options",
|
170
|
+
name: "options",
|
171
|
+
type: "fixedCollection",
|
172
|
+
default: {},
|
173
|
+
typeOptions: {
|
174
|
+
multipleValues: true
|
175
|
+
},
|
176
|
+
options: [
|
177
|
+
{
|
178
|
+
displayName: "Probes",
|
179
|
+
name: "probes",
|
180
|
+
values: [
|
181
|
+
{
|
182
|
+
displayName: "Options",
|
183
|
+
name: "key",
|
184
|
+
type: "options",
|
185
|
+
default: "-asn",
|
186
|
+
options: [
|
187
|
+
{
|
188
|
+
name: "Asn",
|
189
|
+
value: "-asn",
|
190
|
+
description: "Display host asn information"
|
191
|
+
},
|
192
|
+
{
|
193
|
+
name: "CDN",
|
194
|
+
value: "-cdn",
|
195
|
+
description: "Display cdn in use"
|
196
|
+
},
|
197
|
+
{
|
198
|
+
name: "Cname",
|
199
|
+
value: "-cname",
|
200
|
+
description: "Display host cname"
|
201
|
+
},
|
202
|
+
{
|
203
|
+
name: "Content Length",
|
204
|
+
value: "-content-length",
|
205
|
+
description: "Display response content-length"
|
206
|
+
},
|
207
|
+
{
|
208
|
+
name: "Content Type",
|
209
|
+
value: "-content-type",
|
210
|
+
description: "Display response content-type"
|
211
|
+
},
|
212
|
+
{
|
213
|
+
name: "Favicon",
|
214
|
+
value: "-favicon",
|
215
|
+
description: "Display mmh3 hash for '/favicon.ico' file"
|
216
|
+
},
|
217
|
+
{
|
218
|
+
name: "Hash",
|
219
|
+
value: "-hash",
|
220
|
+
description: "Display response body hash (supported: md5,mmh3,simhash,sha1,sha256,sha512) (string)"
|
221
|
+
},
|
222
|
+
{
|
223
|
+
name: "IP",
|
224
|
+
value: "-ip",
|
225
|
+
description: "Display host ip"
|
226
|
+
},
|
227
|
+
{
|
228
|
+
name: "Jarm",
|
229
|
+
value: "-jarm",
|
230
|
+
description: "Display jarm fingerprint hash"
|
231
|
+
},
|
232
|
+
{
|
233
|
+
name: "Line Count",
|
234
|
+
value: "-line-count",
|
235
|
+
description: "Display response body line count"
|
236
|
+
},
|
237
|
+
{
|
238
|
+
name: "Location",
|
239
|
+
value: "-location",
|
240
|
+
description: "Display response redirect location"
|
241
|
+
},
|
242
|
+
{
|
243
|
+
name: "Method",
|
244
|
+
value: "-method",
|
245
|
+
description: "Display http request method"
|
246
|
+
},
|
247
|
+
{
|
248
|
+
name: "Probe",
|
249
|
+
value: "-probe",
|
250
|
+
description: "Display probe status"
|
251
|
+
},
|
252
|
+
{
|
253
|
+
name: "Response Time",
|
254
|
+
value: "-response-time",
|
255
|
+
description: "Display response time"
|
256
|
+
},
|
257
|
+
{
|
258
|
+
name: "Status Code",
|
259
|
+
value: "-status-code",
|
260
|
+
description: "Display response status-code"
|
261
|
+
},
|
262
|
+
{
|
263
|
+
name: "Tech Detect",
|
264
|
+
value: "-tech-detect",
|
265
|
+
description: "Display technology in use based on wappalyzer dataset"
|
266
|
+
},
|
267
|
+
{
|
268
|
+
name: "Title",
|
269
|
+
value: "-title",
|
270
|
+
description: "Display page title"
|
271
|
+
},
|
272
|
+
{
|
273
|
+
name: "Web Server",
|
274
|
+
value: "-web-server",
|
275
|
+
description: "Display server name"
|
276
|
+
},
|
277
|
+
{
|
278
|
+
name: "Websocket",
|
279
|
+
value: "-websocket",
|
280
|
+
description: "Display server using websocket"
|
281
|
+
},
|
282
|
+
{
|
283
|
+
name: "Word Count",
|
284
|
+
value: "-word-count",
|
285
|
+
description: "Display response body word count"
|
286
|
+
}
|
287
|
+
]
|
288
|
+
},
|
289
|
+
{
|
290
|
+
displayName: "Value",
|
291
|
+
name: "value",
|
292
|
+
type: "string",
|
293
|
+
default: ""
|
294
|
+
}
|
295
|
+
]
|
296
|
+
},
|
297
|
+
{
|
298
|
+
displayName: "Headless",
|
299
|
+
name: "headless",
|
300
|
+
values: [
|
301
|
+
{
|
302
|
+
displayName: "Options",
|
303
|
+
name: "key",
|
304
|
+
type: "options",
|
305
|
+
default: "-screenshot",
|
306
|
+
options: [
|
307
|
+
{
|
308
|
+
name: "Screenshot",
|
309
|
+
value: "-screenshot",
|
310
|
+
description: "Enable saving screenshot of the page using headless browser"
|
311
|
+
},
|
312
|
+
{
|
313
|
+
name: "System Chrome",
|
314
|
+
value: "-system-chrome",
|
315
|
+
description: "Enable using local installed chrome for screenshot"
|
316
|
+
}
|
317
|
+
]
|
318
|
+
}
|
319
|
+
]
|
320
|
+
},
|
321
|
+
{
|
322
|
+
displayName: "Matchers",
|
323
|
+
name: "matchers",
|
324
|
+
values: [
|
325
|
+
{
|
326
|
+
displayName: "Options",
|
327
|
+
name: "key",
|
328
|
+
type: "options",
|
329
|
+
default: "-match-cdn",
|
330
|
+
options: [
|
331
|
+
{
|
332
|
+
name: "Match CDN",
|
333
|
+
value: "-match-cdn",
|
334
|
+
description: "Match host with specified cdn provider (stackpath, cloudfront, fastly, google, leaseweb) (string[])"
|
335
|
+
},
|
336
|
+
{
|
337
|
+
name: "Match Code",
|
338
|
+
value: "-match-code",
|
339
|
+
description: "Match response with specified status code (-mc 200,302) (string)"
|
340
|
+
},
|
341
|
+
{
|
342
|
+
name: "Match Condition",
|
343
|
+
value: "-match-condition",
|
344
|
+
description: "Match response with dsl expression condition (string)"
|
345
|
+
},
|
346
|
+
{
|
347
|
+
name: "Match Favicon",
|
348
|
+
value: "-match-favicon",
|
349
|
+
description: "Match response with specified favicon hash (-mfc 1494302000) (string[])"
|
350
|
+
},
|
351
|
+
{
|
352
|
+
name: "Match Length",
|
353
|
+
value: "-match-length",
|
354
|
+
description: "Match response with specified content length (-ml 100,102) (string)"
|
355
|
+
},
|
356
|
+
{
|
357
|
+
name: "Match Line Count",
|
358
|
+
value: "-match-line-count",
|
359
|
+
description: "Match response body with specified line count (-mlc 423,532) (string)"
|
360
|
+
},
|
361
|
+
{
|
362
|
+
name: "Match Regex",
|
363
|
+
value: "-match-regex",
|
364
|
+
description: "Match response with specified regex (-mr admin) (string)"
|
365
|
+
},
|
366
|
+
{
|
367
|
+
name: "Match Response Time",
|
368
|
+
value: "-match-response-time",
|
369
|
+
description: "Match response with specified response time in seconds (-mrt '< 1') (string)"
|
370
|
+
},
|
371
|
+
{
|
372
|
+
name: "Match String",
|
373
|
+
value: "-match-string",
|
374
|
+
description: "Match response with specified string (-ms admin) (string)"
|
375
|
+
},
|
376
|
+
{
|
377
|
+
name: "Match Word Count",
|
378
|
+
value: "-match-word-count",
|
379
|
+
description: "Match response body with specified word count (-mwc 43,55) (string)"
|
380
|
+
}
|
381
|
+
]
|
382
|
+
},
|
383
|
+
{
|
384
|
+
displayName: "Value",
|
385
|
+
name: "value",
|
386
|
+
type: "string",
|
387
|
+
default: ""
|
388
|
+
}
|
389
|
+
]
|
390
|
+
},
|
391
|
+
{
|
392
|
+
displayName: "Extractor",
|
393
|
+
name: "extractor",
|
394
|
+
values: [
|
395
|
+
{
|
396
|
+
displayName: "Options",
|
397
|
+
name: "key",
|
398
|
+
type: "options",
|
399
|
+
default: "-extract-regex",
|
400
|
+
options: [
|
401
|
+
{
|
402
|
+
name: "Extract Regex",
|
403
|
+
value: "-extract-regex",
|
404
|
+
description: "Display response content with matched regex (string[])"
|
405
|
+
},
|
406
|
+
{
|
407
|
+
name: "Extract Preset",
|
408
|
+
value: "-extract-preset",
|
409
|
+
description: "Display response content matched by a pre-defined regex (ipv4,mail,URL) (string[])"
|
410
|
+
}
|
411
|
+
]
|
412
|
+
},
|
413
|
+
{
|
414
|
+
displayName: "Value",
|
415
|
+
name: "value",
|
416
|
+
type: "string",
|
417
|
+
default: ""
|
418
|
+
}
|
419
|
+
]
|
420
|
+
},
|
421
|
+
{
|
422
|
+
displayName: "Filters",
|
423
|
+
name: "filters",
|
424
|
+
values: [
|
425
|
+
{
|
426
|
+
displayName: "Options",
|
427
|
+
name: "key",
|
428
|
+
type: "options",
|
429
|
+
default: "-filter-cdn",
|
430
|
+
options: [
|
431
|
+
{
|
432
|
+
name: "Filter CDN",
|
433
|
+
value: "-filter-cdn",
|
434
|
+
description: "Filter host with specified cdn provider (stackpath, cloudfront, fastly, google, leaseweb) (string[])"
|
435
|
+
},
|
436
|
+
{
|
437
|
+
name: "Filter Code",
|
438
|
+
value: "-filter-code",
|
439
|
+
description: "Filter response with specified status code (-fc 403,401) (string)"
|
440
|
+
},
|
441
|
+
{
|
442
|
+
name: "Filter Condition",
|
443
|
+
value: "-filter-condition",
|
444
|
+
description: "Filter response with dsl expression condition (string)"
|
445
|
+
},
|
446
|
+
{
|
447
|
+
name: "Filter Error Page",
|
448
|
+
value: "-filter-error-page",
|
449
|
+
description: "Filter response with ML based error page detection"
|
450
|
+
},
|
451
|
+
{
|
452
|
+
name: "Filter Favicon",
|
453
|
+
value: "-filter-favicon",
|
454
|
+
description: "Filter response with specified favicon hash (-mfc 1494302000) (string[])"
|
455
|
+
},
|
456
|
+
{
|
457
|
+
name: "Filter Length",
|
458
|
+
value: "-filter-length",
|
459
|
+
description: "Filter response with specified content length (-fl 23,33) (string)"
|
460
|
+
},
|
461
|
+
{
|
462
|
+
name: "Filter Line Count",
|
463
|
+
value: "-filter-line-count",
|
464
|
+
description: "Filter response body with specified line count (-flc 423,532) (string)"
|
465
|
+
},
|
466
|
+
{
|
467
|
+
name: "Filter Regex",
|
468
|
+
value: "-filter-regex",
|
469
|
+
description: "Filter response with specified regex (-fe admin) (string)"
|
470
|
+
},
|
471
|
+
{
|
472
|
+
name: "Filter Response Time",
|
473
|
+
value: "-filter-response-time",
|
474
|
+
description: "Filter response with specified response time in seconds (-frt '> 1') (string)"
|
475
|
+
},
|
476
|
+
{
|
477
|
+
name: "Filter String",
|
478
|
+
value: "-filter-string",
|
479
|
+
description: "Filter response with specified string (-fs admin) (string)"
|
480
|
+
},
|
481
|
+
{
|
482
|
+
name: "Filter Word Count",
|
483
|
+
value: "-filter-word-count",
|
484
|
+
description: "Filter response body with specified word count (-fwc 423,532) (string)"
|
485
|
+
}
|
486
|
+
]
|
487
|
+
},
|
488
|
+
{
|
489
|
+
displayName: "Value",
|
490
|
+
name: "value",
|
491
|
+
type: "string",
|
492
|
+
default: ""
|
493
|
+
}
|
494
|
+
]
|
495
|
+
},
|
496
|
+
{
|
497
|
+
displayName: "Rate Limit",
|
498
|
+
name: "rateLimit",
|
499
|
+
values: [
|
500
|
+
{
|
501
|
+
displayName: "Options",
|
502
|
+
name: "key",
|
503
|
+
type: "options",
|
504
|
+
default: "-threads",
|
505
|
+
options: [
|
506
|
+
{
|
507
|
+
name: "Threads",
|
508
|
+
value: "-threads",
|
509
|
+
description: "Number of threads to use (default 50) (int)"
|
510
|
+
},
|
511
|
+
{
|
512
|
+
name: "Rate Limit",
|
513
|
+
value: "-rate-limit",
|
514
|
+
description: "Maximum requests to send per second (default 150) (int)"
|
515
|
+
},
|
516
|
+
{
|
517
|
+
name: "Rate Limit Minute",
|
518
|
+
value: "-rate-limit-minute",
|
519
|
+
description: "Maximum number of requests to send per minute (int)"
|
520
|
+
}
|
521
|
+
]
|
522
|
+
},
|
523
|
+
{
|
524
|
+
displayName: "Value",
|
525
|
+
name: "value",
|
526
|
+
type: "string",
|
527
|
+
default: ""
|
528
|
+
}
|
529
|
+
]
|
530
|
+
},
|
531
|
+
{
|
532
|
+
displayName: "Miscellaneous",
|
533
|
+
name: "miscellaneous",
|
534
|
+
values: [
|
535
|
+
{
|
536
|
+
displayName: "Options",
|
537
|
+
name: "key",
|
538
|
+
type: "options",
|
539
|
+
default: "-csp-probe",
|
540
|
+
options: [
|
541
|
+
{
|
542
|
+
name: "Csp Probe",
|
543
|
+
value: "-csp-probe",
|
544
|
+
description: "Send http probes on the extracted CSP domains"
|
545
|
+
},
|
546
|
+
{
|
547
|
+
name: "Http2",
|
548
|
+
value: "-http2",
|
549
|
+
description: "Probe and display server supporting HTTP2"
|
550
|
+
},
|
551
|
+
{
|
552
|
+
name: "List Dsl Variables",
|
553
|
+
value: "-list-dsl-variables",
|
554
|
+
description: "List JSON output field keys name that support dsl matcher/filter"
|
555
|
+
},
|
556
|
+
{
|
557
|
+
name: "Path",
|
558
|
+
value: "-path",
|
559
|
+
description: "Path or list of paths to probe (comma-separated, file) (string)"
|
560
|
+
},
|
561
|
+
{
|
562
|
+
name: "PIPeline",
|
563
|
+
value: "-pipeline",
|
564
|
+
description: "Probe and display server supporting HTTP1.1 pipeline"
|
565
|
+
},
|
566
|
+
{
|
567
|
+
name: "Ports",
|
568
|
+
value: "-ports",
|
569
|
+
description: "Ports to probe (nmap syntax: eg http:1,2-10,11,https:80) (string[])"
|
570
|
+
},
|
571
|
+
{
|
572
|
+
name: "Probe All IPs",
|
573
|
+
value: "-probe-all-ips",
|
574
|
+
description: "Probe all the ips associated with same host"
|
575
|
+
},
|
576
|
+
{
|
577
|
+
name: "Tls Grab",
|
578
|
+
value: "-tls-grab",
|
579
|
+
description: "Perform TLS(SSL) data grabbing"
|
580
|
+
},
|
581
|
+
{
|
582
|
+
name: "Tls Probe",
|
583
|
+
value: "-tls-probe",
|
584
|
+
description: "Send http probes on the extracted TLS domains (dns_name)"
|
585
|
+
},
|
586
|
+
{
|
587
|
+
name: "Vhost",
|
588
|
+
value: "-vhost",
|
589
|
+
description: "Probe and display server supporting VHOST"
|
590
|
+
}
|
591
|
+
]
|
592
|
+
},
|
593
|
+
{
|
594
|
+
displayName: "Value",
|
595
|
+
name: "value",
|
596
|
+
type: "string",
|
597
|
+
default: ""
|
598
|
+
}
|
599
|
+
]
|
600
|
+
},
|
601
|
+
{
|
602
|
+
displayName: "Output",
|
603
|
+
name: "output",
|
604
|
+
values: [
|
605
|
+
{
|
606
|
+
displayName: "Options",
|
607
|
+
name: "key",
|
608
|
+
type: "options",
|
609
|
+
default: "-include-response",
|
610
|
+
options: [
|
611
|
+
{
|
612
|
+
name: "Include Response",
|
613
|
+
value: "-include-response",
|
614
|
+
description: "Include http request/response in JSON output (-JSON only)"
|
615
|
+
},
|
616
|
+
{
|
617
|
+
name: "Include Response Base64",
|
618
|
+
value: "-include-response-base64",
|
619
|
+
description: "Include base64 encoded http request/response in JSON output (-JSON only)"
|
620
|
+
},
|
621
|
+
{
|
622
|
+
name: "Include Chain",
|
623
|
+
value: "-include-chain",
|
624
|
+
description: "Include redirect http chain in JSON output (-JSON only)"
|
625
|
+
}
|
626
|
+
]
|
627
|
+
}
|
628
|
+
]
|
629
|
+
},
|
630
|
+
{
|
631
|
+
displayName: "Configurations",
|
632
|
+
name: "configurations",
|
633
|
+
values: [
|
634
|
+
{
|
635
|
+
displayName: "Options",
|
636
|
+
name: "key",
|
637
|
+
type: "options",
|
638
|
+
default: "-allow",
|
639
|
+
options: [
|
640
|
+
{
|
641
|
+
name: "Allow",
|
642
|
+
value: "-allow",
|
643
|
+
description: "Allowed list of IP/CIDR's to process (file or comma-separated) (string[])"
|
644
|
+
},
|
645
|
+
{
|
646
|
+
name: "Body",
|
647
|
+
value: "-body",
|
648
|
+
description: "Post body to include in http request (string)"
|
649
|
+
},
|
650
|
+
{
|
651
|
+
name: "Config",
|
652
|
+
value: "-config",
|
653
|
+
description: "Path to the httpx configuration file (default $HOME/.config/httpx/config.yaml) (string)"
|
654
|
+
},
|
655
|
+
{
|
656
|
+
name: "Deny",
|
657
|
+
value: "-deny",
|
658
|
+
description: "Denied list of IP/CIDR's to process (file or comma-separated) (string[])"
|
659
|
+
},
|
660
|
+
{
|
661
|
+
name: "Follow Host Redirects",
|
662
|
+
value: "-follow-host-redirects",
|
663
|
+
description: "Follow redirects on the same host"
|
664
|
+
},
|
665
|
+
{
|
666
|
+
name: "Follow Redirects",
|
667
|
+
value: "-follow-redirects",
|
668
|
+
description: "Follow http redirects"
|
669
|
+
},
|
670
|
+
{
|
671
|
+
name: "Header",
|
672
|
+
value: "-header",
|
673
|
+
description: "Custom http headers to send with request (string[])"
|
674
|
+
},
|
675
|
+
{
|
676
|
+
name: "Http Proxy",
|
677
|
+
value: "-http-proxy",
|
678
|
+
description: "Http proxy to use (eg http://127.0.0.1:8080) (string)"
|
679
|
+
},
|
680
|
+
{
|
681
|
+
name: "Leave Default Ports",
|
682
|
+
value: "-leave-default-ports",
|
683
|
+
description: "Leave default http/https ports in host header (eg. http://host:80 - https://host:443."
|
684
|
+
},
|
685
|
+
{
|
686
|
+
name: "Max Redirects",
|
687
|
+
value: "-max-redirects",
|
688
|
+
description: "Max number of redirects to follow per host (default 10) (int)"
|
689
|
+
},
|
690
|
+
{
|
691
|
+
name: "No Decode",
|
692
|
+
value: "-no-decode",
|
693
|
+
description: "Avoid decoding body"
|
694
|
+
},
|
695
|
+
{
|
696
|
+
name: "No Stdin",
|
697
|
+
value: "-no-stdin",
|
698
|
+
description: "Disable Stdin processing"
|
699
|
+
},
|
700
|
+
{
|
701
|
+
name: "Random Agent",
|
702
|
+
value: "-random-agent",
|
703
|
+
description: "Enable Random User-Agent to use (default true)"
|
704
|
+
},
|
705
|
+
{
|
706
|
+
name: "Resolvers",
|
707
|
+
value: "-resolvers",
|
708
|
+
description: "List of custom resolver (file or comma-separated) (string[])"
|
709
|
+
},
|
710
|
+
{
|
711
|
+
name: "Resume",
|
712
|
+
value: "-resume",
|
713
|
+
description: "Resume scan using resume.cfg"
|
714
|
+
},
|
715
|
+
{
|
716
|
+
name: "SkIP Dedupe",
|
717
|
+
value: "-skip-dedupe",
|
718
|
+
description: "Disable dedupe input items (only used with stream mode)"
|
719
|
+
},
|
720
|
+
{
|
721
|
+
name: "Sni Name",
|
722
|
+
value: "-sni-name",
|
723
|
+
description: "Custom TLS SNI name (string)"
|
724
|
+
},
|
725
|
+
{
|
726
|
+
name: "Stream",
|
727
|
+
value: "-stream",
|
728
|
+
description: "Stream mode - start elaborating input targets without sorting"
|
729
|
+
},
|
730
|
+
{
|
731
|
+
name: "Tls Impersonate",
|
732
|
+
value: "-tls-impersonate",
|
733
|
+
description: "Enable experimental client hello (ja3) tls randomization"
|
734
|
+
},
|
735
|
+
{
|
736
|
+
name: "Unsafe",
|
737
|
+
value: "-unsafe",
|
738
|
+
description: "Send raw requests skipping golang normalization"
|
739
|
+
},
|
740
|
+
{
|
741
|
+
name: "Vhost Input",
|
742
|
+
value: "-vhost-input",
|
743
|
+
description: "Get a list of vhosts as input"
|
744
|
+
},
|
745
|
+
{
|
746
|
+
name: "Ztls",
|
747
|
+
value: "-ztls",
|
748
|
+
description: "Use ztls library with autofallback to standard one for tls13"
|
749
|
+
}
|
750
|
+
]
|
751
|
+
},
|
752
|
+
{
|
753
|
+
displayName: "Value",
|
754
|
+
name: "value",
|
755
|
+
type: "string",
|
756
|
+
default: ""
|
757
|
+
}
|
758
|
+
]
|
759
|
+
},
|
760
|
+
{
|
761
|
+
displayName: "Optimizations",
|
762
|
+
name: "optimizations",
|
763
|
+
values: [
|
764
|
+
{
|
765
|
+
displayName: "Options",
|
766
|
+
name: "key",
|
767
|
+
type: "options",
|
768
|
+
default: "-delay",
|
769
|
+
options: [
|
770
|
+
{
|
771
|
+
name: "Delay",
|
772
|
+
value: "-delay",
|
773
|
+
description: "Duration between each http request (eg: 200ms, 1s) (default -1ns) (value)"
|
774
|
+
},
|
775
|
+
{
|
776
|
+
name: "Exclude CDN",
|
777
|
+
value: "-exclude-cdn",
|
778
|
+
description: "Skip full port scans for CDNs (only checks for 80,443)"
|
779
|
+
},
|
780
|
+
{
|
781
|
+
name: "Max Host Error",
|
782
|
+
value: "-max-host-error",
|
783
|
+
description: "Max error count per host before skipping remaining path/s (default 30) (int)"
|
784
|
+
},
|
785
|
+
{
|
786
|
+
name: "No Fallback",
|
787
|
+
value: "-no-fallback",
|
788
|
+
description: "Display both probed protocol (HTTPS and HTTP)"
|
789
|
+
},
|
790
|
+
{
|
791
|
+
name: "No Fallback Scheme",
|
792
|
+
value: "-no-fallback-scheme",
|
793
|
+
description: "Probe with protocol scheme specified in input"
|
794
|
+
},
|
795
|
+
{
|
796
|
+
name: "Response Size To Read",
|
797
|
+
value: "-response-size-to-read",
|
798
|
+
description: "Max response size to read in bytes (default 2147483647) (int)"
|
799
|
+
},
|
800
|
+
{
|
801
|
+
name: "Response Size To Save",
|
802
|
+
value: "-response-size-to-save",
|
803
|
+
description: "Max response size to save in bytes (default 2147483647) (int)"
|
804
|
+
},
|
805
|
+
{
|
806
|
+
name: "Retries",
|
807
|
+
value: "-retries",
|
808
|
+
description: "Number of retries (int)"
|
809
|
+
},
|
810
|
+
{
|
811
|
+
name: "Timeout",
|
812
|
+
value: "-timeout",
|
813
|
+
description: "Timeout in seconds (default 10) (int)"
|
814
|
+
}
|
815
|
+
]
|
816
|
+
},
|
817
|
+
{
|
818
|
+
displayName: "Value",
|
819
|
+
name: "value",
|
820
|
+
type: "string",
|
821
|
+
default: ""
|
822
|
+
}
|
823
|
+
]
|
824
|
+
}
|
825
|
+
]
|
826
|
+
}
|
827
|
+
]
|
828
|
+
});
|
829
|
+
}
|
830
|
+
}
|