Tplmap – zidentefikuj i wykorzystaj silnik szablonu

tplmap-confirmed-injection

Gdy przeprowadzasz test penetracyjny strony internetowej, która generuje dynamiczne treści przy użyciu szablonów z wartościami podanymi przez użytkownika możesz natrafić na podatność typu Server-Side Template Injection. Ręczna identyfikacja silnika szablonu, z jaką masz do czynienia i późniejsza exploitacja może zostać w łatwy sposób zautomatyzowana przy pomocy narzędzia Tplmap. Tplmap jest… Continue reading

PassiveTotal – znajdź ukryte poddomeny

passive total lista subdomen

Podczas brania udziału w bug bunty czy też testów penetracyjnych -niezwykle istotne jest pozyskanie jak największej ilości informacji o celu swojego ataku. Nazywamy to fazą rekonesansu. Czasami ciekawe efekty można uzyskać poprzez odwołanie się do starych, zapomnianych lub z pozoru ukrytych domen, poddomen czy też adresów IP. Ślepe strzelanie w… Continue reading

Serpico – zautomatyzuj pisanie raportów

serpico

Chyba większość pentesterów na pytanie, “za czym najmniej przepada w testach penetracyjnych?” – zgodnie odpowie, że za pisaniem raportów z tychże testów. Jest to dość żmudny proces, zajmujący wiele czasu i wymagający opisania znalezionych podatności pod kątem różnego rodzaju odbiorców. Pisałem o tym tutaj – “Jak powinien wyglądać dobry raport… Continue reading

Retire.js – odpowiedź na pytanie czy nie używasz przestarzałych komponentów

komponenty ze znanymi podatnościami

Ręczne przekopywanie się przez kod źródłowy w celu identyfikacji wszystkich przestarzałych i podatnych na atak bibliotek naszej aplikacji webowej jest ogromnie czasochłonne. Możemy to zadanie nieco zautomatyzować za pomocą narzędzia Retire.js. Jest ono dostępne zarówno z poziomu przeglądarki (Chrome, Firefox) jak i wtyczki do Burpa. „Używanie komponentów ze znanymi podatnościami”… Continue reading

Jak zwiększyć bezpieczeństwo wordpressa? – czyli własny hardening cmsa

Jak zwiększyć bezpieczeństwo wordpressa

Treściwa lista rzeczy, które można zrobić aby zwiększyć bezpieczeństwo strony postawionej na wordpresie: przeniesienie/zmiana nazwy pliku wp-login.php, a tym samym domyślnej strony logowania; usunięcie pliku readme.html, który udostępnia wersje wordpressa; skorzystanie z wtyczki “Wordfence” która daje nam:  ochronę w czasie rzeczywistym przed znanymi atakami. Działa to w ten sposób, że… Continue reading

Przykładowy raport z rzeczywistego testu penetracyjnego

Przykładowy raport z rzeczywistego testu penetracyjnego

W ramach swojej pracy magisterskiej miałem okazję przeprowadzić pełny test penetracyjny komercyjnej aplikacji webowej napisanej z użyciem ASP.NET. Wynikiem moich badań jest raport, którym postanowiłem podzielić się w “zaciemnionej” formie z szerszym gronem osób. Materiały tego typu w naszym ojczystym języku są towarem deficytowym. W zasadzie jedyny, który znam z… Continue reading

Jak powinien wyglądać dobry raport z testu penetracyjnego?

dobry raport z testu penetracyjnego

Doświadczony pentester, wie że dobrze napisany raport cechuję się tym, że po jego prezentacji klient nie ma żadnych dodatkowych pytań. Aby było to możliwe powinien on zawierać co najmniej cztery podstawowe sekcje z informacjami przeznaczonymi dla różnej grupy odbiorców. Sekcja 1: Ogólne informacje i statystyki Podczas, gdy programista mający naprawić… Continue reading

Testowanie pod kątem wstrzykiwania zapytań SQL

Testowanie pod kątem wstrzykiwania zapytań SQL

Ataki typu SQL injection polegają na wstawieniu lub „wstrzyknięciu” zapytania SQL za pośrednictwem danych wejściowych przesyłanych przez klienta do aplikacji. Pomyślnie przeprowadzony atak tego typu może posłużyć do odczytu wrażliwych informacji z bazy danych oraz ich modyfikacji, czy też usunięcia. W najbardziej skrajnych przypadkach umożliwia on wydawanie poleceń systemowych. Poniżej… Continue reading

Testowanie podatności typu „CSRF”

Testowanie podatności typu „CSRF”

Atak typu CSRF (cross site request forgery) polega na wykorzystaniu ogólno przyjętej logiki działania przeglądarek internetowych dotyczących zarządzania sesją użytkownika w otwartych stronach. Standardem jest, że użytkownik może posiadać tylko jedną aktywną sesję w aplikacji internetowej z której aktualnie korzysta. Każda nowo otwarta karta w przeglądarce będzie automatycznie korzystać z… Continue reading

Testowanie procesu zarządzania sesją

Testowanie procesu zarządzania sesją

Proces zarządzania sesją obejmuje w szerokim zakresie wszystkie mechanizmy kontrolne użytkownika od uwierzytelnienia do opuszczenie aplikacji. HTTP jest protokołem bezstanowym, co oznacza, że ​​serwery WWW odpowiada na żądania klienta bez  ustanawiania ciągłego połączenia z nim.  Z tego względu nawet prosta aplikacja wymaga wysłania przez użytkownika wielu żądań, zanim zostanie powiązana… Continue reading