SQL Blind Injection Wirkungsweise: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| Zeile 3: | Zeile 3: | ||
=Länge der Passworts ermitteln= | =Länge der Passworts ermitteln= | ||
*select username from users where username='hans.will' and length(password) > 5; | *select username from users where username='hans.will' and length(password) > 5; | ||
| − | +-------+ | + | +-----------+ |
| − | | | + | | username | |
| − | +-------+ | + | +-----------+ |
| − | | | + | | hans.will | |
| − | +-------+ | + | +-----------+ |
1 row in set (0.00 sec) | 1 row in set (0.00 sec) | ||
| − | *select | + | *select username from users where username='hans.will' and length(password) > 10; |
+-------+ | +-------+ | ||
| user | | | user | | ||
Version vom 30. August 2023, 09:49 Uhr
Wir wollen das Passwort herausfinen ohne es zu sehen
- In diesem Beispiel benutzen wir zur Vereinfachung nur Zahlen
Länge der Passworts ermitteln
- select username from users where username='hans.will' and length(password) > 5;
+-----------+ | username | +-----------+ | hans.will | +-----------+ 1 row in set (0.00 sec)
- select username from users where username='hans.will' and length(password) > 10;
+-------+ | user | +-------+ | erwin | +-------+ 1 row in set (0.00 sec)
- select user from my_auth where user='erwin' and length(password) = 6;
+-------+ | user | +-------+ | erwin | +-------+ 1 row in set (0.00 sec)
- Erkenntnis das Passwort ist genau 6 Zeichen lang.
- select user from my_auth where user='erwin' and substring(password,1,1) > 5 ;
Empty set (0.00 sec)
- select user from my_auth where user='erwin' and substring(password,1,1) > 3 ;
Empty set (0.00 sec)
- select user from my_auth where user='erwin' and substring(password,1,1) > 2 ;
+-------+ | user | +-------+ | erwin | +-------+ 1 row in set (0.00 sec)
- select user from my_auth where user='erwin' and substring(password,1,1) = 3 ;
+-------+ | user | +-------+ | erwin | +-------+ 1 row in set (0.00 sec)
- Erkenntnis Erstes Zeichen gleich 3