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

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 pod kątem wstrzykiwania kodu javascript.

Testowanie pod kątem wstrzykiwania kodu javascript

XSS to atak pozwalający na wstrzyknięcie i wykonanie mogącego wykonać złośliwe działanie kodu HTML lub JavaScript. Może to zostać wykorzystane do kradzieży krytycznych danych (na przykład danych sesji) z plików cookie. Jako, że kod zostaje wykonany w kontekście podatnej aplikacji umożliwia to wykonanie innych ataków jak phishing, logowanie klawiatury, czy przekierowanie… 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 podatności typu „path traversal”

Testowanie podatności typu „path traversal”

Badanie podatności typu „path traversal” polega na sprawdzeniu, czy aplikacja internetowa pozwala na nieautoryzowany dostęp do plików lub katalogów do których dostęp powinien być zabroniony. W przeprowadzeniu tego typu ataku wykorzystuje się parametry przekazywane do aplikacji przedstawiające ścieżki do zasobów na których wykonywane są konkretne operacje, np. odczyt, zapis lub… 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

Test na zgodność danych uwierzytelniających z popularnymi słownikami

Test na zgodność danych uwierzytelniających z popularnymi słownikami

Większość użytkowników aplikacji internetowych nie stosuje się do zaleceń stosowania trudnych, nie słownikowych danych dostępowych. Często opierają swoje hasła na słowach i frazach, których łatwo nie zapomną. Słowa te to imiona dzieci, adresy ulic, ulubiona drużyna piłkarska, miejsce urodzenia itp.  Konta użytkowników – szczególnie administracyjne powinny być chronione za pomocą… Continue reading

Testy wykorzystania kanałów szyfrowanych do przesyłania haseł oraz poufnych danych.

Testy wykorzystania kanałów szyfrowanych do przesyłania haseł oraz poufnych danych

Wszystkie poufne dane takie jak hasła, loginy, czy też numery kart kredytowych powinny być przesyłane szyfrowanym kanałem pomiędzy klientem, a serwerem. Dzięki temu użytkownik chroniony jest przed atakiem typu „man in the midle”, gdzie atakujący jest wpięty w komunikację pomiędzy użytkownikiem a siecią z której aktualnie korzysta. Ma on dostęp… Continue reading

Najczęstsze podatności aplikacji webowych

Najczęstsze podatności aplikacji webowych

Zgodnie ze statystykami prowadzonymi przez organizację OWASP (Open Web Application Security Project) zajmującą się tematyką bezpieczeństwa aplikacji internetowych można wyróżnić dziesięć najczęściej występujących błędów bezpieczeństwa. Grafika poniżej przedstawia częstość wykrywania tych podatności podczas wstępnej oceny ryzyka przez organizację Veracode zajmującej się badaniem bezpieczeństwa aplikacji internetowych. Częstość wykrywania podatności z listy… Continue reading

Co to jest test penetracyjny?

Czym są testy penetracyjne

Testy penetracyjne można zdefiniować jako legalną i autoryzowaną próbę znalezienia i wykorzystania luk bezpieczeństwa w systemach komputerowych w celu poprawienia bezpieczeństwa tychże systemów. Proces ten obejmuje testowanie luk w zabezpieczeniach jak i również dostarczenie pełnych dowodów ataku tzw. POC (proof of concept). Ma to na celu potwierdzenia tego, że raportowane błędy… Continue reading