OS Discovery – Bagaimana mengidentifikasi Target OS

Dalam sebuah network, berbagai standar diimplementasikan OS agar bisa berkomunikasi antara system. Standar ini mengatur fungsi dari berbagai protokol seperti IP, TCP, UDP dan lainnya.

Parameter seperti TTL dan window size pada IP header pada paket pertama TCP session dapat digunakan untuk mengidentifikasi OS yang digunakan target host.

TTL menentukan waktu maksimum sebuah paket berada dalam sebuah network, dan window size menentukan panjang sebuah packet. Nilai paramter tersebut berbeda untuk setiap OS, berikut tablenya:

Operating SystemTime To LiveTCP Window SizeLinux (Kernel 2.4 dan 2.6)645840Google Linux645720FreeBSD6465535OpenBSD6416384Windows 71288192iOS 12.4 (Cisco Routers)2554128Solaris 72558760AIX 4.36416284

Tools yang dapat digunakan adalah Wireshark, nmap, UnicornScan dan Nmap Script Engine. Attacker juga dapat menggunakan IPv6 fingerprinting.

Wireshark

source: https://www.wireshark.org/

Untuk mengidentifikasi target OS, menangkap response yang digenerate dari target mesin ke request-origin mesin menggunakan paket sniffing tool seperti wireshark. Lalu observasi TTL dan TCP window size field pada TCP packet yang pertama ditangkap.

Dengan membandingkan nilai tersebut dengan table diatas, kita dapat tentukan OS yang digunakan oleh target.

Berikut contoh screen shoot penggunaan wireshark.

nmap

nmap merupakan salah satu tool yang efektif untuk melakukan OS fingerprinting. Digunakan opsi -O untuk melakukan OS discovery.

$ nmap -O <ip address>

nmap Script Engine

Script engine digunakan untuk melakukan otomasi, dimana user dapat membuat script. Script pada nmap diaktifkan dengan menggunakan opsi -sC. Jika menggunakan custom script, gunakan opsi –script.

Selain custom script, nmap juga sudah menyediakan built in script, contohnya menggunakan smb protocol, opsi yang digunakan adalah smb-os-discovery.

nmap script engine dapat ditampilkan sebagai normal nmap log atau sebagai XML output.

IPv6 Fingerprinting

Fungsinya sama dengan IPv4, seperti mengirimkan probes, menunggu dan mengumpulkan response dan mencocokan dengan database fingerprints. Perbedaannya adalah, IPv6 menggunakan beberapa probe khusus IPv6 lanjutan bersama dengan mesin deteksi OS khusus IPv6 yang terpisah.

nmap mengirimkan 18 probes dengan urutan seperti berikut:

  • Sequence generation (S1-S6)
  • ICMPv6 echo (IE1)
  • ICMPv6 echo (IE2)
  • Node Information Query (NI)
  • Neighbor Solicitation (NS)
  • UDP (U1)
  • TCP explicit congestion notification (TECN)
  • TCP (T2-T7)

Gunakan opsi -6 pada nmap untuk melakukan OS discovery menggunakan IPv6 fingerprinting.

$ nmap -6 -O <ip address>
Sharing is caring:

Leave a Comment