Skip to content

Hypatia shell-exec patterns: download_then_run_shell + eval_in_shell (13 instances) #939

Description

@hyperpolymath

download_then_run_shell (7) and eval_in_shell (6). Includes two workflow-hygiene false positives where the rule matches the scanner's own patterns/comments (security-gate-pr-target.yml, tag-ruleset-canon.yml have no real download-then-run). The satellite eval instances are vendored demo scripts.

Acknowledged in .hypatia-baseline.json (hypatia triage 2026-09-22, expires 2026-12-22) by the main-red fix-forward. This issue is the tracking item; closing it requires either remediating the instances or renewing the acknowledgement.

Instances (13):

  • content_patterns/download_then_run_shell medium — .github/workflows/security-gate-pr-target.yml
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/download_then_run_shell medium — .github/workflows/tag-ruleset-canon.yml
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/eval_in_shell medium — rhodium-standard-repositories/rsr-audit.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/download_then_run_shell medium — rhodium-standard-repositories/satellites/palimpsest-license/TOOLS/validation/install.sh
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/download_then_run_shell medium — rhodium-standard-repositories/satellites/palimpsest-license/TOOLS/validation/install.sh
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/eval_in_shell medium — rhodium-standard-repositories/satellites/palimpsest-license/bof-meetings/presentations/demo-dns-discovery.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/eval_in_shell medium — rhodium-standard-repositories/satellites/palimpsest-license/bof-meetings/presentations/demo-http-headers.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/eval_in_shell medium — scripts/tests/fill-placeholders-test.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/eval_in_shell medium — scripts/tests/propagate-workflow-pins-test.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/eval_in_shell medium — scripts/tests/propagate-workflow-pins-test.sh
    eval banned in shell scripts -- use direct expansion or arrays
  • content_patterns/download_then_run_shell medium — setup.sh
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/download_then_run_shell medium — setup.sh
    download-then-run banned -- verify checksum/signature before execution
  • content_patterns/download_then_run_shell medium — tests/test_tag_ruleset_canon.sh
    download-then-run banned -- verify checksum/signature before execution

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority:p3Low - nice to havescope:repoConfined to this repositorysecuritySecurity posture, secrets, scanning, advisories, supply chainstatus:readyFully specified and ready to be picked up

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions