W tym rozdziale omówimy atakowanie strony internetowej. Do atakowania stron internetowych, mamy dwa podejścia:
- Możemy użyć metod ataku na stronę internetową, które poznaliśmy do tej pory. Ponieważ wiemy, że strona internetowa jest zainstalowana na komputerze, możemy spróbować zaatakować i włamać się do niej tak samo jak do każdego innego komputera. Ponieważ jednak wiemy, że strona internetowa jest zainstalowana na komputerze, możemy próbować ją zaatakować i włamać się do niej tak samo, jak do każdego innego komputera. Możemy również użyć ataków po stronie serwera, aby sprawdzić, jaki system operacyjny, serwer WWW lub inne aplikacje są zainstalowane. Jeśli znajdziemy jakieś luki w zabezpieczeniach, możemy wykorzystać każdą z nich, aby uzyskać dostęp do komputera.
- Innym sposobem ataku są ataki po stronie klienta. Ponieważ strony internetowe są zarządzane i utrzymywane przez ludzi. Oznacza to, że jeśli uda nam się włamać do któregoś z administratorów strony, prawdopodobnie będziemy w stanie zdobyć jego nazwę użytkownika i hasło, a stamtąd zalogować się do jego panelu administracyjnego lub do Secure Socket Shell (SSH). Następnie będziemy w stanie uzyskać dostęp do każdego z serwerów, których używają do zarządzania stroną.
Jeśli obie metody zawiodą, możemy spróbować przetestować aplikację internetową, ponieważ jest to tylko aplikacja zainstalowana na tej stronie. Dlatego naszym celem może nie być aplikacja webowa, może naszym celem jest po prostu osoba korzystająca z tej strony, ale której komputer jest niedostępny. Zamiast tego, możemy przejść do strony internetowej, włamać się na stronę internetową, a stamtąd przejść do naszej osoby docelowej.
Wszystkie urządzenia i aplikacje są ze sobą połączone, i możemy użyć jednego z nich na naszą korzyść, a następnie zrobić naszą drogę do innego komputera lub do innego miejsca. W tym rozdziale, zamiast skupiać się na atakach po stronie klienta i serwera, będziemy uczyć się o testowaniu bezpieczeństwa samej aplikacji internetowej.
Użyjemy maszyny Metasploitable jako naszej maszyny docelowej, a jeśli uruchomimy polecenie ifconfig, zobaczymy, że jej IP to 10.0.2.4, jak pokazano na poniższym zrzucie ekranu:
Jeśli zajrzymy do folderu /var/www, jesteśmy w stanie zobaczyć wszystkie pliki strony internetowej, jak pokazano na poniższym zrzucie ekranu:
W powyższym zrzucie ekranu, możemy zobaczyć, że mamy phpinfo.php, a my mamy dvwa, mutillidae i phpMyAdmin. Teraz, jeśli przejdziemy do dowolnej maszyny w tej samej sieci, spróbujemy otworzyć przeglądarkę i przejść do 10.0.2.4, zobaczymy, że mamy stronę internetową wykonaną dla Metasploitable, jak pokazano na powyższym zrzucie ekranu. Strona internetowa jest po prostu aplikacją zainstalowaną na przeglądarce internetowej, i możemy uzyskać dostęp do dowolnej strony Metasploitable i użyć jej do przetestowania jej bezpieczeństwa:
Teraz przyjrzymy się stronie DVWA. Wymaga ona nazwy użytkownika jako admin i hasła jako password do zalogowania się. Po wprowadzeniu tych danych uwierzytelniających, jesteśmy w stanie zalogować się do niego, jak pokazano na poniższym zrzucie ekranu:
Po zalogowaniu się, możemy modyfikować ustawienia zabezpieczeń za pomocą karty DVWA Security, jak pokazano na poniższym zrzucie ekranu:
Pod zakładką DVWA Security ustawimy Script Security na low i klikniemy na Submit:
W nadchodzącym rozdziale będziemy utrzymywać to ustawienie na low. Ponieważ jest to tylko kurs wprowadzający, będziemy mówić tylko o podstawowym sposobie wykrywania luk w aplikacjach internetowych zarówno w DVWA jak i w aplikacji Mutilliidae.
Jeżeli przejdziemy do aplikacji Mutillidae w ten sam sposób, w jaki przeszliśmy do aplikacji DVWA, powinniśmy upewnić się, że nasz poziom bezpieczeństwa jest ustawiony na 0, jak pokazano na poniższym zrzucie ekranu:
Możemy zmienić poziom bezpieczeństwa klikając opcję Toggle Security na stronie:
.