@remnux/mcp-server 0.1.54 → 0.1.55
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 +7 -1
- package/dist/analysis/behavior-prerequisites.d.ts +65 -0
- package/dist/analysis/behavior-prerequisites.d.ts.map +1 -0
- package/dist/analysis/behavior-prerequisites.js +186 -0
- package/dist/analysis/behavior-prerequisites.js.map +1 -0
- package/dist/analysis/file-diff.d.ts +59 -0
- package/dist/analysis/file-diff.d.ts.map +1 -0
- package/dist/analysis/file-diff.js +55 -0
- package/dist/analysis/file-diff.js.map +1 -0
- package/dist/analysis/index.d.ts +1 -1
- package/dist/analysis/index.d.ts.map +1 -1
- package/dist/analysis/index.js +1 -1
- package/dist/analysis/index.js.map +1 -1
- package/dist/analysis/string-usage.d.ts +77 -0
- package/dist/analysis/string-usage.d.ts.map +1 -0
- package/dist/analysis/string-usage.js +130 -0
- package/dist/analysis/string-usage.js.map +1 -0
- package/dist/analysis/summarizer.d.ts +22 -0
- package/dist/analysis/summarizer.d.ts.map +1 -1
- package/dist/analysis/summarizer.js +41 -0
- package/dist/analysis/summarizer.js.map +1 -1
- package/dist/handlers/analyze-file.d.ts.map +1 -1
- package/dist/handlers/analyze-file.js +14 -2
- package/dist/handlers/analyze-file.js.map +1 -1
- package/dist/handlers/check-behavior-prerequisites.d.ts +16 -0
- package/dist/handlers/check-behavior-prerequisites.d.ts.map +1 -0
- package/dist/handlers/check-behavior-prerequisites.js +132 -0
- package/dist/handlers/check-behavior-prerequisites.js.map +1 -0
- package/dist/handlers/compare-files.d.ts +10 -0
- package/dist/handlers/compare-files.d.ts.map +1 -0
- package/dist/handlers/compare-files.js +147 -0
- package/dist/handlers/compare-files.js.map +1 -0
- package/dist/handlers/report.d.ts.map +1 -1
- package/dist/handlers/report.js +11 -0
- package/dist/handlers/report.js.map +1 -1
- package/dist/handlers/verify-string-usage.d.ts +10 -0
- package/dist/handlers/verify-string-usage.d.ts.map +1 -0
- package/dist/handlers/verify-string-usage.js +166 -0
- package/dist/handlers/verify-string-usage.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +47 -8
- package/dist/index.js.map +1 -1
- package/dist/parsers/capa.d.ts +8 -1
- package/dist/parsers/capa.d.ts.map +1 -1
- package/dist/parsers/capa.js +138 -0
- package/dist/parsers/capa.js.map +1 -1
- package/dist/parsers/imports.d.ts +36 -0
- package/dist/parsers/imports.d.ts.map +1 -0
- package/dist/parsers/imports.js +67 -0
- package/dist/parsers/imports.js.map +1 -0
- package/dist/parsers/r2.d.ts +73 -0
- package/dist/parsers/r2.d.ts.map +1 -0
- package/dist/parsers/r2.js +161 -0
- package/dist/parsers/r2.js.map +1 -0
- package/dist/parsers/types.d.ts +19 -0
- package/dist/parsers/types.d.ts.map +1 -1
- package/dist/report/triage-discipline.d.ts +28 -0
- package/dist/report/triage-discipline.d.ts.map +1 -0
- package/dist/report/triage-discipline.js +49 -0
- package/dist/report/triage-discipline.js.map +1 -0
- package/dist/schemas/tools.d.ts +45 -3
- package/dist/schemas/tools.d.ts.map +1 -1
- package/dist/schemas/tools.js +22 -2
- package/dist/schemas/tools.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pre-claim triage discipline checklist — server-authored, bundled, offline.
|
|
3
|
+
*
|
|
4
|
+
* This is operational guidance on USING the analysis tools and reasoning about
|
|
5
|
+
* evidence (the gates to pass before asserting a behavioral claim). It is
|
|
6
|
+
* deliberately distinct from the report-WRITING guidelines in
|
|
7
|
+
* content.generated.ts, which are synced from zeltser.com; this content is the
|
|
8
|
+
* same category as the server's other locally-authored guidance (the
|
|
9
|
+
* analyze_file analysis_guidance, the advisories, the suggest_tools hints) and
|
|
10
|
+
* is therefore authored and versioned here.
|
|
11
|
+
*
|
|
12
|
+
* Upgrade path: if this should later be published and reused on zeltser.com, it
|
|
13
|
+
* can graduate to the synced report-guidance pipeline without changing the
|
|
14
|
+
* `triage_checklist` topic's interface. Until then it is bundled and offline —
|
|
15
|
+
* no live network fetch (the server's works-offline guarantee is load-bearing
|
|
16
|
+
* for air-gapped REMnux deployments).
|
|
17
|
+
*/
|
|
18
|
+
export const TRIAGE_DISCIPLINE = {
|
|
19
|
+
version: "1.0.0",
|
|
20
|
+
title: "Malware triage discipline — gates to pass before making a claim",
|
|
21
|
+
provenance: "Server-authored operational guidance, bundled and offline (not synced from zeltser.com).",
|
|
22
|
+
core_principle: "Separate ARTIFACT-level evidence (a string, regex, constant, or capa pattern is PRESENT in the file) from " +
|
|
23
|
+
"BEHAVIORAL evidence (reachable code actually performs the action). The presence of an artifact is not proof " +
|
|
24
|
+
"the behavior executes. Most over-confident triage errors come from restating an artifact as a behavior.",
|
|
25
|
+
before_claiming_a_behavior: [
|
|
26
|
+
"Are the required APIs imported, or resolvable at runtime (GetProcAddress + LoadLibrary*)? If neither, the behavior is not statically supported.",
|
|
27
|
+
"If the required APIs are absent but the binary is packed / encrypted / high-entropy, the honest answer is 'indeterminate — unpack first', not 'incapable'. Static absence on an obscured binary proves nothing.",
|
|
28
|
+
"Are the relevant data artifacts (strings, wallet addresses, regexes) cross-referenced from executable code? Data sitting in .rdata with no code xref is an artifact, not an operational indicator.",
|
|
29
|
+
"Is the relevant code reachable from the entry point, or only from unused / initializer-only code?",
|
|
30
|
+
"Did dynamic analysis (emulation, sandbox) actually exercise the suspected path? Static analysis alone cannot confirm a runtime behavior.",
|
|
31
|
+
"Distinguish 'the code to do X is present' (a capability) from 'the sample does X' (a confirmed behavior). Until confirmed, write 'capable of' or 'consistent with', not 'performs'.",
|
|
32
|
+
],
|
|
33
|
+
for_each_ioc: [
|
|
34
|
+
"Operationally used (referenced by reachable code, or observed in traffic) vs. vestigial (present in the file but unreferenced)?",
|
|
35
|
+
"Pyramid-of-Pain tier — trivially changed by the adversary (hash, IP) or costly (tooling, TTP)?",
|
|
36
|
+
"Pivotable to other samples / campaigns, or unique to this sample?",
|
|
37
|
+
],
|
|
38
|
+
for_confidence: [
|
|
39
|
+
"Direct evidence vs. inferential leap — how many assumptions sit between the observation and the claim?",
|
|
40
|
+
"Single-source vs. corroborated across independent tools or methods.",
|
|
41
|
+
"Use ICD-203 estimative language; state attribution confidence separately from detection confidence.",
|
|
42
|
+
],
|
|
43
|
+
using_this_server: [
|
|
44
|
+
"capa findings carry evidence_types (artifact / behavior / structural / linking), and analyze_file returns a capability_evidence field separating behavior_capable from artifact_only — read those before asserting a behavior.",
|
|
45
|
+
"A YARA family match is resemblance, not identity. A family name in the filename is a lead to test, never a finding.",
|
|
46
|
+
"When you need behavioral confirmation, plan for emulation (speakeasy) or sandbox detonation rather than inferring it from static artifacts.",
|
|
47
|
+
],
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=triage-discipline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"triage-discipline.js","sourceRoot":"","sources":["../../src/report/triage-discipline.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,iEAAiE;IACxE,UAAU,EAAE,0FAA0F;IACtG,cAAc,EACZ,4GAA4G;QAC5G,8GAA8G;QAC9G,yGAAyG;IAC3G,0BAA0B,EAAE;QAC1B,iJAAiJ;QACjJ,iNAAiN;QACjN,oMAAoM;QACpM,mGAAmG;QACnG,0IAA0I;QAC1I,qLAAqL;KACtL;IACD,YAAY,EAAE;QACZ,iIAAiI;QACjI,gGAAgG;QAChG,mEAAmE;KACpE;IACD,cAAc,EAAE;QACd,wGAAwG;QACxG,qEAAqE;QACrE,qGAAqG;KACtG;IACD,iBAAiB,EAAE;QACjB,gOAAgO;QAChO,qHAAqH;QACrH,6IAA6I;KAC9I;CACO,CAAC"}
|
package/dist/schemas/tools.d.ts
CHANGED
|
@@ -146,11 +146,53 @@ export type ExtractIOCsArgs = z.infer<typeof extractIOCsSchema>;
|
|
|
146
146
|
export declare const getReportTemplateSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
|
|
147
147
|
export type GetReportTemplateArgs = z.infer<typeof getReportTemplateSchema>;
|
|
148
148
|
export declare const getReportGuidanceSchema: z.ZodObject<{
|
|
149
|
-
topic: z.ZodDefault<z.ZodOptional<z.ZodEnum<["all", "sections", "confidence", "capabilities", "pyramid_of_pain", "anti_patterns", "review", "writing", "frameworks", "profiles"]>>>;
|
|
149
|
+
topic: z.ZodDefault<z.ZodOptional<z.ZodEnum<["all", "sections", "confidence", "capabilities", "pyramid_of_pain", "anti_patterns", "review", "writing", "frameworks", "profiles", "triage_checklist"]>>>;
|
|
150
150
|
}, "strip", z.ZodTypeAny, {
|
|
151
|
-
topic: "all" | "sections" | "confidence" | "capabilities" | "pyramid_of_pain" | "anti_patterns" | "review" | "writing" | "frameworks" | "profiles";
|
|
151
|
+
topic: "all" | "sections" | "confidence" | "capabilities" | "pyramid_of_pain" | "anti_patterns" | "review" | "writing" | "frameworks" | "profiles" | "triage_checklist";
|
|
152
152
|
}, {
|
|
153
|
-
topic?: "all" | "sections" | "confidence" | "capabilities" | "pyramid_of_pain" | "anti_patterns" | "review" | "writing" | "frameworks" | "profiles" | undefined;
|
|
153
|
+
topic?: "all" | "sections" | "confidence" | "capabilities" | "pyramid_of_pain" | "anti_patterns" | "review" | "writing" | "frameworks" | "profiles" | "triage_checklist" | undefined;
|
|
154
154
|
}>;
|
|
155
155
|
export type GetReportGuidanceArgs = z.input<typeof getReportGuidanceSchema>;
|
|
156
|
+
export declare const checkBehaviorPrerequisitesSchema: z.ZodObject<{
|
|
157
|
+
file: z.ZodString;
|
|
158
|
+
behavior: z.ZodOptional<z.ZodString>;
|
|
159
|
+
}, "strip", z.ZodTypeAny, {
|
|
160
|
+
file: string;
|
|
161
|
+
behavior?: string | undefined;
|
|
162
|
+
}, {
|
|
163
|
+
file: string;
|
|
164
|
+
behavior?: string | undefined;
|
|
165
|
+
}>;
|
|
166
|
+
export type CheckBehaviorPrerequisitesArgs = z.infer<typeof checkBehaviorPrerequisitesSchema>;
|
|
167
|
+
export declare const verifyStringUsageSchema: z.ZodObject<{
|
|
168
|
+
file: z.ZodString;
|
|
169
|
+
query: z.ZodString;
|
|
170
|
+
depth: z.ZodOptional<z.ZodEnum<["standard", "deep"]>>;
|
|
171
|
+
max_matches: z.ZodOptional<z.ZodNumber>;
|
|
172
|
+
}, "strip", z.ZodTypeAny, {
|
|
173
|
+
file: string;
|
|
174
|
+
query: string;
|
|
175
|
+
depth?: "standard" | "deep" | undefined;
|
|
176
|
+
max_matches?: number | undefined;
|
|
177
|
+
}, {
|
|
178
|
+
file: string;
|
|
179
|
+
query: string;
|
|
180
|
+
depth?: "standard" | "deep" | undefined;
|
|
181
|
+
max_matches?: number | undefined;
|
|
182
|
+
}>;
|
|
183
|
+
export type VerifyStringUsageArgs = z.infer<typeof verifyStringUsageSchema>;
|
|
184
|
+
export declare const compareFilesSchema: z.ZodObject<{
|
|
185
|
+
file_a: z.ZodString;
|
|
186
|
+
file_b: z.ZodString;
|
|
187
|
+
depth: z.ZodOptional<z.ZodEnum<["quick", "standard"]>>;
|
|
188
|
+
}, "strip", z.ZodTypeAny, {
|
|
189
|
+
file_a: string;
|
|
190
|
+
file_b: string;
|
|
191
|
+
depth?: "quick" | "standard" | undefined;
|
|
192
|
+
}, {
|
|
193
|
+
file_a: string;
|
|
194
|
+
file_b: string;
|
|
195
|
+
depth?: "quick" | "standard" | undefined;
|
|
196
|
+
}>;
|
|
197
|
+
export type CompareFilesArgs = z.infer<typeof compareFilesSchema>;
|
|
156
198
|
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;;;;;;;;;EAIxB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAExD,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEtE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEtE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAO7B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAM5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,gBAAgB,gDAAe,CAAC;AAC7C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;;;;;EAK7B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAmBhC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;EAI5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,uBAAuB,gDAAe,CAAC;AACpD,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE5E,eAAO,MAAM,uBAAuB;;;;;;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,aAAa;;;;;;;;;;;;EAIxB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAExD,eAAO,MAAM,iBAAiB;;;;;;EAE5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe;;;;;;EAE1B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE5D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEtE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEtE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAO7B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAM5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,gBAAgB,gDAAe,CAAC;AAC7C,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE9D,eAAO,MAAM,kBAAkB;;;;;;;;;EAK7B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAElE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;EAmBhC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAExE,eAAO,MAAM,iBAAiB;;;;;;EAI5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEhE,eAAO,MAAM,uBAAuB,gDAAe,CAAC;AACpD,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE5E,eAAO,MAAM,uBAAuB;;;;;;EAoBlC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE5E,eAAO,MAAM,gCAAgC;;;;;;;;;EAO3C,CAAC;AACH,MAAM,MAAM,8BAA8B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE9F,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;EAOlC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE5E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;EAM7B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
package/dist/schemas/tools.js
CHANGED
|
@@ -67,8 +67,28 @@ export const getReportGuidanceSchema = z.object({
|
|
|
67
67
|
"writing",
|
|
68
68
|
"frameworks",
|
|
69
69
|
"profiles",
|
|
70
|
-
|
|
70
|
+
"triage_checklist",
|
|
71
|
+
]).optional().default("all").describe("Which slice of guidance to return. 'all' (default) returns the full writing-guidelines digest; " +
|
|
71
72
|
"narrow to 'sections', 'confidence', 'capabilities', 'pyramid_of_pain', 'anti_patterns', " +
|
|
72
|
-
"'review', 'writing', 'frameworks', or 'profiles' to reduce size."
|
|
73
|
+
"'review', 'writing', 'frameworks', or 'profiles' to reduce size. " +
|
|
74
|
+
"'triage_checklist' returns the pre-claim triage discipline checklist (artifact-vs-behavior gates to pass " +
|
|
75
|
+
"before drawing a behavioral conclusion) — useful at the START of an analysis, not just when writing up."),
|
|
76
|
+
});
|
|
77
|
+
export const checkBehaviorPrerequisitesSchema = z.object({
|
|
78
|
+
file: z.string().describe("Filename relative to the samples directory, or an absolute path in local mode."),
|
|
79
|
+
behavior: z.string().optional().describe("Behavior to check (omit to scan ALL known behaviors). One of: clipboard_hijacking, http_c2_wininet, " +
|
|
80
|
+
"winhttp_c2, socket_c2, process_injection_remote, process_injection_self, registry_persistence_run, " +
|
|
81
|
+
"lnk_persistence, browser_credential_theft, screen_capture, keylog_polling, keylog_hook, network_share_enum."),
|
|
82
|
+
});
|
|
83
|
+
export const verifyStringUsageSchema = z.object({
|
|
84
|
+
file: z.string().describe("Filename relative to the samples directory, or an absolute path in local mode."),
|
|
85
|
+
query: z.string().describe("The string (or substring) to locate in the binary and cross-reference against code."),
|
|
86
|
+
depth: z.enum(["standard", "deep"]).optional().describe("Analysis depth: 'standard' (radare2 aa; aar — default) or 'deep' (aaa — slower, more thorough)."),
|
|
87
|
+
max_matches: z.number().optional().describe("Cap on the number of distinct matching strings to classify (default 50)."),
|
|
88
|
+
});
|
|
89
|
+
export const compareFilesSchema = z.object({
|
|
90
|
+
file_a: z.string().describe("First file (relative to the samples directory, or absolute in local mode)."),
|
|
91
|
+
file_b: z.string().describe("Second file to compare against file_a."),
|
|
92
|
+
depth: z.enum(["quick", "standard"]).optional().describe("'standard' (default) includes a capa capability diff (slower — runs capa on both files); 'quick' skips capa (imports/sections/compiler/entropy only)."),
|
|
73
93
|
});
|
|
74
94
|
//# sourceMappingURL=tools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/schemas/tools.ts"],"names":[],"mappings":"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"}
|