Reklama Na Blogach Dla każdego programisty największą porażką jest moment, kiedy wychodzi na jaw, że jego skrypt okazał się podatny na atak. Atak który spowodował różnego rodzaju. Od podmiany strony głównej, przez przekierowaniu na porno i kończąc na kradzieży danych wrażliwych (klientów, użytkowników, etc.). Wszystko dlatego, że przez podmianę jednej wartości zmiennej przesyłanej metodą GET, skrypt się wyłożył i pojawił się komunikat z błędem." />
5 Bezpieczeństwo stron WWW 3 minuty czytania

Ataki SQL Injection

Reklama Na Blogach

Dla każdego programisty największą porażką jest moment, kiedy wychodzi na jaw, że jego skrypt okazał się podatny na atak. Atak który spowodował różnego rodzaju. Od podmiany strony głównej, przez przekierowaniu na porno i kończąc na kradzieży danych wrażliwych (klientów, użytkowników, etc.). Wszystko dlatego, że przez podmianę jednej wartości zmiennej przesyłanej metodą GET, skrypt się wyłożył i pojawił się komunikat z błędem.

W najnowszym numerze czasopisma hackin9 (1/2009) jest artykuł poświęcony tym zagadnieniom. Począwszy od dokładnemu opisaniu podstawowych błędów, po bardziej zaawansowane próby wstrzyknięcia złośliwego kodu SQL.

Te najprostsze przykłady można znaleźć nawet na wikipedii, gdzie są opisane przykłady źle napisanych aplikacji z wykorzystaniem bazy danych SQL. Teraz na szczęście takich błędów się nie popełnia, chyba że przez baaardzo początkujących.

Pisząc zaawansowane, nie mam na myśli podmiany cyferek w zmiennej lecz coś w tym rodzaju:

http://strona.pl/?id=xx&zmienna=cos;DACLARE%20@S%20VARCHAR(4000);SET%20@S=CAST(.....)...

Gdyby ktoś chciał się pobawić wstrzykiwaniem magicznych zaklęć SQL to polecam stronę znanej aktorki – Joanny Brodzik ;). Przykład jednego zapytania, które się wykonuje:

http://www.joannabrodzik.pl/index.php?go=aktu&id=11 or 12&page=1

Nie ma tutaj żadnej walidacji parametru id.

Gdyby autor tej strony zapoznał się z tym artykułem, dowiedziałby się, że najprostszym sposobem jest rzutowanie zmiennej – w tym przypadku $_GET['id'] na int. Dzięki czemu takie zapytanie nie przejdzie.

Fajną sprawą w tym artykule jest to, że zostały pokazane również próby ataków na aplikacje pisane w ASP oraz różnice w językach podczas zabezpieczenia aplikacji.

Lekturę tego artykułu polecam każdemu – nawet tym PRO.




Akceptuję politykę prywatności

Raz w miesiącu e-mail z najlepszymi artykułami

Zdjęcie autora wpisu - Piotr Cichosz

Piotr Cichosz — autor wpisu

Frontend developer. Tworzę zaawansowane systemy webowe w JS. Swoją wiedzę nt. SEO wykorzystuję do rozwijania własnych projektów (z lepszym lub gorszym efektem). Dużo eksperymentuję i staram się określić jak bardzo można nagiąć cierpliwość algorytmów Google (:. Prowadzę teraz bloga technologicznego oraz bloga o Apple

Komentarze 5

author sf www 12.01.2009 11:11:03

A czy autor jest PRO? Czy znowu używa mysql_* zamiast PDO i pokazuje te same triki znane od lat, omówione już wielokrotnie w artykułach prasowych i umieszczonych w internecie? ;)

author shpyo www 12.01.2009 11:38:15

Autorem tekstu jest jakiś makaroniarz - Antonio Fanelli ;). Tak, opisuje przykłady SQL jak dla początkujących - to samo jest na wikipedii ;)

author Sylwia www 13.01.2009 10:56:23

Teraz się pojawił nowy wirus, tzn jakiś czas temu, który z kolei do ftp dorzuca kod, trudno to wykryć bo mało kto zagląda do kodów bezpośrednio na serwerze, tylko potem Google odznacza takie strony zaraz jako niebezpieczne. Co do Mysql to podstawa to systematyczny backup.

author jib www 01.02.2009 03:07:53

a może ktoś poleci jak ławo się zabezpieczyć przed tego typu atakiem;?
ostatnio na mojej stronie pojawia się okienko z komunikatem błędu, nie rozumiem tego zbytnio, czy ktoś zmienił mój kod? jak mogę to naprawić, jestem przekonany że sprawa dotyczy injection.

author Michał www 05.05.2009 19:53:53

u mnie na stronie jest bezpiecznie www.forum-wszystko.pl.tl

Dodaj komentarz