openfoam-cfd

Fail

Audited by Gen Agent Trust Hub on Sep 14, 2026

Risk Level: HIGHREMOTE_CODE_EXECUTIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTIONPRIVILEGE_ESCALATIONPERSISTENCEDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
  • [REMOTE_CODE_EXECUTION]: The installation guide in SKILL.md instructs the user to download a repository configuration script from dl.openfoam.com and pipe it directly into bash for execution. While this is an official distribution channel for the OpenFOAM software, the method itself bypasses local integrity checks and executes remote content.
  • [EXTERNAL_DOWNLOADS]: The skill fetches necessary components, such as GPG keys and repository setup scripts, from dl.openfoam.org and dl.openfoam.com. These are recognized official domains for the OpenFOAM project.
  • [PRIVILEGE_ESCALATION]: Setup instructions frequently employ sudo to perform administrative tasks, including adding third-party repositories, installing system packages, and modifying global environment settings.
  • [PERSISTENCE]: The skill automates the configuration of the OpenFOAM environment by appending source commands to the user's ~/.bashrc file. This ensures the environment is persistently available in all future shell sessions.
  • [DYNAMIC_EXECUTION]: Several files, including SKILL.md and examples/boundary-conditions-examples.md, demonstrate the use of OpenFOAM's codedFixedValue and coded function objects. These features allow for the embedding of raw C++ code within simulation dictionaries, which OpenFOAM then compiles and executes at runtime to handle custom boundary conditions or data processing.
  • [INDIRECT_PROMPT_INJECTION]: The provided Python utilities (generate_case.py and calculate_turbulence.py) ingest user-supplied parameters via command-line arguments and interpolate them directly into OpenFOAM dictionary templates. A lack of sanitization in this process creates a surface for indirect prompt injection if an agent is tasked with processing untrusted parameters.
  • Ingestion points: Command-line arguments in scripts/generate_case.py (specifically case_name, velocity, nu, and turbulence) and scripts/calculate_turbulence.py (specifically velocity and length).
  • Boundary markers: No delimiters or safety instructions are present to isolate user-supplied data from the configuration templates.
  • Capability inventory: The skill facilitates file system writes (creating OpenFOAM cases) and provides instructions for executing shell-based solvers (simpleFoam, pimpleFoam).
  • Sanitization: There is no evidence of input validation or escaping; values are formatted directly into dictionaries using f-strings (e.g., line 241 of scripts/generate_case.py).
Recommendations
  • HIGH: Downloads and executes remote code from: https://dl.openfoam.com/add-debian-repo.sh - DO NOT USE without thorough review
Audit Metadata
Risk Level
HIGH
Analyzed
Sep 14, 2026, 02:53 PM