auth-bypass
Testuj luki w autentykacji i autoryzacji aplikacji — IDOR, JWT, Session i parametry uprawnień.
Instalacja
Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.
Instalacja
O skillu
Skill do wykrywania i wykorzystywania luk w mechanizmach autentykacji i kontroli dostępu. Obsługuje testowanie IDOR (niezabezpieczonych bezpośrednich odwołań do obiektów), manipulację parametrami uprawnień (role, is_admin, level), ataki na tokeny JWT oraz sesje. Przydatny podczas testów bezpieczeństwa aplikacji z funkcjami logowania, kontrolą dostępu opartą na rolach i tokenami sesji. Pozwala zidentyfikować, czy aplikacja prawidłowo weryfikuje uprawnienia użytkownika przy dostępie do zasobów.
Jak używać
Zidentyfikuj wskaźniki autentykacji w celu: funkcje logowania/rejestracji, parametry user_id lub uid w URL-ach, tokeny JWT, ciasteczka sesji, parametry roli (role=, is_admin=) oraz endpointy API (np. /api/admin/, /api/user/).
Testuj IDOR, modyfikując identyfikatory zasobów w żądaniach HTTP — zmień user_id=1 na user_id=2, order_id=1001 na order_id=1002 i obserwuj, czy aplikacja zwraca dane innych użytkowników bez weryfikacji uprawnień.
Sprawdź parametry uprawnień w żądaniach POST/PUT — wyślij dane z parametrami role, is_admin lub level i spróbuj zmienić je na wartości wyższe (np. role: "admin", is_admin: true) aby sprawdzić, czy serwer akceptuje zmianę bez walidacji.
Analizuj tokeny JWT — dekoduj token, sprawdź algorytm podpisu, spróbuj zmienić alg na "none", zmień user_id lub role w payload i ponownie zakoduj token, następnie wyślij go w żądaniu.
Testuj ataki na sesje — spróbuj uzyskać niezalogowaną sesję, sprawdź czy można ją ustalić przed logowaniem, oraz czy aplikacja pozwala na jednoczesne użycie tej samej sesji przez różnych użytkowników.
Dokumentuj wszystkie pozytywne wyniki — zanotuj które parametry są podatne, jakie dane można uzyskać bez autoryzacji oraz które endpointy nie weryfikują uprawnień użytkownika.