O tym jak bardzo należy uważać i dlaczego przed ostatecznym wypuszczeniem produktu do klienta trzeba wszystko sprawdzić 10 razy, przekonał się niecały miesiąc temu brytyjski oddział Microsoft.
Ich strona nie dość, że wyświetlała bardzo szczegółowe błędy serwera, łącznie z błędną składnią SQL, to w dodatku nie miała żadnej filtracji na parametrach przekazywanych w URL.
Na efekt nie trzeba było długo czekać. Haker o pseudonimie “rEmOtEr” zamienił stronę eventów brytyjskiego Microsoftu na taką, jaką uważał za stosowną. Prawdopodobnie nowa strona nie przypadła do gustu właścicielom serwisu, bo nie wisiała długo.
Szczegółowa lektura dostępna jest pod tym adresem.
Błędy, błędy i jeszcze raz błędy zaniechania, niedoszacowania i niedocenienia użytkowników Internetu powodują takie a nie inne efekty. SQL injection jest jedną z najpopularniejszych metod podmian stron (tzw. deface) i kradzieży danych. Jeśli w swoim procesie analizy zagrożeń serwisu www, który właśnie produkujesz, nie masz badania podatności na SQL injection, odwlecz premierę o tydzień albo dwa i przejrzyj dokładnie kod. Jeśli nie masz w ogóle podobnej analizy, zastanów się jeszcze raz nad sensem istnienia czegoś, co zostanie szybko zniszczone.
W procesie testowania serwisu ITCore.pl przypadło mi napisać scenariusz testowania dla wyszukiwarki jaka będzie zainstalowana na serwisie. Dość duży nacisk położyłem na wykorzystanie różnych potencjalnie niebezpiecznych z punktu widzenia serwisu akcji użytkownika, które mogłyby spowodować ciąg zdarzeń podobnych do tych, jakich doświadczył Microsoft UK.
Przykładowy scenariusz zakłada sprawdzenie wyników wyświetlania takiego zapytania:
‘ UNION SELECT name, type, id FROM sysobjects;–
Testy mam nadzieję zaczną się niedługo, będę miał okazję przekonać się samemu.
Mała niespodzianka: osoba, która jako pierwsza napisze w komentarzu do tego posta, jakiego wyniku nie chcielibyśmy zobaczyć po wykonaniu powyższego wyszukiwania na serwisie ITCore.pl oraz poda prosty kawałek kodu (VB, C#, SQL) pozwalający ustrzec się przed podobnymi sztuczkami użytkowników otrzyma ode mnie w prezencie nieużywaną, nieodpakowaną, świeżą i pachnącą grę na XBOX 360 pt. Forza Motorsport 2. Chętni?
Oczywiście liczą się tylko poprawne odpowiedzi.
Disclaimer: Konkurs organizowany jest przeze mnie, prywatną osobę i nie ma związku z Microsoft Polska sp. z o.o., Microsoft Ireland, Microsoft UK, XBOX czy serwisem ITCore.pl.

Ostatnie komentarze