DWIN13/raport.md

46 lines
2.6 KiB
Markdown
Raw Normal View History

2020-06-18 02:51:47 +02:00
# Agata Lenz - Testy Penetracyjne
## Zadanie zaliczeniowe z przedmiotu Wprowadzenie do Testowania
### Opis
Moim zadaniem zaliczeniowym było utworzenie raportu na podstawie przeprowadzonych testów penetracyjnych strony https://google-gruyere.appspot.com/part1.
W tym celu wygenerowałam unikalne id, dlatego testy zostały przeprowadzone na stronie https://google-gruyere.appspot.com/427718249942042260769664292874039511420/.
### Spis treści
* [Lista użytych narzędzi](#lista-narzędzi)
* [Znalezione podatności](#znalezione-podatności)
* [Scenariusze testów](#scenariusze-testów)
* [Możliwe zastosowania](#możliwe-zastosowania)
## Lista użytych narzędzi
Testy zostały przeprowadzone przy użyciu przeglądarki FireFox, dostępnego w niej zestawu narzędzi deweloperskich oraz dodatkowego rozszerzenia Web Developer dla tejże przeglądarki.
## Znalezione podatności
### manipulacja zapytań http
Wskutek obsługi formularzy przy użyciu metody GET zamiast POST, przekazywane zapytania widoczne są w adresie url, tym samym narażone zostają na ataki, a manipulacja przekazywanymi danymi jest bardzo prosta.
Np. fragment zapytania tworzącego nowe konto użytkownika: https://.../saveprofile?action=new&uid=agata&pw=agata&is_author=True można łatwo zmanipulować na: https://.../saveprofile?action=update&uid=agata&is_admin=True.
### cross site scripting
Zarówno pola formularzy, jak i upload plików czy nawet adres url są narażone na ataki XSS - bez problemu można dokonać wstrzyknięcia kodu skryptu.
### nieprawidłowe uprawnienia administratora
Po otwarciu linku https://google-gruyere.appspot.com/427718249942042260769664292874039511420/quitserver następuje zamknięcie serwera - taką możliwość powinien mieć wyłącznie administrator, tymczasem nie trzeba być nawet zalogowanym użytkownikiem, aby do tego doprowadzić.
### brak ochrony bazy danych
Wyświetlenie bazy danych jest możliwe dzięki: {{_db:pprint}}
## Scenariusze testów
### nadanie sobie uprawnień administratora
1. Utwórz nowe konto użytkownika
2. Zmień adres url na: https://google-gruyere.appspot.com/427718249942042260769664292874039511420/saveprofile?action=update&uid=username&is_admin=True, gdzie *username* to Twoja nazwa użytkownika
3. Aplikacja powinna zalogować Cię do Twojego konta
4. Wyloguj się
5. Zaloguj się z powrotem przy pomocy takich samych danych, jak przy tworzeniu nowego konta
6. W prawym górnym rogu pojawi się zakładka *Manage this serwer*, dostępna tylko dla użytkowników z uprawnieniami administratora.
![Widok administratora strony](C:\Users\48731\Desktop\gruyere\images\g1.png)