Skip to content

Deepen SQLi guidance: DBMS fingerprinting, injection coverage, read-only impact proof#84

Open
letztek wants to merge 1 commit into
shuvonsec:mainfrom
letztek:sqli-discovery-methodology
Open

Deepen SQLi guidance: DBMS fingerprinting, injection coverage, read-only impact proof#84
letztek wants to merge 1 commit into
shuvonsec:mainfrom
letztek:sqli-discovery-methodology

Conversation

@letztek

@letztek letztek commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

What

Deepens the SQL injection guidance so it covers finding and confirming more real injections, not just detecting one. Four skills touched, additive only (60 lines, no deletions):

File Change
skills/bug-bounty/SKILL.md Stack→DBMS fingerprint table, injection-point checklist (sort/ORDER BY columns, headers, cookies, second-order, JSON keys), read-only confirm → prove-impact flow
skills/security-arsenal/METHODOLOGY_CHEATSHEET.md "Prove it's real & readable" step + conditional escalation line
skills/web2-vuln-classes/SKILL.md DBMS fingerprint table + read-only proof one-liner in the SQLi section
skills/security-arsenal/SKILL.md Fingerprint + prove-readable-data payload block

Why

  • Pick the matching blind probe or miss the bug. Firing SLEEP(5) at an MSSQL backend (which needs WAITFOR DELAY) makes a real blind injection read as a clean target. The fingerprint table maps common tech signals (.asp/IIS → MSSQL, .php → MySQL, Java/Python → PG/Oracle) to the right probe.
  • Test more sinks. The coverage checklist points at high-yield, often-skipped points: ORDER BY/sort= columns (can't be parameterized), headers/cookies used in lookups, and second-order paths.
  • Confirm before reporting. A read-only boolean → ORDER BY → UNION → one value flow proves the injection is real and the data is readable — cutting error-only false positives and catching blind cases that a single ' misses.

Scope discipline

Reading a credentials/config table is treated as a valid standalone finding — no RCE required. DB→OS escalation (xp_cmdshell / COPY … FROM PROGRAM / INTO OUTFILE) is kept to a single conditional note: only when the DB account is sysadmin/superuser and host exploitation is in program scope. Read-only proof is preferred throughout; nothing destructive is added.

…read-only impact proof

Strengthen the SQL injection sections so a hunter finds and confirms more
real injections instead of stopping at a single error or sleep.

- bug-bounty: add a stack->DBMS fingerprint table (pick the matching blind
  probe or the bug reads as a clean target), an injection-point checklist
  (sort/ORDER BY columns, headers, cookies, second-order, JSON keys), and a
  read-only confirm -> prove-impact flow. OS-RCE escalation demoted to a
  single scope-conditional note.
- security-arsenal METHODOLOGY_CHEATSHEET: add a "prove it's real & readable"
  step plus a conditional escalation line.
- web2-vuln-classes: add the DBMS fingerprint table and a read-only proof
  one-liner to the SQL injection section.
- security-arsenal: add a fingerprint + prove-readable-data payload block.

Emphasis throughout: reading a credentials/config table is already a valid
finding; DB->OS escalation is conditional and usually out of BBP scope.
Read-only proof preferred; nothing destructive added.
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