![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 28.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Podobono można do formularza, który zapisuje dane do bazy, wpisać zapytanie sql, które może wyrządzić jakieś szkody ...
Mam pytanie, jakiego typu są to zapytania i jak to działa - i także chce przetestować, czy u mnie da się tak zaszkodzić? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 384 Pomógł: 0 Dołączył: 3.04.2003 Skąd: Chorzow Ostrzeżenie: (0%) ![]() ![]() |
np. dla zapytania logujacego:
[sql:1:3d5cbf9009] SELECT uid FROM users WHERE user='$user' and pass = '$pass' [/sql:1:3d5cbf9009] podac wartosci: user = root' -- pass = cokolwiek wtedy po podstawieniu zmiennych zapytanie przyjmuje postac: [sql:1:3d5cbf9009] SELECT uid FROM users WHERE user='root' --' and pass = 'cokolwiek' [/sql:1:3d5cbf9009] ... i poniewaz -- oznacza poczatek komentarza do konca lini loguje na root z dowolnym haslem. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 28.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
no niestety u mnie to nie działa - może gdzie zrobiłeś literówke (miślnikówke)?
ja mam taki sql: SELECT name FROM uzytkownicy WHERE login = '$_POST[uzytkownik]' and pass = '$_POST[haslo]' poza tym używam ssl ... no ale u mnie nie nabiera się na taką sztuczkę ... |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat no niestety u mnie to nie działa - może gdzie zrobiłeś literówke (miślnikówke)?
ja mam taki sql: SELECT name FROM uzytkownicy WHERE login = '$_POST[uzytkownik]' and pass = '$_POST[haslo]' Przykład jest dobry, ale widocznie masz u siebie włączony parametr konfiguracyjny magic_quotes_gpc, co powoduje, że każdy string z tablicy $_GET, $_POST i $_COOKIE jest, przed przekazaniem sterowania do Twojego kodu, automatycznie eskejpowany w celu zabezpieczenia się przed takimi sytuacjami.. Cytat poza tym używam ssl ...
A to akurat nie ma znaczenia. ![]() Cytat no ale u mnie nie nabiera się na taką sztuczkę ...
To bardzo dobrze. Tylko pogratulować. ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 28.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
OK, a czy są jakieś inne sposoby?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat OK, a czy są jakieś inne sposoby?
Czego? Zabezpieczania się przed wstawianiem potencjalnie niebezpiecznych znaków? Można samemu eskejpować zawartości zmiennych umieszczanych w zapytaniach funkcjami typu mysql_escape_string czy pg_escape_string. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 28.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Chodziło mi o sposoby włamania jakąś instrukcją ...
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 691 Pomógł: 0 Dołączył: 6.08.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Chodziło mi o sposoby włamania jakąś instrukcją ...
Poszukaj na sieci pod kątem sql-injection. Napewno coś znajdziesz. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 57 Pomógł: 0 Dołączył: 17.04.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Co do SQL-Injection, to znalazlem przed chwila dosc ciekawy artykul na ten temat: SQL Injection Attacks - Are You Safe?
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 07:39 |