Skip to content

feat(web-security): expand SQLi-to-RCE, math-rendering, and XS-Leak coverage - #122

Merged
GangGreenTemperTatum merged 2 commits into
mainfrom
chore/evaluate-web-capability-tooling
Aug 14, 2026
Merged

feat(web-security): expand SQLi-to-RCE, math-rendering, and XS-Leak coverage#122
GangGreenTemperTatum merged 2 commits into
mainfrom
chore/evaluate-web-capability-tooling

Conversation

@GangGreenTemperTatum

Copy link
Copy Markdown
Contributor

Summary

Evaluated recent public web-security research and integrated the reusable techniques that filled genuine gaps in the capability playbook set. Markdown-only changes (new/updated SKILL.md files) plus a version bump — no tooling, MCP, or runtime changes.

Three additions, each vetted against the existing 79 skills to avoid duplication:

1. sqli-to-rce-escalation (new skill)

Escalates a confirmed SQL injection into OS command execution or a planted webshell. blind-sqli-extraction already covers reading data through an oracle, but nothing covered the escalation-to-RCE path. DBMS-complete:

  • Privilege preflight per engine (MSSQL sysadmin, PostgreSQL rolsuper / pg_execute_server_program, MySQL FILE + secure_file_priv semantics, Oracle DBA, embedded-Java owners) — the escalation is gated on the DB role, not the injection.
  • OS-reach primitives: xp_cmdshell, OLE Automation, COPY TO PROGRAM, pg_cron non-stacked ORDER BY reach, INTO OUTFILE/DUMPFILE UDF, Derby SYSCS_EXPORT_QUERY → JSP webshell, H2 CREATE ALIAS.
  • Execution-context handling: MSSQL Msg 574 user-transaction COMMIT breakout, second-order write/read split, terminator + URL-encoding traps.

2. math-rendering-macro-injection (new skill)

Abuse user-controlled TeX macros in MathJax/KaTeX renderers (GitHub-class content-integrity bug). Covers newcommand-package operator shadowing (priority -1 CommandMap, no base lookup), KaTeX \def/\href trust and \html* sinks, macro-expansion DoS (maxMacros/maxExpand), impact framing, and remediation configs. No prior skill touched math-rendering surfaces.

3. browser-side-channel (extended)

Added the ORB status-code XS-Leak revived via a service-worker fetch proxy that rewrites Sec-Fetch-Dest to empty, turning ORB network errors into blank 200s so the <script> onload/onerror status-code oracle works again in modern Chrome/Firefox. Complements the existing connection-pool / ETag / timing techniques.

Evaluated but intentionally not added:

  • postMessage targetOrigin IP-normalization bypass — already covered in dom-vulnerability-detection.
  • npx-confusion / bin-mismatch supply-chain RCE — out of scope for web-app pentest; belongs in the sast / supply-chain capability, not web-security.

Validation

  • dreadnode capability validate capabilities/web-security → passes (81 skills; the two caido-cli/burp warns are pre-existing external-CLI checks, confirmed identical on clean main).
  • Core technical claims spot-checked against authoritative docs (KaTeX trust:false forbids \href; MathJax packages: {'[-]': [...]} removal syntax).
  • Peer-review pass on the SQLi skill produced fixes (corrected secure_file_priv NULL = export-disabled, added pg_execute_server_program, Oracle external-job and Derby CSV-quoting caveats, References + Checkpoints).

Bumps web-security 1.8.01.9.0.

…injection skills and ORB service-worker XS-Leak

New skills and technique coverage from referenced security research:

- sqli-to-rce-escalation: escalate a confirmed SQL injection into OS
  command execution or a planted webshell. DBMS-complete privilege
  preflight (MSSQL sysadmin, PostgreSQL rolsuper / pg_execute_server_program,
  MySQL FILE + secure_file_priv, Oracle DBA, embedded Java owners) and
  OS-reach primitives (xp_cmdshell, OLE Automation, COPY TO PROGRAM,
  pg_cron non-stacked ORDER BY reach, INTO OUTFILE/DUMPFILE UDF, Derby
  SYSCS_EXPORT_QUERY, H2 CREATE ALIAS). Covers MSSQL Msg 574 user-
  transaction COMMIT breakout, second-order write/read split, terminator
  and URL-encoding traps. Fills the gap left by blind-sqli-extraction,
  which stops at data read.

- math-rendering-macro-injection: abuse user-controlled TeX macros in
  MathJax/KaTeX renderers -- newcommand-package operator shadowing
  (priority -1 CommandMap, no base lookup), KaTeX \def/\href trust and
  \html* sinks, macro-expansion DoS (maxMacros / maxExpand), with
  content-integrity/UI-redress and link-injection impact framing and
  remediation configs.

- browser-side-channel: add ORB status-code XS-Leak revived via a
  service-worker fetch proxy that rewrites Sec-Fetch-Dest to "empty",
  turning ORB network errors into blank 200s so the script onload/onerror
  status-code oracle works again in modern Chrome/Firefox.

Bumps web-security to 1.9.0 (81 skills).
@GangGreenTemperTatum
GangGreenTemperTatum merged commit 88f10be into main Aug 14, 2026
5 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