1080 - Pentesting Socks
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.
Podstawowe informacje
SOCKS to protokół używany do przesyłania danych między klientem a serwerem przez proxy. Piąta wersja, SOCKS5, dodaje opcjonalną funkcję uwierzytelniania, pozwalającą na dostęp do serwera jedynie upoważnionym użytkownikom. Głównie zajmuje się proxyfikacją połączeń TCP oraz przekazywaniem pakietów UDP (za pomocą polecenia UDP ASSOCIATE), działając na warstwie sesji (Layer 5) modelu OSI. Gdy narzędzia obsługują schemat socks5h, rozwiązywanie DNS jest wymuszane przez proxy, zapobiegając lokalnym DNS leaks i utrudniając fingerprinting hosta źródłowego.
Default Port: 1080
Enumeracja
Sprawdzenie uwierzytelniania
nmap -p 1080 <ip> --script socks-auth-info
Brute Force
Podstawowe użycie
nmap --script socks-brute -p 1080 <ip>
Zaawansowane użycie
nmap --script socks-brute --script-args userdb=users.txt,passdb=rockyou.txt,unpwdb.timelimit=30m -p 1080 <ip>
Wyjście
PORT STATE SERVICE
1080/tcp open socks
| socks-brute:
| Accounts
| patrik:12345 - Valid credentials
| Statistics
|_ Performed 1921 guesses in 6 seconds, average tps: 320
Moduł Hydra
hydra -L users.txt -P passwords.txt -s 1080 -t 16 -V <ip> socks5
Metoda & open-proxy enumeration
nmap -sV --script socks-methods,socks-open-proxy -p 1080 <ip>
socks-methods wymusza na serwerze wypisanie obsługiwanych typów uwierzytelniania, natomiast socks-open-proxy próbuje wykonać wychodzący CONNECT, aby potwierdzić, czy usługa może być nadużyta jako przekaźnik.
Sprawdzenie surowego handshake
printf '\x05\x01\x00' | nc -nv <ip> 1080
Odpowiedź \x05 01 00 wskazuje, że SOCKS5 oferuje “no authentication”. Każde \x00 po którym następuje \x02 oznacza, że wymagane jest username/password, co jest przydatne do szybkiego fingerprinting odsłoniętych urządzeń w skryptach.
Szybka walidacja egressu
curl --socks5-hostname <ip>:1080 https://ifconfig.me
curl --socks5-hostname user:pass@<ip>:1080 http://internal.target
Użyj --socks5-hostname (lub socks5h:// adresów URL), aby rozwiązywanie DNS odbywało się zdalnie. Połącz to z proxychains4 -q nmap -sT -Pn --top-ports 200 <internal-host>, aby zweryfikować, czy proxy rzeczywiście zapewnia dostęp do sieci wewnętrznej.
Odkrywanie w skali internetu / fingerprinting
masscan 0.0.0.0/0 -p1080 --banners --rate 100000 -oX socks.xml
Wprowadź wyniki z powrotem do NSE, zgrab2 lub niestandardowych skryptów python, aby priorytetyzować obiecujące hosty (np. ciągi bannerów takie jak 3proxy, Dante, MikroTik).
Tunneling and Port Forwarding
Aby uzyskać informacje o tunneling i post forwarding, sprawdź stronę: Tunneling and Port Forwarding
Referencje
Tip
Ucz się i ćwicz Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Ucz się i ćwicz Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Ucz się i ćwicz Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Wsparcie dla HackTricks
- Sprawdź plany subskrypcyjne!
- Dołącz do 💬 grupy Discord lub grupy telegramowej lub śledź nas na Twitterze 🐦 @hacktricks_live.
- Dziel się trikami hackingowymi, przesyłając PR-y do HackTricks i HackTricks Cloud repozytoriów na githubie.


