MCP server for DLL and shellcode injection into remote processes using various injection methods
This server exposes 8 tools for process injection and shellcode execution, all high-risk destructive operations. Critical gaps: (1) Tool names lack action verbs and are inconsistent ('APC_inject_dll' vs 'apc_shellcode_inject'); (2) Descriptions are minimal (10 - 50 chars), missing WHEN to use, prerequisites, and consequences; (3) No input validation, error guidance, or recovery paths; (4) No output schema documentation; (5) No permission gates or audit logging for destructive operations; (6) Parameters lack constraints (e.g., process_id range, dll_path validation); (7) Return values are trivial (success string or None), offering no chaining data; (8) No error classification or actionable error messages. The server is a thin wrapper around a C++ DLL with no safety guardrails. Suitable only for isolated testing, not production agent use.
using APC Queue method to inject dll into a remote process
using APC Queue method to run shellcode inside a remote process
using context switch method to run shellcode inside a remote process
using create remote thread method to inject dll into a remote process
find process id number according to process name
using reflect dll injection method and winint.dll to inject dll from website or internet
using reflect method to inject dll into a remote process
Destructive operations lack permission gates, audit logging, and confirmation steps. No mechanism to verify caller authority or trace who executed code injection.
Tool descriptions are 10 - 50 characters, far below the 194-char baseline. Missing WHEN to use, prerequisites, consequences, and error recovery guidance. LLMs cannot reliably select or reason about these tools.
No input validation, constraints, or error messages. Parameters like 'process_id' and 'dll_path' accept any value; invalid inputs return None with no guidance on what went wrong or how to fix it.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
using CreateRemoteThread method to run shellcode inside a remote process
Tool naming is inconsistent and lacks action verbs. 'APC_inject_dll' uses underscore+caps; 'apc_shellcode_inject' uses lowercase. Names do not clearly distinguish between DLL injection and shellcode injection methods. Inconsistency confuses LLM tool selection.
Return values are trivial (success string or None). No output schema documented. Responses do not include chaining data (e.g., injected process handle, shellcode execution status, error codes). Agents cannot compose multi-step workflows.