Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
sqlite-cte-nest — SQLite 3.53.4 – Hoch – Lokal – Absturz – verschachtelte CTEs umgehen die nNestSel-View-Tiefenbegrenzung | Kitploit
Tools/GitHubGitHub/abraxas/sqlite-cte-nest
Statische AnalyseSchwachstellenanalyseExploitationFuzzingPapers & ForschungDatenbanksicherheit
GitHubabraxas/sqlite-cte-nest

sqlite-cte-nest

SQLite 3.53.4 – Hoch – Lokal – Absturz – verschachtelte CTEs umgehen die nNestSel-View-Tiefenbegrenzung

Repository anzeigen
vor 6 TagenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Abraxas Labs - sqlite-cte-nest

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  sqlite-cte-nest

sqlite-cte-nest

Klasse: Crash Reichweite: Lokal

SQLite 3.53.4 (b09c88c14082339b66c7b7158d609a771e64ca69, SOURCE_ID 2026-07-24 19:02:57 bf7c7f30031888f4e796e429ab3978879485813aaca6f641c7b33e4e09459bcc) - Hwaci

sqlite3ResultSetOfSelect erhöht nNestSel und meldet VIEWs and/or subqueries nested too deep, wenn die Kette SQLITE_LIMIT_EXPR_DEPTH erreicht. Verschachtelte VIEWs stoßen auf diesem Pin bereits an diese Grenze. Das Anhängen von CTEs in select.c:5754 (sqlite3SrcItemAttachSubquery) erhöht nNestSel nicht. selectExpander / sqlite3WalkSelect rekursieren dann durch die CTE-Kette, bis der C-Stack stirbt.

Eine kleine CTE-Kette liefert eine Zeile. Verschachteltes FROM bei N=25000 ist ein Parser-Recursion limit und stürzt nicht ab. Verschachtelte VIEWs bei .limit expr_depth 20 melden too-deep. CTE N=25000 ist ein ASan-Stack-Overflow. Kein RCE.

IDnoch keine CVE
KlasseCrash (ASan-Stack-Overflow in selectExpander; kein nachgewiesenes RCE)
ReichweiteLokal (nicht vertrauenswürdiges SQL oder verschachteltes CTE-Schema)
CWECWE-674
CVSSHoch: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
ProduktSQLite (GitHub-Spiegel sqlite/sqlite)
Betroffen3.53.4 (b09c88c); Überbleibsel des späteren Trunk-CTE nNestSel
Authnicht vertrauenswürdiges SQL oder eine eingeschleuste WITH-Kette
LizenzGNU Affero GPL v3.0
Labnur 127.0.0.1:18810. ASan-Amalgamation. Crash-Witness.

Was ein Angreifer tun kann

Eine lange CTE-Kette einspeisen, als SQL oder als VIEW-Body in einer nicht vertrauenswürdigen .db:

WITH c0 AS (SELECT 1),
     c1 AS (SELECT * FROM c0),
     ...
     cN AS (SELECT * FROM cN-1)
SELECT * FROM cN;

selectExpander durchläuft jede CTE als verschachtelte FROM-Subquery. nNestSel bewegt sich nie. Der Host-Prozess stirbt am C-Stack. Verschachtelte VIEWs sind bereits begrenzt. Verschachteltes FROM stößt an das Parser-Rekursionslimit. Dieses Überbleibsel ist der CTE-Anhang-Pfad. SQLite evaluiert die CTE-Namen nicht in eine Shell. Crash, kein RCE.

Wie ich es gefunden habe

Zwanzig Quelltext-Jagden auf https://github.com/sqlite/sqlite Tag https://github.com/sqlite/sqlite/releases/tag/version-3.53.4. Verschachtelte VIEWs waren auf diesem Pin begrenzt (3f3fb9b638 / branch-3.53 38430aa5ed, 2026-06-16). Der CTE-Anhang war es nicht. Trunk f547308713 (2026-10-05) liegt nach diesem GA.

Bereits dokumentierte Irrwege: verschachtelte VIEWs als den Crash zu behandeln (sie melden too-deep); verschachteltes FROM N=25000 als den Crash zu behandeln (Parser-Recursion limit); eine 5-CTE-Kette als Beweis zu nehmen, dass die Begrenzung greift.

Lab

cd lab
./run.sh

Offizielles sqlite-src-3530400-Zip, ASan-Amalgamation, Compose sqlite-cte-nest, veröffentlicht auf 127.0.0.1:18810. Binde es an Loopback. Richte dies nicht auf die SQLite-Instanz anderer Leute.

SUCCESS sqlite-cte-nest how=asan-stack-overflow crash-n=25000 small-cte=ok nested-views=too-deep nested-from=rejected SQLITE-CTE-NEST-WITNESS

Der Fix

nNestSel beim CTE-Anhang so erhöhen, wie es sqlite3ResultSetOfSelect bereits für VIEWs tut, und bei SQLITE_LIMIT_EXPR_DEPTH einen Fehler melden. Trunk f547308713 (2026-10-05, "Limit the depth of recursion for CTEs using SQLITE_LIMIT_EXPR_DEPTH") ist diese Art von Patch. Er ist nicht in 3.53.4.

Referenzen

  • https://github.com/sqlite/sqlite Tag https://github.com/sqlite/sqlite/releases/tag/version-3.53.4 (b09c88c14082339b66c7b7158d609a771e64ca69)
  • Kanonisch https://sqlite.org/src SOURCE_ID 2026-07-24 19:02:57 bf7c7f30031888f4e796e429ab3978879485813aaca6f641c7b33e4e09459bcc
  • src/select.c sqlite3ResultSetOfSelect (nNestSel++), CTE-Anhang :5754
  • src/walker.c sqlite3WalkSelectFrom Subquery-Walk
  • selectExpander / sqlite3SelectExpand
  • Forum-Bug 2026-10-04T04:58:58Z; Trunk f547308713
Tool herunterladen