Enumeracja i rekonesans w systemach Linux z użyciem narzędzi typu LinEnum i LinPEAS
🔍 Wprowadzenie
W procesie testów penetracyjnych oraz audytów bezpieczeństwa systemów Linux, enumeracja i rekonesans to kluczowy etap, który pozwala zebrać jak najwięcej informacji o systemie operacyjnym, użytkownikach, usługach, konfiguracjach oraz potencjalnych podatnościach. Umiejętne przeprowadzenie rekonesansu pozwala na identyfikację możliwych wektorów ataku i przygotowanie gruntu pod dalsze etapy, takie jak Privilege Escalation czy eksfiltracja danych.
W tym artykule przedstawiamy zarówno automatyczne skrypty (LinEnum.sh i linpeas.sh), jak i ręczne polecenia, które pomagają w skutecznym rozpoznaniu celu.
🛠️ Automatyczne skrypty enumeracyjne

1. LinEnum.sh
📄 LinEnum to prosty skrypt bash, który automatyzuje wiele zadań enumeracyjnych. Zbiera informacje o:
- Użytkownikach i grupach
- Plikach z SUID i GUID
- Uprawnieniach sudo
- Otwartych portach i usługach
- Harmonogramach cron
🔧 Uruchomienie:
wget https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh
chmod +x LinEnum.sh
./LinEnum.sh
📌 Zalety:
- Łatwa interpretacja wyników
- Szybka analiza środowiska
- Dobrze strukturalizowany output
2. linpeas.sh
🌈 linPEAS (część PEASS-ng) to bardziej zaawansowany skrypt enumeracyjny, który:
- Wyszukuje binarki podatne na exploitację
- Weryfikuje konfiguracje sudoers
- Analizuje cron i systemd
- Przeszukuje system pod kątem haseł i tokenów
🔧 Instalacja i użycie:
curl -s https://raw.githubusercontent.com/carlospolop/PEASS-ng/master/linPEAS/linpeas.sh | bash
🧠 linPEAS dodatkowo:
- Wykrywa wersje usług
- Sprawdza obecność exploitable binarek (GTFOBins)
- Sugeruje możliwe ścieżki eskalacji
🧾 Ręczne polecenia enumeracyjne
🖥️ Informacje o systemie
uname -a
cat /etc/*release
hostnamectl
📋 Pozwala określić:
- Wersję kernela
- Distro (Debian, Ubuntu, CentOS itd.)
- Potencjalne podatności jądra systemu
👤 Użytkownicy i konta
cat /etc/passwd
cat /etc/shadow # tylko jeśli mamy odpowiednie uprawnienia
id
whoami
🔎 Co analizować:
- Konta z powłoką
/bin/bash(czyli aktywne) - Nietypowe UID (np. UID=0 dla konta innego niż root)
- Niewłaściwe uprawnienia plików haseł
🧩 Usługi i procesy
ps aux
netstat -tulnp
ss -tulwn
systemctl list-units --type=service
📌 Sprawdzamy:
- Usługi działające jako root
- Nietypowe porty i adresy nasłuchujące
- Potencjalne złośliwe procesy
🔐 Uprawnienia sudo
sudo -l
🧠 Co może ujawnić:
- Dostęp do poleceń bez hasła (NOPASSWD)
- Możliwość edycji plików konfiguracyjnych
- Potencjał do eskalacji uprawnień
📁 Pliki z SUID/SGID
find / -perm -4000 -type f 2>/dev/null
📌 Sprawdzamy:
- Nietypowe lub niestandardowe binarki z SUID
- Możliwość wykonania jako root
📂 Identyfikacja konfiguracji i anomalii
🧾 Zadania Cron i Timer’y
ls -la /etc/cron.*
crontab -l
systemctl list-timers
🔎 Co szukać:
- Skrypty edytowalne przez zwykłych użytkowników
- Zadania cykliczne wykonywane jako root
🛠️ Pliki konfiguracyjne sudoers
cat /etc/sudoers
ls -l /etc/sudoers.d/
🧠 Weryfikujemy:
- Błędy konfiguracyjne
- Konta z pełnym dostępem (
ALL=(ALL:ALL) ALL) - Użytkowników z dostępem do edytorów (
nano,vim,less), które mogą prowadzić do eskalacji
📌 Praktyczne porady
🔍 Organizacja wyników
- Zapisuj output do plików (
./LinEnum.sh > enum.txt) - Przeszukuj wyniki przy pomocy
grep, np.:grep -i root enum.txt
🛡️ Unikaj wykrycia
- Nie zostawiaj śladów: usuwaj pobrane skrypty po użyciu
- Korzystaj z wersji offline, gdy to możliwe
📑 Podsumowanie
Efektywny rekonesans i enumeracja systemu Linux to absolutna podstawa w pracy pentestera, red teamera oraz administratora bezpieczeństwa. Zarówno skrypty typu LinEnum.sh i linPEAS, jak i klasyczne komendy typu uname, ps aux, sudo -l pozwalają na:
- Identyfikację słabych punktów systemu
- Wstępne planowanie wektorów ataku
- Ocenę poziomu zabezpieczeń środowiska
Zastosowanie automatyzacji przyspiesza cały proces, ale nic nie zastąpi czujnego oka analityka.






