Napisał
Jarek3366
i teraz jesta mała zagwostka bo or 1=1-- dział tylko wtedy gdzi wcześniej sie zalogowałem na konto które chce usunąc a jażeli wybiore sobie jakiegos innego uzytkownika to nie działa :(
Czy ktoś wie dlaczego ??
przyczyn może być wiele....
sądząc po urlu:
index1.php?action=1006&pageno=delete&pagez=1&Xlogi n=on1212
&haslo=' or1=1--'
od strony kodu prawdopodobnie będzie to wygladało mniejwiecej tak:
(oczywiście pomijam tutaj kilka zmiennych z $_GET)
Kod:
DELETE FROM `users` WHERE login="on1212" AND pass='$pass'
$pass to to co przypisujesz zmiennej haslo w url wiec jesli przypiszesz
' or1=1-- to po twojej modyfikacji kod wygląda tak:
Kod:
DELETE FROM `users` WHERE login='on1212' AND pass=' ' or 1=1--
czyli usuń z tabeli users rekord gdzie login to on1212 i hasło jest puste lub 1=1 a ze 1=1 jest zawsze to usuwasz znajomość hasła nie jest konieczne....
teraz kolejne zmienne z url...
action=1006
pageno=delete
pagez=1
pageno - prawdopodobnie odpowiedzialny za wybranie instrukcji delete z bloku instrukcji ;)
pagez - nie mam pojęcia :D
action - też nie ma pojecia :D ale mam podejrzenia że może być to ID danego usera - wsumie troche to logiczna akcja na userze o id 1006
wiec kod może wyglądać tak:
Kod:
DELETE FROM `users` WHERE id='$action' login='on1212' AND pass='$pass'
wtedy nie wystarczy że zmienisz login musisz też zmienić id (czyli action)
// ale to tylko przypuszczenia :D
// musisz sprawdzać aplikacje - zakładać kilka kont zobaczyć co sie w jakich warnkach zmienia - myśleć jakie dane podawałeś - dopasowywać to co masz z tym co podawałeś itp... :D
tak czy inaczej przyczepiłeś się troszkę tego usuwania userów niepotrzebnie - skoro tu jest sql inj to duze prawdopodobienstwo ze i jest ono gdzie indziej moze w pliku odpowiedzialnym za wydrukowanie listy userów... może w jakimś pliku do drukowania artykułów - sprawdzaj tam gdzie skrypt coś wypluwa z bazy....