T03 · Remote Payload Retrieval and Execution
- Location
references/tools/INSTALLATION.md:219- Finding
Unverified Remote Python Payload Downloaded and Installed as a System Command
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This GROMACS automation skill is mostly coherent, but it includes unsafe installation and troubleshooting instructions that can install unverified code globally or weaken the host environment.
Review commands before letting an agent run them. Prefer a fresh conda environment or disposable container, preinstall pinned dependencies yourself, avoid AUTOMD_AUTO_INSTALL and AUTOMD_CG_ALLOW_DOWNLOAD unless you trust the sources, do not install downloaded scripts into /usr/local/bin without verifying them, and avoid persistent ~/.bashrc or Docker capability changes unless you understand the host impact.
references/tools/INSTALLATION.md:219Unverified Remote Python Payload Downloaded and Installed as a System Command
references/tools/INSTALLATION.md:52Unpinned Git Repository Code Is Installed or Enabled for Execution
scripts/advanced/freeenergy.sh:10Opt-In Runtime Dependency Installation Executes Unpinned Packages
scripts/advanced/coarse-grained.sh:106Downloaded Force-Field Archives Are Extracted Without Integrity or Path Validation
references/gpu/gpu-installation.md:27Unverified CMake Binary Is Installed Into the Global Command Path
references/gpu/gpu-installation.md:122GPU Installation Instructions Persistently Modify Shell Startup Configuration
The description presents a broad AutoMD-GROMACS skill with workflow automation plus enhanced sampling, special-system simulation, advanced analysis, publication-ready visualization, troubleshooting, and token optimization. The supplied code chunk only implements a single ligand–protein simulation pipeline in Bash. It does include some troubleshooting-oriented behavior (error messages, fallback ligand parameterization, optional dependency auto-install), so that part partially aligns. However, the main mismatch is that the declared purpose is substantially broader than the actual behavior shown. Additionally, the code has an undeclared capability to install packages at runtime via conda or pip when AUTOMD_AUTO_INSTALL=1, which is a meaningful side effect not reflected in the declared permissions/capabilities. The report it generates contains analysis and visualization instructions, but does not actually perform advanced analysis or produce publication-ready visualizations. Therefore the description does not accurately represent this specific code chunk.
The code is related to the declared domain of molecular dynamics automation for GROMACS, so it is not wholly unrelated. However, the supplied chunk implements a much narrower capability than the description claims. It handles one specialized membrane-protein setup/equilibration pipeline and basic report generation. It does not implement enhanced sampling methods, substantive advanced analysis, publication-ready visualization generation, or any clearly AI-facing/token-optimization features. The script does include limited troubleshooting-style behavior through dependency checks, optional auto-install, and error messages, and it fits 'special-system simulation' in the membrane-protein sense. Still, the declared description overstates the capabilities actually present in this code chunk, so this should be flagged as a description-behavior mismatch.
The supplied code chunk does fit part of the declared purpose: it is an automation workflow for GROMACS and is AI-friendly in the sense of structured steps and concise error messages. However, the description substantially overstates the implemented capabilities in this chunk. The script only orchestrates a standard six-step MD pipeline and basic analysis via other scripts. There is no evidence here of enhanced sampling methods, special-system simulation support, advanced analysis, or publication-ready visualization. Troubleshooting is limited to basic dependency/input checks and fixed error hints, not robust built-in troubleshooting. This is not a harmful undeclared capability issue; rather, the declared description is materially broader than the observed behavior, so it should be flagged as a description/behavior mismatch.
The description presents a comprehensive AutoMD-GROMACS system for end-to-end molecular dynamics automation, including workflow management, enhanced sampling, special-system simulation, advanced analysis, visualization, and troubleshooting. The supplied code chunk is much narrower: it is a basic analysis script for existing GROMACS outputs (md.tpr, md.xtc). It preprocesses trajectories and runs standard analyses (RMSD, RMSF, gyration radius, hydrogen bonds, SASA, optional DSSP), computes simple summary statistics, and writes a Markdown report. There is some built-in troubleshooting via checks and error messages, so that aspect is partially consistent. However, the code does not implement simulation workflow orchestration, enhanced sampling, special-system handling, advanced analysis beyond standard metrics, or publication-ready visualization. Therefore the declared description materially overstates the behavior of this code chunk.
The supplied code chunk is narrowly focused on preparing a standard GROMACS system from a PDB through topology generation, boxing, solvation, ion addition, energy minimization, and report generation. It does include basic troubleshooting/error messages and a small amount of automatic parameter selection, which partially aligns with 'automation' and 'built-in troubleshooting.' However, the declared description promises a much broader platform: enhanced sampling, special-system simulation, advanced analysis, publication-ready visualization, and wider workflow orchestration. None of those capabilities are present in this code chunk. The primary purpose of the code is initial system setup, not the full-featured molecular dynamics automation suite described. Therefore the description materially overstates what this code actually does.
The declared description presents a comprehensive molecular dynamics automation system with workflow orchestration, enhanced sampling, simulation support, advanced analysis, visualization, and troubleshooting. The supplied code does not implement those broad capabilities. It only parses CLI flags, checks for gmx, validates an input file, and dispatches to a few basic GROMACS commands (trjconv, make_ndx) for convert/center/fit/PBC/index tasks. There is no evidence here of workflow automation, simulation setup/execution, enhanced sampling, special-system handling, advanced analysis, or publication-ready visualization. This is therefore a description-to-behavior mismatch due to substantial overstatement of the implemented functionality in the provided code chunk.
The description claims a comprehensive AutoMD-GROMACS system with broad MD workflow automation, enhanced sampling, special simulations, analysis, visualization, and troubleshooting. The supplied code chunk is only a simple Bash utility wrapper around standard GROMACS commands for preprocessing and trajectory manipulation. While it is related to GROMACS and molecular dynamics, it does not implement most of the declared headline capabilities. This is a material description-to-behavior mismatch due to substantial overstatement of functionality.
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
# 安装 NVIDIA CUDA keyring
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
dpkg -i cuda-keyring_1.1-1_all.deb
apt-get update
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
# 安装 NVIDIA CUDA keyring
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
dpkg -i cuda-keyring_1.1-1_all.deb
apt-get update
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
# 安装 NVIDIA CUDA keyring
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.1-1_all.deb
dpkg -i cuda-keyring_1.1-1_all.deb
apt-get update
YARA rule matched a known malware signature (reverse shell, backdoor, ransomware, C2 framework, or info stealer).
�心数
make install
## 环境配置
```bash
# 创建环境脚本
cat > /opt/gromacs-2025.4-gpu/env.sh << 'EOF'
export GMX=/opt/gromacs-2025.4-gpu
export PATH=$GMX/bin:$PATH
export LD_LIBRARY_PATH=$GMX/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-12.8
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
EOF
# 自动加载(写入 .bashrc)
echo 'source /opt/gromacs-2025.4-gpu/env.sh' >> ~/.bashrc
source /opt/gromacs-2025.4-gpu/env.sh
gmx --version 2>&1 | grep -iE "GPU|CUDA|SIMD"
期望输出:
GPU support: CUDA
SIMD instructions: AVX2_256
GPU FFT library: cuFFT
CUDA compiler: /usr/local/cuda-12.8/bin/nvcc
| GPU 系列 | 架构 | CMAKE_CUDA_ARCHITECTURES |
|---|---|---|
| RTX 5090/5080/5070/5060 | Blackwell | 120 |
| RTX 4090/4080/4070/4060 | Ada Lovelace | 89 |
| RTX 3090/3080/3070 | Ampere | 86 |
| A100/H10 |
Advising the addition of SYS_PTRACE to a container grants powerful debugging and process-inspection capability that is unnecessary for most molecular dynamics workflows. In the context of untrusted or broadly scoped containers, this increases the risk of sensitive process inspection, bypass of hardening assumptions, and greater impact from a compromised image.
不在 /etc/hosts 中会导致 OpenMPI 进程间无法通信。 在物理机/共享集群上,不应修改 /etc/hosts,应联系系统管理员配置域名解析。
⚠️
SYS_PTRACE是 Linux security capability,授予容器进程 ptrace 权限。仅信任的容器镜像使用。 如果在容器内完成 Fix 1+2 后 mpirun 仍卡死:
The explicit docker run --cap-add=SYS_PTRACE ... command operationalizes a privileged container configuration that weakens container isolation. Because this is a copy-paste-ready command in troubleshooting documentation, it materially increases the chance that users will grant elevated capabilities without fully understanding the security consequences.
**需要容器管理员**在启动时添加:
```bash
docker run --cap-add=SYS_PTRACE ...
如果无法修改容器权限,只能使用单核模式 (%pal nprocs 1 end)
The documentation instructs users to run rm -rf output/*, which is a destructive filesystem operation. While the path is not obviously attacker-controlled in this snippet, blindly recommending recursive deletion can cause unintended data loss if executed from the wrong directory, if output is a symlink, or if users adapt the command unsafely in automation.
重新生成拓扑:
# 从头开始
rm -rf output/*
./setup.sh --input protein.pdb --output output
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
- **INSTALLATION.md warnings** — security advisories added before all `sudo`, `/etc/`, and system-level operations; `insane.py` download uses HTTPS; `~/.gromacs_env.sh` warns against adding to `.bashrc`
- **ligand-topology.md warnings** — `apt-get`, `/etc/ld.so.conf.d/`, and `ldconfig` commands now commented out with security advisories and conda alternatives
- **qmmm-errors.md warnings** — `/etc/hosts` modification now includes security context and container-only guidance; `SYS_PTRACE` capability risk documented
- **membrane-errors.md warnings** — `sudo mv insane.py` replaced with user-path `~/.local/bin/` install; HTTPS download
## [5.3.2] - 2026-06-01
The README gives direct commands to run setup, simulation, analysis, and visualization scripts but does not warn that these operations may consume substantial CPU/GPU time, require licensed or heavyweight scientific dependencies, and create or overwrite files in the working directory. In an AI-agent context, copy-pastable execution examples materially increase the chance of unintended expensive or destructive runs, especially when an agent may treat documentation examples as safe defaults.