Skrypty do enumeracji sieci
Zautomatyzują Państwo rozpoznanie za pomocą skryptów Nmap NSE i własnych skanerów w Pythonie.
Skrypty do enumeracji sieci to bezpłatna lekcja Cyber Security Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cyber Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Dlaczego automatyzować rozpoznanie
Ręczne skanowanie dużych sieci jest powolne i podatne na błędy. Skrypty łączą Nmap, Netcat i inne narzędzia w powtarzalne potoki, które analizują dane wyjściowe i przekazują wyniki do dalszej analizy.
Przegląd skryptów Nmap NSE
Nmap Scripting Engine (NSE) uruchamia skrypty Lua względem wykrytych usług. Skrypty są uporządkowane według kategorii: auth, brute, default, discovery, exploit, safe i vuln.
# Run default safe scripts
nmap -sC 192.168.1.100
# List all scripts
ls /usr/share/nmap/scripts/ | grep http
# Run specific script
nmap --script=http-title 192.168.1.100Popularne skrypty NSE
Najważniejsze skrypty do enumeracji: http-title, http-headers, smb-enum-shares, ftp-anon, dns-brute i ssh-hostkey.
nmap --script=smb-enum-shares -p 445 192.168.1.100
nmap --script=ftp-anon -p 21 192.168.1.100
nmap --script=dns-brute --script-args dns-brute.domain=target.com 192.168.1.1Skrypty z kategorii vuln
Kategoria vuln sprawdza obecność znanych podatności. Skrypty vuln generują więcej szumu i mogą doprowadzić do awarii usług — należy ich używać wyłącznie za wyraźną zgodą.
sudo nmap --script=vuln 192.168.1.100
# Specific vuln checks:
nmap --script=ms17-010 -p 445 192.168.1.100 # EternalBlue
nmap --script=http-shellshock 192.168.1.100Parsowanie wyjścia XML Nmap za pomocą języka Python
Wyjście XML Nmapa w formacie -oX jest czytelne maszynowo. Biblioteka python-libnmap dla języka Python umożliwia jego przejrzyste parsowanie na potrzeby niestandardowych raportów lub przekazywania danych do innych narzędzi.
# Install
pip install python-libnmap
# Parse results
from libnmap.parser import NmapParser
report = NmapParser.parse_fromfile("scan.xml")
for host in report.hosts:
for svc in host.services:
if svc.state == "open":
print(f"{host.address}:{svc.port} {svc.service}")Prosty skaner portów w Pythonie
Proszę zbudować minimalny skaner portów za pomocą modułu socket języka Python. Jest to przydatne, gdy Nmap jest niedostępny lub potrzebne jest niestandardowe podejście do skanowania.
import socket
from concurrent.futures import ThreadPoolExecutor
def scan_port(host, port):
try:
s = socket.socket()
s.settimeout(0.5)
s.connect((host, port))
print(f"Open: {port}")
s.close()
except: pass
with ThreadPoolExecutor(100) as ex:
for p in range(1, 1025):
ex.submit(scan_port, "192.168.1.100", p)Jednowierszowe polecenia Bash do enumeracji
Bash umożliwia szybkie wykrywanie hostów i portów za pomocą pseudourządzenia /dev/tcp, bez użycia zewnętrznych narzędzi.
# Check if port is open (bash built-in)
timeout 1 bash -c "echo >/dev/tcp/192.168.1.100/80" && echo open
# Loop over hosts
for i in $(seq 1 254); do
ping -c1 -W1 192.168.1.$i &>/dev/null && echo "192.168.1.$i up"
doneSkryptowanie enumeracji DNS
Proszę zautomatyzować enumerację DNS za pomocą dnsrecon, amass lub niestandardowych skryptów, które wysyłają zapytania o rekordy A, MX, NS, TXT i CNAME oraz wykonują brute force subdomen.
dnsrecon -d target.com -t std
amass enum -d target.com
# Manual zone transfer attempt
dig axfr target.com @ns1.target.comEnumeracja SMB za pomocą enum4linux
enum4linux automatyzuje enumerację SMB: udziałów, użytkowników, grup, zasad haseł i informacji o systemie operacyjnym hostów Windows/Samba bez uwierzytelnienia.
enum4linux -a 192.168.1.100
# -a = all enumeration
# Shows: shares, users, groups,
# password policy, OS versionEnumeracja SNMP
SNMP w wersjach v1/v2c używa ciągów community — często "public" — do uwierzytelniania. Odpytywanie SNMP ujawnia informacje o systemie, uruchomionych procesach, interfejsach sieciowych i zainstalowanym oprogramowaniu.
# Query with default community string
snmpwalk -c public -v2c 192.168.1.100
# Get system info only
snmpget -c public -v2c 192.168.1.100 1.3.6.1.2.1.1.1.0
# Brute force community strings
onesixtyone -c community.txt 192.168.1.100Organizowanie wyników
Ustrukturyzowane wyniki mają kluczowe znaczenie podczas dużych audytów. Proszę używać osobnych katalogów dla każdego celu, spójnego nazewnictwa (target_service_date) oraz narzędzi takich jak tmux do rejestrowania całego wyjścia terminala.
Szybkie sprawdzenie
Jaka kategoria NSE Nmapa wykonuje kontrole pod kątem znanych podatności?
Podsumowanie: skryptowanie enumeracji
Skryptowanie przekształca pojedyncze polecenia narzędzi w powtarzalne potoki rozpoznania. Proszę łączyć skrypty NSE do szybkich, ukierunkowanych kontroli, język Python do niestandardowego parsowania i automatyzacji, Bash do szybkiego wykrywania hostów oraz wyspecjalizowane narzędzia (enum4linux, dnsrecon, snmpwalk) do enumeracji właściwej dla poszczególnych protokołów.
Często zadawane pytania
Czy lekcja „Skrypty do enumeracji sieci” jest bezpłatna?
Tak — pełny tekst „Skrypty do enumeracji sieci” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cyber Security Academy, przejdź na CoddyKit PRO. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Skrypty do enumeracji sieci”?
Zautomatyzują Państwo rozpoznanie za pomocą skryptów Nmap NSE i własnych skanerów w Pythonie. Ćwiczysz Cyber Security Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cyber Security Academy?
Nie wymagamy żadnego doświadczenia. Cyber Security Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Skrypty do enumeracji sieci”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cyber Security Academy?
Tak. Każda lekcja Cyber Security Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Techniki skanowania portów w Nmap
- Rozpoznawanie usług i systemów operacyjnych
- Netcat: szwajcarski scyzoryk
- Skrypty do enumeracji sieci