@remnux/mcp-server 0.1.17 → 0.1.18
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 +46 -6
- package/dist/analysis/index.d.ts +5 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +5 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/analysis/summarizer.d.ts +99 -0
- package/dist/analysis/summarizer.d.ts.map +1 -0
- package/dist/analysis/summarizer.js +154 -0
- package/dist/analysis/summarizer.js.map +1 -0
- package/dist/handlers/analyze-file.d.ts.map +1 -1
- package/dist/handlers/analyze-file.js +133 -9
- package/dist/handlers/analyze-file.js.map +1 -1
- package/dist/handlers/suggest-tools.d.ts.map +1 -1
- package/dist/handlers/suggest-tools.js +0 -1
- package/dist/handlers/suggest-tools.js.map +1 -1
- package/dist/parsers/capa.d.ts.map +1 -1
- package/dist/parsers/capa.js +11 -0
- package/dist/parsers/capa.js.map +1 -1
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +0 -12
- package/dist/tools/definitions.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -144,7 +144,11 @@ claude mcp add remnux -- npx @remnux/mcp-server --mode=docker --container=remnux
|
|
|
144
144
|
**With a VM (SSH):**
|
|
145
145
|
|
|
146
146
|
```bash
|
|
147
|
-
#
|
|
147
|
+
# Key-based auth via SSH agent (default) — ensure your key is loaded:
|
|
148
|
+
# ssh-add ~/.ssh/your_key
|
|
149
|
+
claude mcp add remnux -- npx @remnux/mcp-server --mode=ssh --host=YOUR_VM_IP --user=remnux
|
|
150
|
+
|
|
151
|
+
# Password auth
|
|
148
152
|
claude mcp add remnux -- npx @remnux/mcp-server --mode=ssh --host=YOUR_VM_IP --user=remnux --password=YOUR_PASSWORD
|
|
149
153
|
```
|
|
150
154
|
|
|
@@ -430,14 +434,50 @@ claude mcp add remnux --transport http http://REMNUX_IP:3000/mcp \
|
|
|
430
434
|
|
|
431
435
|
**Depth tiers:**
|
|
432
436
|
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
|
436
|
-
|
|
437
|
-
| `
|
|
437
|
+
The `depth` parameter controls which tools run during analysis. Higher tiers include all tools from lower tiers.
|
|
438
|
+
|
|
439
|
+
| Tier | Purpose | When to Use |
|
|
440
|
+
|------|---------|-------------|
|
|
441
|
+
| `quick` | Fast triage (~15 tools) | Initial assessment, bulk processing, time-sensitive analysis |
|
|
442
|
+
| `standard` | Comprehensive analysis (~60 tools) | Default — thorough analysis with reasonable time |
|
|
443
|
+
| `deep` | Maximum coverage (~78 tools) | Deep-dive investigation, packed/obfuscated samples |
|
|
444
|
+
|
|
445
|
+
**Tools by tier and file type:**
|
|
446
|
+
|
|
447
|
+
| File Type | Quick | Standard (adds) | Deep (adds) |
|
|
448
|
+
|-----------|-------|-----------------|-------------|
|
|
449
|
+
| **PE/DLL** | peframe, diec, strings, ssdeep | capa, floss, portex, pescan, manalyze, signsrch, yara-rules, upx, 1768 | capa-vv, pedump, brxor, xor-kpa, disitool |
|
|
450
|
+
| **.NET** | peframe, diec | ilspycmd, capa | dotnetfile_dump |
|
|
451
|
+
| **PDF** | pdfid, pdfcop | pdf-parser, pdfextract, pdftool, pdfresurrect, qpdf, pdftk | peepdf-3, pdfdecompress |
|
|
452
|
+
| **Office (OLE2)** | oleid | olevba, oledump, pcodedmp, xlmdeobfuscator | — |
|
|
453
|
+
| **Office (OOXML)** | oleid | olevba, zipdump, xmldump | — |
|
|
454
|
+
| **RTF** | rtfdump | rtfobj | — |
|
|
455
|
+
| **ELF** | readelf-header | readelf-sections, capa | — |
|
|
456
|
+
| **JavaScript** | js-beautify | box-js | jstillery, spidermonkey |
|
|
457
|
+
| **VBScript** | decode-vbe | — | — |
|
|
458
|
+
| **JAR/Java** | — | cfr, jadx | — |
|
|
459
|
+
| **Python (.pyc)** | — | pycdc | — |
|
|
460
|
+
| **Email** | msgconvert | emldump | — |
|
|
461
|
+
| **Shellcode** | speakeasy-sc-x64/x86 | — | qltool-sc-x64/x86, tracesc |
|
|
462
|
+
| **PCAP** | tshark-conversations | tshark-http, tshark-dns, tshark-hierarchy | tshark-verbose |
|
|
463
|
+
| **Memory** | vol3-info, vol3-pslist | vol3-pstree, vol3-netscan, vol3-cmdline, vol3-filescan, vol3-dlllist, vol3-psscan, vol3-hivelist, vol3-linux-pslist | vol3-malfind, vol3-handles |
|
|
464
|
+
| **Fallback** | strings, ssdeep | exiftool, base64dump, xorsearch, yara-rules | sets |
|
|
465
|
+
|
|
466
|
+
**Tier selection guidance:**
|
|
467
|
+
- Use `quick` for initial triage or when processing many files — runs in seconds
|
|
468
|
+
- Use `standard` (default) for most investigations — balances thoroughness with time
|
|
469
|
+
- Use `deep` when standard analysis shows signs of packing, obfuscation, or encryption — adds brute-force deobfuscation and verbose output modes
|
|
438
470
|
|
|
439
471
|
**Output format:** Returns JSON with `detected_type`, `matched_category`, `depth`, `tools_run` (with output), `tools_failed`, and `tools_skipped`.
|
|
440
472
|
|
|
473
|
+
**Smart summarization:** When total tool output exceeds ~32KB, the response automatically switches to summary mode to prevent LLM context overflow. Summary mode includes:
|
|
474
|
+
- Key findings per tool (top 5 most informative lines)
|
|
475
|
+
- Full IOC extraction (preserved in full — high value, compact)
|
|
476
|
+
- Triage summary and suggested next steps
|
|
477
|
+
- Paths to saved full outputs for drill-down via `download_file`
|
|
478
|
+
|
|
479
|
+
The `mode` field indicates whether the response is `"full"` or `"summary"`. In summary mode, use `download_file` to retrieve complete tool outputs when needed.
|
|
480
|
+
|
|
441
481
|
**Supported file types:** PE/DLL, PDF, OLE2 Office (.doc/.xls/.ppt), OOXML (.docx/.xlsx/.pptx), RTF, ELF, JavaScript (.js/.hta/.wsf/.html), shell scripts/VBS/PowerShell (.sh/.vbs/.ps1/.bat), Python bytecode (.pyc), JAR, email (EML), Android APK, OneNote, PCAP/pcapng network captures. Unknown types get fallback tools (strings, exiftool, base64dump, xorsearch).
|
|
442
482
|
|
|
443
483
|
**Preprocessing:** Before running analysis tools, `analyze_file` checks for conditions that would prevent effective analysis and applies automatic fixes:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,eAAe,EACf,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/analysis/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,eAAe,EACf,eAAe,EACf,eAAe,GAGhB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Smart output summarization for analyze_file responses.
|
|
3
|
+
*
|
|
4
|
+
* When total output exceeds the budget, generates a summary with key findings
|
|
5
|
+
* per tool while preserving IOCs and providing paths to full outputs.
|
|
6
|
+
*/
|
|
7
|
+
import type { Finding } from "../parsers/types.js";
|
|
8
|
+
interface ToolRun {
|
|
9
|
+
name: string;
|
|
10
|
+
command: string;
|
|
11
|
+
output: string;
|
|
12
|
+
exit_code: number;
|
|
13
|
+
truncated?: boolean;
|
|
14
|
+
full_output_length?: number;
|
|
15
|
+
findings?: Finding[];
|
|
16
|
+
metadata?: Record<string, unknown>;
|
|
17
|
+
}
|
|
18
|
+
interface IOC {
|
|
19
|
+
type: string;
|
|
20
|
+
value: string;
|
|
21
|
+
context?: string;
|
|
22
|
+
confidence?: number;
|
|
23
|
+
}
|
|
24
|
+
interface IOCSummary {
|
|
25
|
+
total: number;
|
|
26
|
+
noise_filtered: number;
|
|
27
|
+
by_type: Record<string, number>;
|
|
28
|
+
truncated?: string[];
|
|
29
|
+
}
|
|
30
|
+
interface ToolFailed {
|
|
31
|
+
name: string;
|
|
32
|
+
command: string;
|
|
33
|
+
error: string;
|
|
34
|
+
}
|
|
35
|
+
interface ToolSkipped {
|
|
36
|
+
name: string;
|
|
37
|
+
command: string;
|
|
38
|
+
reason: string;
|
|
39
|
+
skip_type: "not_installed" | "not_applicable" | "requires_user_args";
|
|
40
|
+
}
|
|
41
|
+
interface PreprocessResult {
|
|
42
|
+
name: string;
|
|
43
|
+
description: string;
|
|
44
|
+
outputPath?: string;
|
|
45
|
+
error?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface ToolSummary {
|
|
48
|
+
name: string;
|
|
49
|
+
status: "findings" | "clean" | "error" | "timeout";
|
|
50
|
+
key_lines: string[];
|
|
51
|
+
finding_count?: number;
|
|
52
|
+
output_size: number;
|
|
53
|
+
saved_to?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface AnalysisSummary {
|
|
56
|
+
[key: string]: unknown;
|
|
57
|
+
mode: "summary";
|
|
58
|
+
file: string;
|
|
59
|
+
detected_type: string;
|
|
60
|
+
matched_category: string;
|
|
61
|
+
depth: string;
|
|
62
|
+
triage_summary: string;
|
|
63
|
+
preprocessing?: PreprocessResult[];
|
|
64
|
+
total_tools: number;
|
|
65
|
+
tools_with_findings: number;
|
|
66
|
+
tools: ToolSummary[];
|
|
67
|
+
tools_failed: ToolFailed[];
|
|
68
|
+
tools_skipped: ToolSkipped[];
|
|
69
|
+
iocs: IOC[];
|
|
70
|
+
ioc_summary: IOCSummary;
|
|
71
|
+
suggested_next_steps: string[];
|
|
72
|
+
full_output_hint: string;
|
|
73
|
+
analysis_guidance: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Determine if the combined tool output warrants summarization.
|
|
77
|
+
*/
|
|
78
|
+
export declare function shouldSummarize(toolsRun: ToolRun[]): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* Extract the most informative lines from tool output.
|
|
81
|
+
*
|
|
82
|
+
* Prioritizes lines with:
|
|
83
|
+
* - Findings/detections (contains "found", "detected", "match", "suspicious")
|
|
84
|
+
* - Errors/warnings
|
|
85
|
+
* - URLs, IPs, hashes
|
|
86
|
+
* - Capability names and indicators
|
|
87
|
+
*
|
|
88
|
+
* Avoids:
|
|
89
|
+
* - Banner/header lines (version info, separators)
|
|
90
|
+
* - Empty lines
|
|
91
|
+
* - Repetitive lines
|
|
92
|
+
*/
|
|
93
|
+
export declare function extractKeyLines(output: string, limit?: number): string[];
|
|
94
|
+
/**
|
|
95
|
+
* Generate a summarized analysis response.
|
|
96
|
+
*/
|
|
97
|
+
export declare function generateSummary(file: string, detectedType: string, category: string, depth: string, triageSummary: string, toolsRun: ToolRun[], toolsFailed: ToolFailed[], toolsSkipped: ToolSkipped[], preprocessResults: PreprocessResult[], iocs: IOC[], iocSummary: IOCSummary, nextSteps: string[], analysisGuidance: string): AnalysisSummary;
|
|
98
|
+
export {};
|
|
99
|
+
//# sourceMappingURL=summarizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summarizer.d.ts","sourceRoot":"","sources":["../../src/analysis/summarizer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,UAAU,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,eAAe,GAAG,gBAAgB,GAAG,oBAAoB,CAAC;CACtE;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACnD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,aAAa,EAAE,WAAW,EAAE,CAAC;IAC7B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,WAAW,EAAE,UAAU,CAAC;IACxB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAQD;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAG5D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAA+B,GAAG,MAAM,EAAE,CAgEhG;AAgBD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,OAAO,EAAE,EACnB,WAAW,EAAE,UAAU,EAAE,EACzB,YAAY,EAAE,WAAW,EAAE,EAC3B,iBAAiB,EAAE,gBAAgB,EAAE,EACrC,IAAI,EAAE,GAAG,EAAE,EACX,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EAAE,EACnB,gBAAgB,EAAE,MAAM,GACvB,eAAe,CA+CjB"}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Smart output summarization for analyze_file responses.
|
|
3
|
+
*
|
|
4
|
+
* When total output exceeds the budget, generates a summary with key findings
|
|
5
|
+
* per tool while preserving IOCs and providing paths to full outputs.
|
|
6
|
+
*/
|
|
7
|
+
/** Threshold in bytes above which we switch to summary mode */
|
|
8
|
+
const SUMMARY_THRESHOLD_BYTES = 32000;
|
|
9
|
+
/** Maximum key lines to extract per tool */
|
|
10
|
+
const MAX_KEY_LINES_PER_TOOL = 5;
|
|
11
|
+
/**
|
|
12
|
+
* Determine if the combined tool output warrants summarization.
|
|
13
|
+
*/
|
|
14
|
+
export function shouldSummarize(toolsRun) {
|
|
15
|
+
const total = toolsRun.reduce((sum, t) => sum + (t.output?.length || 0), 0);
|
|
16
|
+
return total > SUMMARY_THRESHOLD_BYTES;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Extract the most informative lines from tool output.
|
|
20
|
+
*
|
|
21
|
+
* Prioritizes lines with:
|
|
22
|
+
* - Findings/detections (contains "found", "detected", "match", "suspicious")
|
|
23
|
+
* - Errors/warnings
|
|
24
|
+
* - URLs, IPs, hashes
|
|
25
|
+
* - Capability names and indicators
|
|
26
|
+
*
|
|
27
|
+
* Avoids:
|
|
28
|
+
* - Banner/header lines (version info, separators)
|
|
29
|
+
* - Empty lines
|
|
30
|
+
* - Repetitive lines
|
|
31
|
+
*/
|
|
32
|
+
export function extractKeyLines(output, limit = MAX_KEY_LINES_PER_TOOL) {
|
|
33
|
+
if (!output || output.length === 0)
|
|
34
|
+
return [];
|
|
35
|
+
const lines = output.split("\n");
|
|
36
|
+
const scored = [];
|
|
37
|
+
const seen = new Set();
|
|
38
|
+
// Patterns that indicate informative content (weighted)
|
|
39
|
+
// NOTE: Using generic heuristics only, not malware-specific patterns
|
|
40
|
+
const highValuePatterns = [
|
|
41
|
+
/found|detected|match|suspicious|capability|indicator/i,
|
|
42
|
+
/\b(?:https?:\/\/|ftp:\/\/)[^\s]+/i,
|
|
43
|
+
/\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b/,
|
|
44
|
+
/\b[a-fA-F0-9]{32}\b|\b[a-fA-F0-9]{40}\b|\b[a-fA-F0-9]{64}\b/,
|
|
45
|
+
/error|warning|fail|exception/i,
|
|
46
|
+
/MITRE|ATT&CK|T\d{4}/i,
|
|
47
|
+
/risk|threat|anomaly|unusual|notable/i,
|
|
48
|
+
];
|
|
49
|
+
// Patterns that indicate noise (to deprioritize)
|
|
50
|
+
const noisePatterns = [
|
|
51
|
+
/^[-=_*]{3,}$/,
|
|
52
|
+
/^version|^copyright|^license|^\s*$/i,
|
|
53
|
+
/^usage:|^options:/i,
|
|
54
|
+
/^\s*\d+\s*$/,
|
|
55
|
+
/^#|^\/\//,
|
|
56
|
+
];
|
|
57
|
+
for (const rawLine of lines) {
|
|
58
|
+
const line = rawLine.trim();
|
|
59
|
+
if (!line || line.length < 5 || line.length > 500)
|
|
60
|
+
continue;
|
|
61
|
+
// Skip duplicates
|
|
62
|
+
const normalized = line.toLowerCase().replace(/\s+/g, " ");
|
|
63
|
+
if (seen.has(normalized))
|
|
64
|
+
continue;
|
|
65
|
+
seen.add(normalized);
|
|
66
|
+
// Calculate score
|
|
67
|
+
let score = 0;
|
|
68
|
+
// High-value patterns add points
|
|
69
|
+
for (const pattern of highValuePatterns) {
|
|
70
|
+
if (pattern.test(line))
|
|
71
|
+
score += 10;
|
|
72
|
+
}
|
|
73
|
+
// Noise patterns subtract points
|
|
74
|
+
for (const pattern of noisePatterns) {
|
|
75
|
+
if (pattern.test(line))
|
|
76
|
+
score -= 20;
|
|
77
|
+
}
|
|
78
|
+
// Lines with structured data (key: value) are often informative
|
|
79
|
+
if (/^[A-Za-z_][A-Za-z0-9_]*\s*[:=]\s*.+/.test(line))
|
|
80
|
+
score += 3;
|
|
81
|
+
// Lines mentioning specific counts or results
|
|
82
|
+
if (/\b\d+\s+(match|found|detect|hit|result)/i.test(line))
|
|
83
|
+
score += 5;
|
|
84
|
+
if (score > 0) {
|
|
85
|
+
scored.push({ line, score });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// Sort by score descending, take top N
|
|
89
|
+
scored.sort((a, b) => b.score - a.score);
|
|
90
|
+
return scored.slice(0, limit).map((s) => s.line);
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Determine the status of a tool run.
|
|
94
|
+
*/
|
|
95
|
+
function getToolStatus(tool) {
|
|
96
|
+
if (tool.exit_code !== 0) {
|
|
97
|
+
if (tool.output?.toLowerCase().includes("timeout"))
|
|
98
|
+
return "timeout";
|
|
99
|
+
// Some tools exit non-zero but still produce findings
|
|
100
|
+
if (tool.findings && tool.findings.length > 0)
|
|
101
|
+
return "findings";
|
|
102
|
+
return "error";
|
|
103
|
+
}
|
|
104
|
+
if (tool.findings && tool.findings.length > 0)
|
|
105
|
+
return "findings";
|
|
106
|
+
return "clean";
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Generate a summarized analysis response.
|
|
110
|
+
*/
|
|
111
|
+
export function generateSummary(file, detectedType, category, depth, triageSummary, toolsRun, toolsFailed, toolsSkipped, preprocessResults, iocs, iocSummary, nextSteps, analysisGuidance) {
|
|
112
|
+
const toolSummaries = [];
|
|
113
|
+
const savedFiles = [];
|
|
114
|
+
for (const tool of toolsRun) {
|
|
115
|
+
const status = getToolStatus(tool);
|
|
116
|
+
const keyLines = extractKeyLines(tool.output);
|
|
117
|
+
// Track which files were saved for full output retrieval
|
|
118
|
+
const savedMatch = tool.output?.match(/Full output: output\/([^\s\]]+)/);
|
|
119
|
+
const savedTo = savedMatch ? savedMatch[1] : undefined;
|
|
120
|
+
if (savedTo)
|
|
121
|
+
savedFiles.push(savedTo);
|
|
122
|
+
toolSummaries.push({
|
|
123
|
+
name: tool.name,
|
|
124
|
+
status,
|
|
125
|
+
key_lines: keyLines,
|
|
126
|
+
...(tool.findings && tool.findings.length > 0 && { finding_count: tool.findings.length }),
|
|
127
|
+
output_size: tool.output?.length || 0,
|
|
128
|
+
...(savedTo && { saved_to: savedTo }),
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
const toolsWithFindings = toolSummaries.filter((t) => t.status === "findings").length;
|
|
132
|
+
return {
|
|
133
|
+
mode: "summary",
|
|
134
|
+
file,
|
|
135
|
+
detected_type: detectedType,
|
|
136
|
+
matched_category: category,
|
|
137
|
+
depth,
|
|
138
|
+
triage_summary: triageSummary,
|
|
139
|
+
...(preprocessResults.length > 0 && { preprocessing: preprocessResults }),
|
|
140
|
+
total_tools: toolsRun.length,
|
|
141
|
+
tools_with_findings: toolsWithFindings,
|
|
142
|
+
tools: toolSummaries,
|
|
143
|
+
tools_failed: toolsFailed,
|
|
144
|
+
tools_skipped: toolsSkipped,
|
|
145
|
+
iocs,
|
|
146
|
+
ioc_summary: iocSummary,
|
|
147
|
+
suggested_next_steps: nextSteps,
|
|
148
|
+
full_output_hint: savedFiles.length > 0
|
|
149
|
+
? `Full tool outputs saved to output directory. Use download_file to retrieve: ${savedFiles.join(", ")}`
|
|
150
|
+
: "Use run_tool to re-run specific tools for full output.",
|
|
151
|
+
analysis_guidance: analysisGuidance,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=summarizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"summarizer.js","sourceRoot":"","sources":["../../src/analysis/summarizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-file.d.ts","sourceRoot":"","sources":["../../src/handlers/analyze-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze-file.d.ts","sourceRoot":"","sources":["../../src/handlers/analyze-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAoM3D,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,eAAe;;;;;;GAwTtB"}
|
|
@@ -9,6 +9,112 @@ import { toREMnuxError } from "../errors/error-mapper.js";
|
|
|
9
9
|
import { extractIOCs } from "../ioc/extractor.js";
|
|
10
10
|
import { filterStderrNoise } from "../utils/stderr-filter.js";
|
|
11
11
|
import { getPreprocessors } from "../tools/preprocessors.js";
|
|
12
|
+
import { shouldSummarize, generateSummary } from "../analysis/index.js";
|
|
13
|
+
/** Generate suggested next steps based on file category and analysis results */
|
|
14
|
+
function generateNextSteps(category, depth, toolsRun, toolsSkipped, iocCount) {
|
|
15
|
+
const steps = [];
|
|
16
|
+
// Depth-based suggestions
|
|
17
|
+
if (depth === "quick") {
|
|
18
|
+
steps.push("Run with depth='standard' for more thorough analysis (capa, floss, etc.)");
|
|
19
|
+
}
|
|
20
|
+
else if (depth === "standard") {
|
|
21
|
+
steps.push("Run with depth='deep' for exhaustive analysis including decompilation and XOR brute-force");
|
|
22
|
+
}
|
|
23
|
+
// Category-specific suggestions
|
|
24
|
+
switch (category) {
|
|
25
|
+
case "PE":
|
|
26
|
+
case "DOTNET":
|
|
27
|
+
if (!toolsRun.some(t => t.name === "capa" && t.findings && t.findings.length > 0)) {
|
|
28
|
+
steps.push("File may be packed — try unpacking with 'upx -d' or specialized unpackers before re-analysis");
|
|
29
|
+
}
|
|
30
|
+
steps.push("For dynamic analysis: use run_tool with 'speakeasy -t <file>' to emulate execution");
|
|
31
|
+
steps.push("Search for strings in specific sections: run_tool command='strings -a -n 8 <file>'");
|
|
32
|
+
break;
|
|
33
|
+
case "PDF":
|
|
34
|
+
steps.push("Extract suspicious objects: run_tool command='pdf-parser.py -o <obj_num> -d <file>'");
|
|
35
|
+
steps.push("Decode JavaScript streams: run_tool command='pdf-parser.py -o <obj_num> -f -d <file>'");
|
|
36
|
+
break;
|
|
37
|
+
case "OLE2":
|
|
38
|
+
case "OOXML":
|
|
39
|
+
steps.push("Extract specific macro streams: run_tool command='oledump.py -s <stream_num> -v <file>'");
|
|
40
|
+
steps.push("Decode VBA p-code for stomped macros: run_tool command='pcodedmp <file>'");
|
|
41
|
+
break;
|
|
42
|
+
case "Shellcode":
|
|
43
|
+
steps.push("Emulate 32-bit shellcode: run_tool command='speakeasy -t <file> -r -a x86'");
|
|
44
|
+
steps.push("Emulate 64-bit shellcode: run_tool command='speakeasy -t <file> -r -a amd64'");
|
|
45
|
+
break;
|
|
46
|
+
case "PCAP":
|
|
47
|
+
steps.push("Extract HTTP objects: run_tool command='tshark -r <file> --export-objects http,/tmp/http-objects'");
|
|
48
|
+
steps.push("Follow TCP stream: run_tool command='tshark -r <file> -z follow,tcp,ascii,0'");
|
|
49
|
+
break;
|
|
50
|
+
case "Memory":
|
|
51
|
+
steps.push("Dump suspicious process: run_tool command='vol3 -f <file> windows.memmap --pid <pid> --dump'");
|
|
52
|
+
steps.push("Extract injected code: run_tool command='vol3 -f <file> windows.malfind --dump'");
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
// IOC-based suggestions
|
|
56
|
+
if (iocCount > 0) {
|
|
57
|
+
steps.push("Extracted IOCs are in the 'iocs' field — consider threat intel lookup for network indicators");
|
|
58
|
+
}
|
|
59
|
+
// Tool-not-installed suggestions
|
|
60
|
+
const notInstalled = toolsSkipped.filter(t => t.skip_type === "not_installed");
|
|
61
|
+
if (notInstalled.length > 0) {
|
|
62
|
+
steps.push(`${notInstalled.length} tool(s) not installed — run check_tools to see installation status`);
|
|
63
|
+
}
|
|
64
|
+
return steps.slice(0, 5); // Limit to 5 most relevant suggestions
|
|
65
|
+
}
|
|
66
|
+
/** Generate a brief triage summary from analysis results */
|
|
67
|
+
function generateTriageSummary(category, toolsRun, iocCount) {
|
|
68
|
+
const findings = [];
|
|
69
|
+
// Count findings by severity
|
|
70
|
+
let highCount = 0;
|
|
71
|
+
let mediumCount = 0;
|
|
72
|
+
for (const tool of toolsRun) {
|
|
73
|
+
if (tool.findings) {
|
|
74
|
+
for (const f of tool.findings) {
|
|
75
|
+
if (f.severity === "high")
|
|
76
|
+
highCount++;
|
|
77
|
+
else if (f.severity === "medium")
|
|
78
|
+
mediumCount++;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// Check for specific indicators
|
|
83
|
+
const hasCapabilities = toolsRun.some(t => t.name === "capa" && t.findings && t.findings.length > 0);
|
|
84
|
+
const hasMacros = toolsRun.some(t => t.name === "olevba" && t.output && !t.output.includes("No VBA macros found"));
|
|
85
|
+
const hasPackerDetection = toolsRun.some(t => t.name === "diec" && t.output && /packer|protector|crypter/i.test(t.output));
|
|
86
|
+
const hasAnomaly = toolsRun.some(t => (t.name === "portex" || t.name === "pescan") && t.findings && t.findings.length > 0);
|
|
87
|
+
const hasYaraMatches = toolsRun.some(t => t.name === "yara-rules" && t.output && t.output.trim().length > 0 && !t.output.includes("No matches"));
|
|
88
|
+
// Detect shellcode loader/stub pattern: no imports + W+X section + low entropy
|
|
89
|
+
const hasNoImports = toolsRun.some(t => t.name === "yara-rules" && t.output?.includes("ImportTableIsBad"));
|
|
90
|
+
const hasWriteExecute = toolsRun.some(t => (t.name === "portex" || t.name === "pescan") &&
|
|
91
|
+
t.output && /write.*execute|self-modifying/i.test(t.output));
|
|
92
|
+
const hasLowEntropy = toolsRun.some(t => t.name === "portex" && t.output && /entropy[:\s]+0\.\d+/i.test(t.output));
|
|
93
|
+
const isShellcodeLoaderPattern = hasNoImports && hasWriteExecute && hasLowEntropy;
|
|
94
|
+
// Build summary
|
|
95
|
+
findings.push(`File type: ${category}`);
|
|
96
|
+
if (isShellcodeLoaderPattern)
|
|
97
|
+
findings.push("⚠️ Shellcode loader pattern (no imports + W+X section + low entropy)");
|
|
98
|
+
if (hasPackerDetection)
|
|
99
|
+
findings.push("Packer/protector detected");
|
|
100
|
+
if (hasAnomaly)
|
|
101
|
+
findings.push("PE anomalies detected");
|
|
102
|
+
if (hasCapabilities)
|
|
103
|
+
findings.push("Notable capabilities identified");
|
|
104
|
+
if (hasMacros)
|
|
105
|
+
findings.push("VBA macros present");
|
|
106
|
+
if (hasYaraMatches)
|
|
107
|
+
findings.push("YARA rules matched");
|
|
108
|
+
if (highCount > 0)
|
|
109
|
+
findings.push(`${highCount} high-severity finding(s)`);
|
|
110
|
+
else if (mediumCount > 0)
|
|
111
|
+
findings.push(`${mediumCount} medium-severity finding(s)`);
|
|
112
|
+
if (iocCount > 0)
|
|
113
|
+
findings.push(`${iocCount} IOC(s) extracted`);
|
|
114
|
+
const toolsSucceeded = toolsRun.length;
|
|
115
|
+
findings.push(`${toolsSucceeded} tool(s) completed`);
|
|
116
|
+
return findings.join(" | ");
|
|
117
|
+
}
|
|
12
118
|
const DEFAULT_OUTPUT_BUDGET = 40 * 1024; // 40KB default
|
|
13
119
|
const TOTAL_RESPONSE_BUDGET = 120 * 1024; // 120KB total across all tools
|
|
14
120
|
/** Per-tool output budgets — tools known to produce large output get tighter limits. */
|
|
@@ -127,6 +233,7 @@ export async function handleAnalyzeFile(deps, args) {
|
|
|
127
233
|
name: tool.name,
|
|
128
234
|
command: tool.command,
|
|
129
235
|
reason: "Requires user-supplied arguments (use run_tool manually)",
|
|
236
|
+
skip_type: "requires_user_args",
|
|
130
237
|
});
|
|
131
238
|
continue;
|
|
132
239
|
}
|
|
@@ -167,6 +274,7 @@ export async function handleAnalyzeFile(deps, args) {
|
|
|
167
274
|
name: tool.name,
|
|
168
275
|
command: cmd,
|
|
169
276
|
reason: hint,
|
|
277
|
+
skip_type: "not_applicable",
|
|
170
278
|
});
|
|
171
279
|
continue;
|
|
172
280
|
}
|
|
@@ -176,7 +284,12 @@ export async function handleAnalyzeFile(deps, args) {
|
|
|
176
284
|
/command not found/i.test(stderr) ||
|
|
177
285
|
(result.exitCode !== 0 && /^.*: No such file or directory$/m.test(stderr) && stderr.includes(tool.command));
|
|
178
286
|
if (isNotInstalled) {
|
|
179
|
-
toolsSkipped.push({
|
|
287
|
+
toolsSkipped.push({
|
|
288
|
+
name: tool.name,
|
|
289
|
+
command: cmd,
|
|
290
|
+
reason: "Tool not installed",
|
|
291
|
+
skip_type: "not_installed",
|
|
292
|
+
});
|
|
180
293
|
continue;
|
|
181
294
|
}
|
|
182
295
|
let output = result.stdout || stderr || "(no output)";
|
|
@@ -240,23 +353,34 @@ export async function handleAnalyzeFile(deps, args) {
|
|
|
240
353
|
if (ownHashes.size > 0) {
|
|
241
354
|
iocResult.iocs = iocResult.iocs.filter((ioc) => !ownHashes.has(ioc.value.toLowerCase()));
|
|
242
355
|
}
|
|
356
|
+
// Generate triage summary and next steps
|
|
357
|
+
const triageSummary = generateTriageSummary(category.name, toolsRun, iocResult.iocs.length);
|
|
358
|
+
const suggestedNextSteps = generateNextSteps(category.name, depth, toolsRun, toolsSkipped, iocResult.iocs.length);
|
|
359
|
+
const analysisGuidance = "IMPORTANT: Many capabilities flagged by analysis tools (API imports like GetProcAddress/VirtualProtect, " +
|
|
360
|
+
"memory operations, TLS sections, anti-debug patterns) are common in BOTH malware and legitimate software. " +
|
|
361
|
+
"Do not assume malicious intent from flagged items alone. For each finding, consider: " +
|
|
362
|
+
"(1) Is this expected for legitimate software of this type? " +
|
|
363
|
+
"(2) Do multiple findings together suggest malicious purpose, or are they individually " +
|
|
364
|
+
"explainable as normal development practices? " +
|
|
365
|
+
"(3) What concrete evidence distinguishes this from a benign program? " +
|
|
366
|
+
"State your confidence level (low/medium/high) and what evidence supports or contradicts a malicious verdict.";
|
|
367
|
+
// Check if output exceeds budget - return summary instead of full output
|
|
368
|
+
if (shouldSummarize(toolsRun)) {
|
|
369
|
+
const summary = generateSummary(args.file, fileOutput, category.name, depth, triageSummary, toolsRun, toolsFailed, toolsSkipped, preprocessResults, iocResult.iocs, iocResult.summary, suggestedNextSteps, analysisGuidance);
|
|
370
|
+
return formatResponse("analyze_file", summary, startTime);
|
|
371
|
+
}
|
|
243
372
|
return formatResponse("analyze_file", {
|
|
244
373
|
file: args.file,
|
|
245
374
|
detected_type: fileOutput,
|
|
246
375
|
matched_category: category.name,
|
|
247
376
|
depth,
|
|
377
|
+
triage_summary: triageSummary,
|
|
248
378
|
...(preprocessResults.length > 0 && { preprocessing: preprocessResults }),
|
|
249
|
-
analysis_guidance:
|
|
250
|
-
"memory operations, TLS sections, anti-debug patterns) are common in BOTH malware and legitimate software. " +
|
|
251
|
-
"Do not assume malicious intent from flagged items alone. For each finding, consider: " +
|
|
252
|
-
"(1) Is this expected for legitimate software of this type? " +
|
|
253
|
-
"(2) Do multiple findings together suggest malicious purpose, or are they individually " +
|
|
254
|
-
"explainable as normal development practices? " +
|
|
255
|
-
"(3) What concrete evidence distinguishes this from a benign program? " +
|
|
256
|
-
"State your confidence level (low/medium/high) and what evidence supports or contradicts a malicious verdict.",
|
|
379
|
+
analysis_guidance: analysisGuidance,
|
|
257
380
|
...(tools.length === 0 && {
|
|
258
381
|
warning: `No tools registered for category "${category.name}" at depth "${depth}". Try depth "deep" or use run_tool directly.`,
|
|
259
382
|
}),
|
|
383
|
+
suggested_next_steps: suggestedNextSteps,
|
|
260
384
|
iocs: iocResult.iocs,
|
|
261
385
|
ioc_summary: iocResult.summary,
|
|
262
386
|
tools_run: toolsRun,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-file.js","sourceRoot":"","sources":["../../src/handlers/analyze-file.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze-file.js","sourceRoot":"","sources":["../../src/handlers/analyze-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest-tools.d.ts","sourceRoot":"","sources":["../../src/handlers/suggest-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"suggest-tools.d.ts","sourceRoot":"","sources":["../../src/handlers/suggest-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AA0L5D,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,gBAAgB;;;;;;GA8FvB"}
|
|
@@ -78,7 +78,6 @@ const BASE_HINTS = {
|
|
|
78
78
|
"Use strings and exiftool for additional triage. " +
|
|
79
79
|
"OneNote files may contain embedded scripts, executables, or malicious attachments.",
|
|
80
80
|
Shellcode: "Raw shellcode detected. speakeasy emulates both x86 and x64 shellcode with Windows API emulation. " +
|
|
81
|
-
"scdbgc provides additional Win32 API call tracing for x86 shellcode. " +
|
|
82
81
|
"Look for resolved API names, network connections, file system access, and registry modifications in emulation output. " +
|
|
83
82
|
"For deep analysis, qltool (Qiling) provides multi-platform emulation and tracesc traces execution via Wine. " +
|
|
84
83
|
"Use strings and xorsearch for static indicators before emulation.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest-tools.js","sourceRoot":"","sources":["../../src/handlers/suggest-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D;;GAEG;AACH,MAAM,UAAU,GAA2B;IACzC,MAAM,EACJ,2EAA2E;QAC3E,2EAA2E;QAC3E,oFAAoF;QACpF,yCAAyC;QACzC,wEAAwE;IAC1E,EAAE,EACA,+EAA+E;QAC/E,6EAA6E;QAC7E,mFAAmF;QACnF,4EAA4E;QAC5E,wFAAwF;QACxF,yEAAyE;QACzE,0EAA0E;IAC5E,GAAG,EACD,6EAA6E;QAC7E,iFAAiF;QACjF,4EAA4E;QAC5E,oFAAoF;QACpF,2CAA2C;QAC3C,yEAAyE;QACzE,sFAAsF;QACtF,yFAAyF;QACzF,+CAA+C;QAC/C,kFAAkF;IACpF,IAAI,EACF,6EAA6E;QAC7E,iGAAiG;QACjG,gFAAgF;QAChF,8EAA8E;QAC9E,oEAAoE;QACpE,+CAA+C;IACjD,KAAK,EACH,uDAAuD;QACvD,kFAAkF;QAClF,+EAA+E;QAC/E,uEAAuE;QACvE,sFAAsF;IACxF,GAAG,EACD,mEAAmE;QACnE,oEAAoE;QACpE,uEAAuE;IACzE,GAAG,EACD,yDAAyD;QACzD,uEAAuE;QACvE,oEAAoE;QACpE,wEAAwE;IAC1E,UAAU,EACR,uEAAuE;QACvE,oEAAoE;QACpE,gFAAgF;QAChF,iEAAiE;QACjE,kFAAkF;QAClF,yFAAyF;QACzF,gEAAgE;IAClE,MAAM,EACJ,kEAAkE;QAClE,oDAAoD;QACpD,8FAA8F;QAC9F,wFAAwF;QACxF,oEAAoE;QACpE,4FAA4F;IAC9F,MAAM,EACJ,mEAAmE;QACnE,oFAAoF;QACpF,wEAAwE;IAC1E,GAAG,EACD,qEAAqE;QACrE,yEAAyE;QACzE,8CAA8C;IAChD,KAAK,EACH,2DAA2D;QAC3D,iFAAiF;QACjF,qEAAqE;QACrE,kEAAkE;IACpE,GAAG,EACD,8DAA8D;QAC9D,+FAA+F;QAC/F,4EAA4E;IAC9E,OAAO,EACL,4FAA4F;QAC5F,kDAAkD;QAClD,oFAAoF;IACtF,SAAS,EACP,oGAAoG;QACpG,
|
|
1
|
+
{"version":3,"file":"suggest-tools.js","sourceRoot":"","sources":["../../src/handlers/suggest-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capa.d.ts","sourceRoot":"","sources":["../../src/parsers/capa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAW,MAAM,YAAY,CAAC;AAE5D,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"capa.d.ts","sourceRoot":"","sources":["../../src/parsers/capa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAW,MAAM,YAAY,CAAC;AAE5D,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CA+DnE"}
|
package/dist/parsers/capa.js
CHANGED
|
@@ -46,6 +46,17 @@ export function parseCapaOutput(rawOutput) {
|
|
|
46
46
|
result.metadata.sample = data.meta.sample;
|
|
47
47
|
result.metadata.analysis = data.meta.analysis;
|
|
48
48
|
}
|
|
49
|
+
// Provide helpful context when no capabilities are found
|
|
50
|
+
if (result.findings.length === 0) {
|
|
51
|
+
result.metadata.no_findings_reason =
|
|
52
|
+
"No capabilities identified. This may occur when: " +
|
|
53
|
+
"(1) the file is packed/obfuscated and capa cannot analyze the unpacked code, " +
|
|
54
|
+
"(2) the file is a stub/loader with minimal functionality, " +
|
|
55
|
+
"(3) the file's behaviors don't match capa's rule set, or " +
|
|
56
|
+
"(4) the file format isn't fully supported. " +
|
|
57
|
+
"Consider: running a packer detector first (diec, yara), " +
|
|
58
|
+
"unpacking the sample, or using complementary tools like strings/floss.";
|
|
59
|
+
}
|
|
49
60
|
}
|
|
50
61
|
catch {
|
|
51
62
|
// JSON parse failed — return unparsed
|
package/dist/parsers/capa.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capa.js","sourceRoot":"","sources":["../../src/parsers/capa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,MAAM,MAAM,GAAqB;QAC/B,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,EAAE;QACZ,GAAG,EAAE,SAAS;KACf,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QAErB,6BAA6B;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBAChD,MAAM,CAAC,GAAG,IAA+B,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;gBACpB,MAAM,OAAO,GAAY;oBACvB,WAAW,EAAE,IAAI;oBACjB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,MAAM;iBACjB,CAAC;gBAEF,4DAA4D;gBAC5D,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7D,MAAM,CAAC,GAAG,IAA+B,CAAC;oBAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACnD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM;6BACxB,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC;6BACtE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC;6BACpD,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;gBAED,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC1C,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAChD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"capa.js","sourceRoot":"","sources":["../../src/parsers/capa.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,MAAM,MAAM,GAAqB;QAC/B,IAAI,EAAE,MAAM;QACZ,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,EAAE;QACZ,GAAG,EAAE,SAAS;KACf,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QAErB,6BAA6B;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBAChD,MAAM,CAAC,GAAG,IAA+B,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;gBACpB,MAAM,OAAO,GAAY;oBACvB,WAAW,EAAE,IAAI;oBACjB,QAAQ,EAAE,YAAY;oBACtB,QAAQ,EAAE,MAAM;iBACjB,CAAC;gBAEF,4DAA4D;gBAC5D,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7D,MAAM,CAAC,GAAG,IAA+B,CAAC;oBAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACnD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM;6BACxB,MAAM,CAAC,CAAC,CAAC,EAA+B,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,CAAC;6BACtE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC;6BACpD,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChB,CAAC;gBACH,CAAC;gBAED,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC1C,MAAM,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAChD,CAAC;QAED,yDAAyD;QACzD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,QAAQ,CAAC,kBAAkB;gBAChC,mDAAmD;oBACnD,+EAA+E;oBAC/E,4DAA4D;oBAC5D,2DAA2D;oBAC3D,6CAA6C;oBAC7C,0DAA0D;oBAC1D,wEAAwE,CAAC;QAC7E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,gBAAgB,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,gBAAgB,EAAE,cAAc,EA4hC5C,CAAC"}
|
|
@@ -858,18 +858,6 @@ export const TOOL_DEFINITIONS = [
|
|
|
858
858
|
tier: "deep",
|
|
859
859
|
},
|
|
860
860
|
// ── Shellcode analysis ─────────────────────────────────────────────────
|
|
861
|
-
{
|
|
862
|
-
name: "scdbgc",
|
|
863
|
-
description: "Trace Win32 API calls made by 32-bit shellcode using emulation.",
|
|
864
|
-
command: "scdbgc",
|
|
865
|
-
inputStyle: "flag",
|
|
866
|
-
inputFlag: "-f",
|
|
867
|
-
fixedArgs: ["-s", "-1"],
|
|
868
|
-
outputFormat: "text",
|
|
869
|
-
timeout: 60,
|
|
870
|
-
tags: ["shellcode"],
|
|
871
|
-
tier: "standard",
|
|
872
|
-
},
|
|
873
861
|
{
|
|
874
862
|
name: "speakeasy-sc-x86",
|
|
875
863
|
description: "Emulate 32-bit shellcode using Speakeasy Windows API emulation.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
|