
RE-Agent VM
RE-Agent VM is the hardware-isolated variant of the RE-Agent appliance, built on a Debian or Ubuntu cloud image. Agentic reverse-engineering and malware-analysis workstation: Hermes Agent with the REA MCP server registered, Ghidra headless, OpenBin BINNY, CAPA, FLOSS, YARA, Detect It Easy, Radare2 and UPX, Ghidra and radare2 MCP servers, oletools and PDF tools for documents, box-js for scripts, jadx and androguard for Android, Sigma tooling, and RE skills for triage, deobfuscation, IOCs, detections and reports, plus a web case console (sample intake, case pages, IOC review and report export), rea-case for evidence-backed case folders and re-ioc for CSV and STIX 2.1 IOC export, re-firewall to restrict egress to an allowlist of LLM hosts, and a local memory store (holographic) with optional embeddings.
Install
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Heretek-AI/ProxmoxVE/main/vm/re-agent-vm.sh)"Run as root in the Proxmox VE shell.
Notes
- Warning: SSH accepts keys only. Add your public key to /root/.ssh/authorized_keys from the VM console, or through cloud-init.
- Warning: Run 're-firewall isolate local' as root before handling samples (or 'isolate <proxy_ip> [port]' to use a proxy on the host). Only allowlisted LLM hosts stay reachable, IPv6 is blocked, and it persists across reboots.
- Run 're-agent-setup' inside the guest to configure your model provider and start the Hermes gateway API on port 8642 (key in /home/analyst/.hermes/.env).
- The case console (port 9120) and the Hermes dashboard (port 9119) listen on 127.0.0.1 only. Reach both with: ssh -L 9120:127.0.0.1:9120 -L 9119:127.0.0.1:9119 root@<IP>, then open http://127.0.0.1:9120
- Start a case by dropping a sample (or a zip with password 'infected') on the case console, or with 'rea-case new <sample>' in /work/cases. The console shows the network mode, the casebook, IOCs to review and the report.
- The agent's RE skills (re-triage, re-office-pdf, re-script-deobfuscate, re-ioc-extract, re-detection-write, re-report) are in /opt/re-agent/skills. When user namespaces are available (nesting on, the LXC default), the Ghidra and radare2 MCP servers run in a bubblewrap sandbox with no network, and radare2 can only open files under /work. Without them the servers run unsandboxed and log a warning.
- Installing, updating or disabling Hermes plugins, and running 'update', need the internet: run 're-firewall unmask' first and 're-firewall isolate local' afterwards.
- Add a custom OpenAI-compatible provider with 're-agent-config provider add <name> <base_url>' (for example heretek https://llm.heretek.one/v1), and turn on memory search by meaning with 're-agent-config embeddings <base_url> <model>'. Both add the host to the egress allowlist.
- After setup, take a clean baseline snapshot: qm snapshot <vmid> baseline-clean