Simulate fake processes of analysis sandbox/VM that some malware will try to evade
April 14, 2016 · View on GitHub
This just spawn ping.exe with different names (wireshark.exe, vboxtray.exe, ...)
It's just a PoC and it's ugly as f*ck but hey, if it works...
Usage: .\fake_sandbox.ps1 -action {start,stop}
param([Parameter(Mandatory=action)
$fakeProcesses = @("wireshark.exe", "vmacthlp.exe", "VBoxService.exe", "VBoxTray.exe", "procmon.exe", "ollydbg.exe", "vmware-tray.exe", "idag.exe", "ImmunityDebugger.exe")
if (action -ceq "start") { # We will store our renamed binaries into a temp folder tmpdir = [System.Guid]::NewGuid().ToString() env:temp $tmpdir
# Creating temp folder
New-Item -Type Directory -Path $binloc
$oldpwd = $pwd
Set-Location $binloc
foreach ($proc in $fakeProcesses) {
# Copy ping.exe and rename binary to fake one
Copy-Item c:\windows\system32\ping.exe "$binloc\$proc"
# Start infinite ping process (localhost) - that's kind of ugly
Start-Process ".\$proc" -WindowStyle Hidden -ArgumentList "-t -4 127.0.0.1"
write-host "[+] Process $proc spawned"
}
Set-Location $oldpwd
} elseif (action -ceq "stop") { foreach (proc in fakeProcesses) { Stop-Process -processname "proc".Split(".")[0] write-host "[+] Killed $proc" } } else { write-host "Bad usage: need '-action start' or '-action stop' parameter" }