Friday, January 8. 2010
Tym razem nie chodzi o żaden przykład z bootcamp. Błąd, który trzeba zauważyć jest co prawda związany z bezpieczeństwem, jest(?) to podatność, ale ryzyko z nią związane jest nikłe. Błąd jest dość oczywisty, fragment kodu:
Ciąg dalszy "Nie jestem purystą, ale... czyli spot the bug" »
Wednesday, January 6. 2010
Pora na rozwinięcie poprzedniej wskazówki podanej we wpisie Bootcamp XVIII: Jak to może być zrobione. Chcę przede wszystkim podkreślić, że tego typu przypadki "występują w naturze", przy czym wykrycie ich nie jest trywialne.
Ciąg dalszy "Bootcamp XVIII: wskazówek część dalsza" »
Monday, January 4. 2010
Nie muszę być ekspertem w konkretnej technologii by móc badać bezpieczeństwo aplikacji z niej korzystającej. Olbrzymia część błędów w aplikacjach nie jest specyficzna dla wykorzystanej technologii (język, framework, ...), choć oczywiście, jakaś grupa problemów specyficznych zawsze się znajdzie. Warto jakieś ogólne pojęcie o programowaniu posiadać, pomoże to w zrozumieniu opisów badanej technologii (czasem trzeba zrobić RTFM). Ważna jest również umiejętność spojrzenia na pewną funkcjonalność i próba określenia jak dana funkcja może być zrealizowana.
W przykładzie http://bootcamp.threats.pl/lesson18/ formatka wyszukiwania pozwala na określenie trzech parametrów, po których wyszukiwanie może się odbyć. Warto zastanowić się, czy:
- wszystkie parametry łącznie mają sens,
- czy wszystkie warianty wyszukiwania (różne kombinacje parametrów) obsługuje jedno zapytanie,
- jakie optymalizacje mogły zostać wprowadzone,
Powodzenia! Na razie jest jedno rozwiązanie tego zadania.
Saturday, January 2. 2010
Już od dłuższego czasu nosiłem się z zamiarem przygotowania przykładu, w którym SQLi nie byłoby tak bardzo oczywiste, a w każdym razie nie na pierwszy rzut oka. Dodatkową motywacją dla mnie stało się nietypowe rozwiązanie jednego z poprzednich zadań, które opisałem we wpisie There's more than one way to skin a cat. Ostatecznie prosty przykład udało mi się w końcu przygotować: http://bootcamp.threats.pl/lesson18/. Zadanie jest proste, wystarczy znaleźć SQLi.
Wednesday, December 30. 2009
Rzecz dotyczy udostępnionego przeze mnie już jakiś czas temu wyzwania. Do tej pory wszystkie rozwiązania były zgodne z moim założeniem. Za pomocą blind SQLi rozpoznawana była struktura bazy danych, z odpowiedniej kolumny pobierany był hash hasła dla konkretnego użytkownika, hash ten był następnie w odpowiedni sposób wykorzystywany. Właśnie to odpowiednie wykorzystanie pobranego z bazy hasha było, w moim zamierzeniu, głównym elementem wyzwania. Wszystko po to, by pokazać, że nie wystarczy hashować hasła, trzeba jeszcze robić to z głową.
Dziś otrzymałem rozwiązanie, które wykracza poza ten schemat. Warto mu się przyjrzeć, bo jest nie tylko ciekawe, ale i w pewnym stopniu... przypadkowe.
Ciąg dalszy "There's more than one way to skin a cat" »