Jednym ze sposobów exploitowania sql injection jest wyświetlenie większej ilości danych poprzez zmianę warunków zapytania SQL. Można to zrobić w prosty sposób poprzez dopisanie do zapytania OR z warunkiem, który zawsze będzie prawdziwy. Z tą techniką jest jednak jeden problem - tak zmodyfikowane zapytanie zwraca często dużo danych. Na tyle dużo, że aplikacja może sobie nie poradzić z ich przetworzeniem i z SQLi robi się wyjątkowo skuteczny atak DoS... Technika z AND jest jednak nieco bezpieczniejsza. A jeśli już OR, to warto dodać limity na ilość zwracanych danych.
Tuesday, September 7. 2010
Ślady
Jak szukać SQLi - przykład
Dzisiaj kontynuacja cyklu "zrób to sam w weekend". Tym razem przykład jak szukać błędów typu sql injection (patrz: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')) Podobnie jak ostatnim razem wpis nie będzie zawierał j
Dzisiaj kontynuacja cyklu "zrób to sam w weekend". Tym razem przykład jak szukać błędów typu sql injection (patrz: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')) Podobnie jak ostatnim razem wpis nie będzie zawierał j
Weblog: Wampiryczny blog
Przesłany: Dec 11, 16:18
Przesłany: Dec 11, 16:18
wartosc' AND 1=1 --
wartosc' AND 1=0 --
wa'||'rtosc
Niż wrzucenie od razu:
wartosc' OR 1=1 --
Po prostu przy takim "macaniu" można zabić aplikację, bo zapytanie zwróci tak dużo wyników, że aplikacja albo zajmie się sobą, albo ogólnie tchórzliwie odmówi współpracy.