Skip to content

Close 5 more single-command bypasses from convergence verify (3.29.13)#95

Merged
VickyXAI merged 1 commit into
mainfrom
fix/round8-convergence
Jun 24, 2026
Merged

Close 5 more single-command bypasses from convergence verify (3.29.13)#95
VickyXAI merged 1 commit into
mainfrom
fix/round8-convergence

Conversation

@VickyXAI

Copy link
Copy Markdown
Contributor

Round-8 — second convergence verify

A second 13-agent adversarial convergence verify of the 3.29.12 guards confirmed 5 NEW single-command bypass classes the round-7 fixes didn't anticipate. Each was traced through the real classifier and reproduced before fixing.

Sev Bypass Fix
🟠 HIGH rtk node evil.jsrtk wrapper blanket-allowed any wrapped command (wildcard RCE) strip rtk/rtk proxy prefix and recurse; safety = wrapped command's
🔴 CRITICAL cat ~/.block''run/.sess''ion — empty-quote / backslash / ANSI-C splice reads the EVM key deny patterns now run on a shell-normalized copy; $'…'/$"…" treated as opaque
🟠 HIGH cat ~/.git-credentials — denylist missed gh hosts, cargo/rclone, Solana CLI keypair, keychain, shell history broadened credential-store denylist
🟡 LOW git branch -d / git tag -d — ref destruction via read-only allowlist delete/rename/force flags prompt; read + create stay safe

(The critical splice defeats the wallet directory rule itself — the shell strips ''/""/\ before opening the file, but the literal regex saw non-contiguous text. Fixed by matching against a dequoted/unescaped normalization that mimics shell tokenization.)

The recurring lesson: text-classifying shell commands for auto-approval is a denylist treadmill. isWalletKeyPath on the file/media tools is the primary wallet guard; bash-guard is the best-effort shell net and now fails toward prompting on quoting, expansion, wrappers, and anything it can't statically resolve.

Regression tests pin all five classes plus benign controls (wrapped-safe rtk, regex anchors, branch/tag create+list, project source files). Local suite 504/504.

…verify (3.29.13)

Round-8 — a second 13-agent convergence verify found 5 NEW classes the
round-7 fixes didn't anticipate (1 critical). All fixed; benign controls kept.

- HIGH rtk wildcard exec: rtk <cmd> blanket-allowed any wrapped command
  (rtk node evil.js => RCE). rtk is a rewriter; strip rtk/rtk-proxy prefix
  and recurse, like time/nice. gain/discover/--version stay safe.
- CRITICAL quote/escape/ANSI-C splice on the wallet key: cat ~/.block''run/
  .sess''ion read the EVM key — shell strips ''/""/backslash before opening,
  regex saw non-contiguous text. Deny patterns now run on a shell-normalized
  copy; $'..'/$".." treated as opaque. Closes all 4 key basenames.
- HIGH broadened credential reads: ~/.git-credentials, gh hosts.yml, cargo/
  rclone creds, ~/.config/solana/id.json (spendable Solana keypair), keychain,
  shell history now prompt.
- LOW git branch/tag ref destruction: -d/-D/-m/-f delete/rename/force-move
  prompt; read + create forms stay safe.

+4 regression test groups. Suite 504/504.
@VickyXAI VickyXAI merged commit 8d1bc18 into main Jun 24, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant