T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:233- Finding
Unverified Remote Python Scripts Retrieved from a Mutable Branch and Executed Locally
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This Linux incident-response skill is mostly coherent, but it includes privileged installation of unverified remote Python tools from mutable GitHub URLs, which users should review before installing.
Install only if you are comfortable with a privileged Linux incident-response playbook. Before following the Didier Stevens Suite setup, pin exact commits, verify checksums or signatures, download as an unprivileged user, and prefer a trusted internal forensic toolkit or disposable analysis VM.
SKILL.md:233Unverified Remote Python Scripts Retrieved from a Mutable Branch and Executed Locally
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
ning Services
ss -tulpn
ss -antp | grep ESTABLISHED
iptables -L -n -v --line-numbers
iptables -S
nft list ruleset
ss -lntup
Avoid unnecessary full scans of localhost unless required.
nmap -sV -T3 -p- localhost
tcpdump -i any -nn -c 100
ps auxww --forest
top
lsof -p <PID>
strace -p <PID>
⚠️
stracemay change process behavior. Use carefully during live compromise.
lsmod
dmesg | tail -50
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
To prevent catastrophic system damage:
- NEVER use:
- `rm -rf *`
- `rm -rf /`
- `killall`
- Broad `pkill` patterns
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- NEVER use:
- `rm -rf *`
- `rm -rf /`
- `killall`
- Broad `pkill` patterns
- Unbounded globbing in sensitive directories
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
- NEVER use:
- `rm -rf *`
- `rm -rf /`
- `killall`
- Broad `pkill` patterns
- Unbounded globbing in sensitive directories
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
cat ~/.ssh/authorized_keys
After removal of malicious artifacts:
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
## Execution Assumptions
- Shell: `bash` or POSIX `sh`
- Privilege: Root or sudo
- Host-level access (NOT container-restricted environments)
- systemd-based systems preferred
The skill instructs users to download executable forensic scripts directly from GitHub into a privileged system path using sudo, without pinning versions, verifying signatures, or checking hashes. If the upstream repository, network path, or referenced content is tampered with, an operator could place attacker-controlled code on a trusted host during incident response.
Install:
sudo mkdir -p /opt/forensics
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/base64dump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py
This line continues the same unsafe pattern of using sudo with wget to fetch unverified executable tooling from the internet. In an incident-response context, this is especially risky because compromised hosts and urgent workflows increase the chance of trust bypass and execution of tampered tools.
sudo mkdir -p /opt/forensics
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/base64dump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py
Downloading another script as root from a mutable raw GitHub URL creates software supply-chain risk. The danger is amplified because these tools are later marked executable and may be relied upon for forensic decisions on sensitive systems.
sudo mkdir -p /opt/forensics
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/base64dump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py
This is the same vulnerable pattern: privileged retrieval of remote code without authenticity validation. A hostile or hijacked upstream could cause unauthorized code placement on the responder's target host.
sudo mkdir -p /opt/forensics
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/base64dump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/oledump.py
Fetching executable analysis tooling with sudo from the internet during live response can undermine forensic integrity and introduce compromise. This is not inherently malicious, but it is an unsafe operational practice with real exploitation potential.
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/base64dump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/oledump.py
sudo chmod +x /opt/forensics/*.py
Applying chmod +x to all downloaded Python scripts in a privileged directory broadens the risk from unverified download to easy execution. If any fetched file is malicious or replaced, the skill normalizes making it directly runnable on the host.
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/re-search.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/oledump.py sudo chmod +x /opt/forensics/*.py
This finding is part of the same root-executed remote-download sequence and inherits its supply-chain risk. The context makes it more dangerous because the skill is designed for privileged remediation on potentially compromised Linux hosts.
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/zipdump.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/oledump.py sudo chmod +x /opt/forensics/*.py
The final line in the sequence still contributes to an unsafe privileged installation workflow for third-party scripts from mutable URLs. In aggregate, this creates a realistic path to code introduction on sensitive systems.
sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/1768.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/pdf-parser.py sudo wget -P /opt/forensics https://raw.githubusercontent.com/DidierStevens/DidierStevensSuite/master/oledump.py sudo chmod +x /opt/forensics/*.py
### Decode Base64
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
journalctl -u sshd.service | grep "Failed password"
### Sudo Activity
```bash
journalctl _COMM=sudo
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
journalctl _COMM=sudo
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
crontab -l
ls -lah /etc/cron*
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
crontab -l
ls -lah /etc/cron*
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
sha256sum file
mkdir -p /root/quarantine
mv file /root/quarantine/file.vir
Skill injects content designed to persist in agent memory or context across interactions. Persistent injection can alter agent behavior long after the initial interaction.
---
### B. Immediate vs Persistent Rules
Firewall rule changes are runtime by default and may not survive reboot.
No suspicious patterns detected.