Zbudowanie izolowanej sieci wewnętrznej VirtualBox bez dostępu do obcych systemów.
Wykrycie własnych hostów i kontrolowane sprawdzenie kilku wskazanych portów.
Porównanie stanów open, closed i filtered po odwracalnej zmianie usługi lub firewalla.
Identyfikacja usługi z uwzględnieniem ograniczeń rozpoznawania wersji.
Zapisanie poleceń, wyników, czasu i zakresu w raporcie studenta.
Wymóg bezwzględny
Autoryzacja i granice ćwiczenia
Wolno skanować wyłącznie własne maszyny w LAB-CYBER albo systemy objęte jednoznaczną zgodą właściciela. Znajomość adresu IP nie oznacza zgody na skanowanie.
Nie używaj Bridged Adapter. Nie skanuj sieci uczelni, pracodawcy, dostawcy Internetu, publicznych adresów ani urządzeń innych osób.
Granice autoryzowanego laboratorium Nmap
Dozwolone
Niedozwolone
Reakcja na wątpliwość
192.168.77.10 oraz własna LAB-CYBER
obce podsieci, publiczne adresy i tryb bridge
zatrzymaj polecenie i zapytaj prowadzącego
-sn, -sT, kilka wskazanych portów, -sV --version-light
W obu maszynach wybierz Internal Network i wpisz identyczną nazwę LAB-CYBER. Sieć wewnętrzna nie ma bramy domyślnej ani połączenia z Internetem.
Opcjonalny drugi adapter NAT włączaj tylko na czas aktualizacji i instalacji pakietów. Przed rozpoczęciem skanowania odłącz kabel tego adaptera w ustawieniach VirtualBox i potwierdź trasę poleceniem ip route.
Dostęp do konsoli obu własnych maszyn i możliwość wykonania migawki.
Nmap na VM-ANALITYK; OpenSSH Server, nginx i UFW na VM-SERWER.
Stan kontrolowany
Przygotowanie obu maszyn
Wykonaj migawkę obu maszyn. Nazwę interfejsu LAB odczytaj przez ip -br link i wstaw zamiast INTERFEJS_LAB. Polecenia adresujące wykonuj z konsoli, wyłącznie na dedykowanym adapterze LAB-CYBER.
VM-SERWER
sudo ip address replace 192.168.77.10/24 dev INTERFEJS_LAB
sudo ip link set INTERFEJS_LAB up
ip -br address show dev INTERFEJS_LAB
ip route
# Tylko podczas podłączonego adaptera NAT:
sudo apt update
sudo apt install -y openssh-server nginx ufw
sudo systemctl enable --now ssh nginx
# Po instalacji odłącz adapter NAT.
VM-ANALITYK
sudo ip address replace 192.168.77.20/24 dev INTERFEJS_LAB
sudo ip link set INTERFEJS_LAB up
ip -br address show dev INTERFEJS_LAB
ip route
# Tylko podczas podłączonego adaptera NAT:
sudo apt update
sudo apt install -y nmap wireshark
# Po instalacji odłącz adapter NAT.
Na VM-SERWER zapisz wynik sudo ufw status verbose, systemctl is-active ssh nginx i ss -lnt. Do ćwiczenia firewalla przejdź tylko wtedy, gdy UFW był początkowo nieaktywny i można przywrócić ten stan.
Najpierw host
Test łączności i wykrywanie hostów
Podstawowa łączność
ping -c 4 192.168.77.10
Działanie:
Wysyła cztery komunikaty ICMP Echo Request do własnej VM-SERWER.
Oczekiwany wynik:
Odpowiedzi z 192.168.77.10 i brak wyjścia poza LAB-CYBER.
Interpretacja:
Odpowiedź potwierdza osiągalność w tej chwili, ale nie potwierdza dostępności wszystkich usług.
Ograniczenie:
Brak odpowiedzi może wynikać z filtrowania ICMP, a nie z wyłączenia hosta.
Host discovery w LAB-CYBER
nmap -sn 192.168.77.0/24 -oN lab04-hosty.txt
Działanie:
Pomija klasyczny skan portów, wykrywa hosty we własnej podsieci i zapisuje zwykły wynik tekstowy.
Oczekiwany wynik:
W izolowanej sieci powinny być widoczne VM-ANALITYK oraz VM-SERWER, zależnie od metod i uprawnień.
Interpretacja:
Porównaj wykryte adresy z tabelą inwentaryzacji; dodatkowy host wymaga sprawdzenia konfiguracji VirtualBox.
Ograniczenie:
Brak wpisu nie dowodzi, że host jest wyłączony; filtrowanie i zastosowana metoda wpływają na wynik.
Uruchom nginx ponownie. Z konsoli VM-SERWER włącz lokalny firewall tylko dla tego scenariusza. Reguła zachowuje SSH z VM-ANALITYK i filtruje HTTP z tego samego hosta.
# VM-SERWER — najpierw potwierdź, że początkowo UFW był inactive
sudo systemctl start nginx
sudo ufw allow proto tcp from 192.168.77.20 to any port 22
sudo ufw deny proto tcp from 192.168.77.20 to any port 80
sudo ufw --force enable
sudo ufw status verbose
# VM-ANALITYK
nmap -sT --reason -p 22,80 192.168.77.10 -oN lab04-filtered.txt
# VM-SERWER — przywrócenie początkowego stanu laboratorium
sudo ufw disable
sudo ufw delete deny proto tcp from 192.168.77.20 to any port 80
sudo ufw delete allow proto tcp from 192.168.77.20 to any port 22
sudo systemctl start nginx
Typ odpowiedzi firewalla wpływa na klasyfikację. Zapisz stan faktycznie pokazany przez Nmap i wartość REASON; nie dopasowuj wyniku do oczekiwanej etykiety. Gdy UFW był aktywny przed ćwiczeniem, nie wyłączaj go i użyj migawki lub instrukcji prowadzącego.
Własne obserwacje
Tabela wyników, pytania i zadanie samodzielne
Miejsca na wyniki studenta CYB-01
Etap
Port lub zakres
Wynik studenta
Dowód
Interpretacja i ograniczenie
Wykrywanie hostów
Usługa uruchomiona
80/tcp
Usługa zatrzymana
80/tcp
Reguła firewalla
80/tcp
Identyfikacja usługi
22,80/tcp
Pytania kontrolne
Dlaczego znajomość adresu IP nie stanowi zgody na skanowanie?
Czym TCP Connect scan różni się od samego wykrywania hostów?
Jak Nmap opisuje port, na którym działa usługa przyjmująca połączenia?
Dlaczego closed nie oznacza, że host jest wyłączony?
Dlaczego filtered nie dowodzi, że za filtrem działa usługa?
Jakie czynniki mogą spowodować błędne rozpoznanie wersji usługi?
Które dane trzeba zapisać, aby inna osoba mogła powtórzyć pomiar?
Zadanie samodzielne
Wybierz jeden dodatkowy, wcześniej uzgodniony port powyżej 1024 na VM-SERWER. Uruchom na nim własną prostą usługę laboratoryjną, sprawdź tylko ten port przez -sT, zatrzymaj usługę i powtórz pomiar. Raport ma zawierać zakres, dwa wyniki, zmianę na serwerze, interpretację oraz przywrócenie stanu. Nie używaj NSE ani publicznego celu.
Od objawu do testu
Najczęstsze problemy
Najpierw porównaj ustawienia adapterów i stan usług, dopiero potem zmieniaj polecenie Nmap.
Najczęstsze problemy CYB-01
Objaw
Możliwa przyczyna
Pierwszy bezpieczny krok
Brak obu maszyn w wyniku -sn
inny typ adaptera lub inna nazwa sieci wewnętrznej
porównaj ustawienie Internal Network i dokładną nazwę LAB-CYBER
Ping nie działa
błędny adres, interfejs down albo filtr ICMP
sprawdź ip -br address, link i reguły na VM-SERWER
Wszystkie porty są closed
usługi nie działają lub nasłuchują tylko na loopback
sprawdź systemctl i ss -lnt na konsoli serwera
Port nie zmienia się na filtered
reguła nie działa albo firewall zwraca jednoznaczne odrzucenie
sprawdź sudo ufw status verbose i zanotuj rzeczywisty wynik
-sV podaje tylko ogólną nazwę
usługa nie ujawnia wersji lub odpowiedź jest niejednoznaczna
zapisz ograniczenie zamiast zgadywać wersję
Nmap zgłasza host down
host discovery nie otrzymał odpowiedzi
potwierdź adres na konsoli i łączność L2; nie rozszerzaj zakresu