Cara Scanning Hidden Port Menggunakan Nmap

Sebagai orang security jaringan, anda tidak hanya di tuntut untuk mengerti setup suatu perangkat network atau firewall, atau hanya menyediakan service availibility tapi juga anda perlu memperhatikan aspek security. Apalagi saat ini perkembangan IT cukup pesat, termasuk cyber attacks. Model cyber attacks saat ini sudah semakin canggih dan bisa melumpuhkan sebuah system sbg contoh adalah serangan yang heboh tahun 2017 kmren WannaCry, Petya Ransomware. Maka seorang security engineer perlu berpikir layaknya cyber attacker. Apalagi yang di proteksi adalah service penting, atau service yang bisa menghasilkan revenue bagi perusuhaan tersebut.

Serangan terjadi biasanya karena adanya celah keamanan yang tidak terproteksi dengan baik. Meskipun anda punya firewall, tapi jika anda membiarkan celah tersebut, maka besar sekali kemungkinan terjadi serangan. Serangan sbetulnya bisa terjadi dari dalam maupun dari luar, oleh karena itu dari semua ‘pintu’ harus bener-bener terkunci dengan baik, jangan sampai ada backdoor.

Nah, hal yang paling mendasar yang di proteksi adalah menutupi semua port-port yang tidak di perlukan, baik dari sisi server maupun di firewall. Karena yang biasanya pertama kali di lakukan oleh attacker adalah melakukan scaning port dengan menggunakan tools seperti nmap. Tujuannya adalah mengumpulkan atau gathering information terkait system yang di tuju baik port yang di buka, aplikasi maupun versinya, bahkan jenis sistem operasinya.  Baik bertikut ini saya contohkan beberapa command di nmap untuk melakukan scaning port di server – ini anda bisa lakukan di server anda sebelum server tersebut di pindahkan ke firewall, atau anda bisa lakukan test scaning setelah di proteksi oleh firewall. Tujuannya adalah memastikan bahwa proteksi di firewall juga sudah sesuai standar security.

Berikut ini contoh command nmap yang sy coba lakukan di system opersi kali linux.

nmap ip_address

root@kali:~# nmap 192.168.99.193

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-31 11:18 EDT
Nmap scan report for 192.168.99.193
Host is up (0.000045s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE
80/tcp open  http
MAC Address: 00:50:56:B6:8A:A8 (VMware)

Nmap done: 1 IP address (1 host up) scanned in 0.26 seconds

Description: Anda bisa lihat contoh standar command nmap di ikuti ip address server tujuan atau pada case anda bisa juga ip local server.  terlihat bahwa service port 80 dengan status open.

nmap -v ip_address

root@kali:~# nmap -v 192.168.99.193

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-31 11:28 EDT
Initiating ARP Ping Scan at 11:28
Scanning 192.168.99.193 [1 port]
Completed ARP Ping Scan at 11:28, 0.04s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 11:28
Completed Parallel DNS resolution of 1 host. at 11:28, 0.00s elapsed
Initiating SYN Stealth Scan at 11:28
Scanning 192.168.99.193 [1000 ports]
Discovered open port 80/tcp on 192.168.99.193
Completed SYN Stealth Scan at 11:28, 0.07s elapsed (1000 total ports)
Nmap scan report for 192.168.99.193
Host is up (0.000047s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE
80/tcp open  http
MAC Address: 00:50:56:B6:8A:A8 (VMware)

Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.25 seconds
           Raw packets sent: 1001 (44.028KB) | Rcvd: 1001 (40.032KB)

Description: Dengan opsi -v atau increasing verbosity artinya menampilkan lebih banyak informasi dari proses scaning yang sedang berjalan. sbg contoh di atas, dia menampilkan detail proses scaning dari awal (initial) hingga proses tersebut selesai.

nmap -v -O ip_address

root@kali:~# nmap -v -O 192.168.99.193

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-31 11:42 EDT
Initiating ARP Ping Scan at 11:42
Scanning 192.168.99.193 [1 port]
Completed ARP Ping Scan at 11:42, 0.05s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 11:42
Completed Parallel DNS resolution of 1 host. at 11:42, 0.00s elapsed
Initiating SYN Stealth Scan at 11:42
Scanning 192.168.99.193 [1000 ports]
Discovered open port 80/tcp on 192.168.99.193
Completed SYN Stealth Scan at 11:42, 0.08s elapsed (1000 total ports)
Initiating OS detection (try #1) against 192.168.99.193
Nmap scan report for 192.168.99.193
Host is up (0.00026s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE
80/tcp open  http
MAC Address: 00:50:56:B6:8A:A8 (VMware)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.8
Uptime guess: 0.060 days (since Sat Mar 31 10:16:04 2018)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=261 (Good luck!)
IP ID Sequence Generation: All zeros

Read data files from: /usr/bin/../share/nmap
OS detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 1.99 seconds
           Raw packets sent: 1023 (45.806KB) | Rcvd: 1015 (41.282KB)

Description : Gunakan atau tambahkan opsi -O untuk mendeteksi jenis operating system, di atas terlihat jelas jenis os nya Linux beserta versi nya, anda juga bisa lihat uptime nya,

nmap -sV ip_address

root@kali:~# nmap -sV 192.168.99.193

Starting Nmap 7.60 ( https://nmap.org ) at 2018-03-31 11:49 EDT
Nmap scan report for 192.168.99.193
Host is up (0.000048s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd 2.4.18 ((Ubuntu))
MAC Address: 00:50:56:B6:8A:A8 (VMware)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 7.28 seconds

Description: Opsi -sV tujuannya untuk mendeteksi versi dari aplikasi. sbg contoh di atas service http dengan versi apache httpd 2.4.18. Anda bisa cek di internet versi apache tersebut kira2 punya vulnerability apa saja. sehingga nanti jika di perlukan, ada update versi yang lebih di rekomendasikan. Biasanya di www.cvedetails.com ada penjelasan lebih lengkapnya.

map 7.60 ( https://nmap.org )
Usage: nmap [Scan Type(s)] [Options] {target specification}
TARGET SPECIFICATION:
  Can pass hostnames, IP addresses, networks, etc.
  Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254
  -iL : Input from list of hosts/networks
  -iR : Choose random targets
  --exclude : Exclude hosts/networks
  --excludefile : Exclude list from file
HOST DISCOVERY:
  -sL: List Scan - simply list targets to scan
  -sn: Ping Scan - disable port scan
  -Pn: Treat all hosts as online -- skip host discovery
  -PS/PA/PU/PY[portlist]: TCP SYN/ACK, UDP or SCTP discovery to given ports
  -PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes
  -PO[protocol list]: IP Protocol Ping
  -n/-R: Never do DNS resolution/Always resolve [default: sometimes]
  --dns-servers : Specify custom DNS servers
  --system-dns: Use OS's DNS resolver
  --traceroute: Trace hop path to each host
SCAN TECHNIQUES:
  -sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans
  -sU: UDP Scan
  -sN/sF/sX: TCP Null, FIN, and Xmas scans
  --scanflags : Customize TCP scan flags
  -sI : Idle scan
  -sY/sZ: SCTP INIT/COOKIE-ECHO scans
  -sO: IP protocol scan
  -b : FTP bounce scan
PORT SPECIFICATION AND SCAN ORDER:
  -p : Only scan specified ports
    Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080,S:9
  --exclude-ports : Exclude the specified ports from scanning
  -F: Fast mode - Scan fewer ports than the default scan
  -r: Scan ports consecutively - don't randomize
  --top-ports : Scan  most common ports
  --port-ratio : Scan ports more common than 
SERVICE/VERSION DETECTION:
  -sV: Probe open ports to determine service/version info
  --version-intensity : Set from 0 (light) to 9 (try all probes)
  --version-light: Limit to most likely probes (intensity 2)
  --version-all: Try every single probe (intensity 9)
  --version-trace: Show detailed version scan activity (for debugging)
SCRIPT SCAN:
  -sC: equivalent to --script=default
  --script=:  is a comma separated list of
           directories, script-files or script-categories
  --script-args=: provide arguments to scripts
  --script-args-file=filename: provide NSE script args in a file
  --script-trace: Show all data sent and received
  --script-updatedb: Update the script database.
  --script-help=: Show help about scripts.
            is a comma-separated list of script-files or
           script-categories.
OS DETECTION:
  -O: Enable OS detection
  --osscan-limit: Limit OS detection to promising targets
  --osscan-guess: Guess OS more aggressively
TIMING AND PERFORMANCE:
  Options which take 

Nah terakhir anda bisa mencoba sendiri menggunakan lab anda. tentu anda bisa mencoba dengan opsi scan yang lebih beragam sperti saya perlihatkan di opsi detail nmap di atas.

Next action: scaning hanya bertujuan untuk mengumpulkan informasi port yang open dst, maka action berikutnya adalah menutupi port-port yang tidak perlu dan menginstall aplikasi yang di rekomendasikan, atau bug nya tidak ada. Dan dari sisi firewall perlu ada checking rules nya, impelemntasi rule nya di perketat, jangan sampai anda create rule any any 😀

Semoga bermanfaat 🙂

About the author
arisyi

Routecloud Networks

Information about Server, Linux and Computer Network.

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to Routecloud Networks.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.