agentsclimarketplace

Setting up an isolated malware analysis lab

Skill meltedinhex/analyst-ai-pack/skills/setting-up-an-isolated-malware-analysis-lab

Builds a safe, isolated environment for detonating and analyzing malware using virtualization, host-only or simulated networking, and snapshotting. Activates for requests about creating a malware lab, sandbox VM, isolated analysis environment, or safe detonation setup.From its SKILL.md

Install
npx -y skills add meltedinhex/analyst-ai-pack --skill setting-up-an-isolated-malware-analysis-lab

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 19 stars19 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

4.8 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it

Setting Up an Isolated Malware Analysis Lab

When to Use

  • You need to run unknown or known-malicious binaries to observe behavior without risk to production systems or the internet.
  • You are standing up a repeatable analysis environment for static and dynamic work.
  • You want a reverting, snapshot-based workflow so each sample starts from a clean state.

Do not use this as guidance for detonating samples on a host OS or a cloud VM with live egress; that risks self-spreading malware escaping. Use a dedicated, network-isolated hypervisor instead.

Prerequisites

  • A host with a type-2 hypervisor (VMware Workstation/Fusion or VirtualBox) or a dedicated type-1 host. At least 16 GB RAM and 200 GB disk for two guests.
  • A victim guest (Windows 10/11) for detonation — e.g. built with FLARE-VM tooling.
  • An analysis services guest (REMnux, Linux) to simulate internet services and capture traffic.
  • Host networking able to provide a host-only / internal network with no NAT or bridged adapter on the victim.

Safety & Handling

  • The victim VM must have no bridged or NAT adapter — host-only/internal only. All "internet" is simulated by the REMnux guest running INetSim.
  • Disable shared folders, drag-and-drop, and clipboard sharing on the victim before detonation; these are escape and contamination paths.
  • Take a clean base snapshot before any sample touches the VM and revert to it after every run.
  • Store samples in password-protected archives (infected) and only extract them inside the victim VM.

Workflow

Step 1: Create and harden the victim VM

Install Windows in a new VM, apply analysis tooling, then strip escape paths:

VM settings (victim):
  Network adapter   -> Host-only (vmnet1) or Internal network
  Shared folders    -> Disabled
  Clipboard/DnD     -> Disabled
  USB controller    -> Disabled
  Snapshots         -> enabled

Step 2: Stand up simulated internet on REMnux

On the REMnux guest (same host-only network), give it a static IP and run INetSim so the victim's DNS/HTTP/SMTP requests are answered locally:

# REMnux guest, e.g. 10.0.0.2 on the host-only network
sudo nano /etc/inetsim/inetsim.conf   # set service_bind_address and dns_default_ip
sudo systemctl start inetsim

Point the victim's DNS and default gateway at the REMnux IP so all resolution and traffic flow to the simulator.

Step 3: Start packet capture

Capture from the REMnux side so the victim never sees a sniffer:

sudo tcpdump -i eth0 -w /cases/<sample-sha256>.pcap

Step 4: Snapshot, detonate, observe, revert

1. Snapshot victim as "clean-base"
2. Transfer the sample into the victim (read-only ISO or one-way copy)
3. Run procmon / process monitoring, then execute the sample
4. Observe for 3-10 minutes; collect artifacts (pcap, procmon log, dropped files)
5. Revert victim to "clean-base"

Use the helper script to verify a victim VM's adapters are isolated before you detonate.

python scripts/analyst.py --check-config vmx/victim.vmx

Validation

  • From the victim, nslookup example.com resolves to the REMnux IP (proves DNS is simulated, not real).
  • A browser request from the victim returns INetSim's default page, not live content.
  • tcpdump on REMnux shows the victim's traffic; nothing reaches a real upstream gateway.
  • Reverting the snapshot returns the victim to the exact clean state (no dropped files persist).

Pitfalls

  • Leaving a NAT/bridged adapter "just to download a tool" — malware will use it. Install all tooling before isolating, then remove the adapter.
  • Forgetting to disable VMware Tools / guest additions clipboard, which some samples abuse.
  • Detonating before snapshotting, so you cannot cleanly revert.
  • Some samples detect INetSim's generic responses; if behavior stalls, consider FakeNet-NG or tailored service responses.

References

  • See references/api-reference.md for the config-check tool and full source list.
  • INetSim, FLARE-VM, and REMnux documentation (linked in frontmatter).

What ships with it: 3 files

4.7 KB alongside SKILL.md, 1 of them executable

references/

scripts/

Keep looking

Skills are one crate of 326,970. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.