Apa itu Passive Sniffing? dan apa itu Broadcast Traffic?
1. Broadcast Traffic
Adalah lalu lintas data pada jaringan yang terdapat pada alamat
broadcast (x.x.x.255), contoh pada ip range 192.168.10.0/24 maka alamat
broadcastnya ada di 192.168.10.255. semua perangkat yang ada di dalam
jaringan pasti melakukan komunikasi dengan alamat broadcast.
Dengan menangkap data yang ada di alamat broadcast maka aktifitas
kita akan susah untuk diketahui oleh IDS/IPS karena data yang dihasilkan
sangat sedikit, hal ini terjadi karena secara pasif kita menangkap data
yang lewat dan bukan melakukan scanning secara intrusive.
A. Nmap
Salah satunya adalah dengan
Nmap, perintahnya adalah seperti berikut:
1 |
nmap -Pn -n --script=broadcast |
Hasilnya dapat dilihat seperti pada gambar dibawah:
Pada gambar dapat dilihat bahwa:
- ip 192.168.10.192 mendapatkan DHCP dari 192.168.10.1 dimana DNS yang digunakan adalah 8.8.8.8 dan 208.67.222.222.
- ip 192.168.10.1 memiliki nama “Server: RouterOS/4.10UPnP/1.0 MikroTik UPnP/1.0″, berarti gateway yang digunakan kemungkinan mikrotik.
- ip 192.168.10.207 adalah ip BT5 saya.
Dengan menangkap lalu lintas data pada alamat broadcast diatas, kita
dapatkan beberapa hal yang cukup berguna untuk langkah penetrasi
selanjutnya.
B. Ping
TTL atau
Time To Live yang dapat dilihat untuk menentukan kira-kira OS apa yang
digunakan, biasanya OS Windows menggunakan TTL sekitar 128 sedangkan
Linux menggunakan TTL dibawah sekitar 64 atau sekitar 254
Contoh pada Linux:
02 |
PING localhost (127.0.0.1) 56(84) bytes of data. |
03 |
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.056 ms |
04 |
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.041 ms |
05 |
64 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.029 ms |
06 |
64 bytes from localhost (127.0.0.1): icmp_seq=4 ttl=64 time=0.049 ms |
07 |
64 bytes from localhost (127.0.0.1): icmp_seq=5 ttl=64 time=0.040 ms |
09 |
--- localhost ping statistics --- |
10 |
5 packets transmitted, 5 received, 0% packet loss, time 3999ms |
11 |
rtt min/avg/max/mdev = 0.029/0.043/0.056/0.009 ms |
Contoh pada OS Windows:
1 |
$ ping 10.112.12.30 PING 10.112.12.30 (10.112.12.30): 56 data
bytes 64 bytes from 10.112.12.30: icmp_seq=0 ttl=128 time=0.622 ms 64
bytes from 10.112.12.30: icmp_seq=1 ttl=128 time=0.786 ms 64 bytes from
10.112.12.30: icmp_seq=2 ttl=128 time=0.704 ms 64 bytes from
10.112.12.30: icmp_seq=3 ttl=128 time=0.510 ms 64 bytes from
10.112.12.30: icmp_seq=4 ttl=128 time=0.913 ms ^C --- 10.112.12.30 ping
statistics --- 5 packets transmitted, 5 packets received, 0.0% packet
loss round-trip min/avg/max/stddev = 0.510/0.707/0.913/0.138 ms |
Perhatikan pada TTL-nya, menarik bukan?
2. Passive Sniffing
Metode yang dilakukan hampir sama, karena non intrusive, hanya menangkap data yang lewat saja.
So, how we do it exactly?
Saya tahu ada beberapa tools yang dapat melakukan ini, seperti wireshark,p0f, miranda, tcpdump dll. Kali ini akan dibahas p0f dan miranda (UPnP).
A. p0f
Kebetulan baru muncul versi 3.03b, download saja
disini. trus di-extract saja (file berupa .tar.gz):
Kemudian untuk membuat file executable p0f tinggal jalankan file build.sh di dalam folder hasil extract diatas:
Seharusnya muncul seperti berikut:
01 |
root@bt:~/Programs/p0f-3.03b# ./build.sh |
02 |
Welcome to the build script for p0f 3.03b! |
03 |
Copyright (C) 2012 by Michal Zalewski <lcamtuf@coredump.cx> |
05 |
[+] Configuring production build. |
06 |
[*] Checking for a sane build environment... OK |
07 |
[*] Checking for working GCC... OK |
08 |
[*] Checking for *modern* GCC... OK |
09 |
[*] Checking if memory alignment is required... nope |
10 |
[*] Checking for working libpcap... OK |
11 |
[*] Checking for working BPF... OK |
12 |
[+] Okay, you seem to be good to go. Fingers crossed! |
13 |
[*] Compiling p0f... OK |
15 |
Well, that's it. Be sure to review README. If you run into any problems, you |
16 |
can reach the author at <lcamtuf@coredump.cx>. |
Setelah itu akan muncul file executable p0f, jalankan saja file p0f-nya:
Perintah diatas untuk melihat options yang terdapat pada p0f, dapat dilihat dibawah ini:
01 |
root@bt:~/Programs/p0f-3.03b# ./p0f --h |
02 |
--- p0f 3.03b by Michal Zalewski <lcamtuf@coredump.cx> --- |
04 |
./p0f: invalid option -- '-' |
05 |
Usage: p0f [ ...options... ] [ 'filter rule' ] |
07 |
Network interface options: |
09 |
-i iface - listen on the specified network interface |
10 |
-r file - read offline pcap data from a given file |
11 |
-p - put the listening interface in promiscuous mode |
12 |
-L - list all available interfaces |
14 |
Operating mode and output settings: |
16 |
-f file - read fingerprint database from 'file' (p0f.fp) |
17 |
-o file - write information to the specified log file |
18 |
-s name - answer to API queries at a named unix socket |
19 |
-u user - switch to the specified unprivileged account and chroot |
20 |
-d - fork into background (requires -o or -s) |
22 |
Performance-related options: |
24 |
-S limit - limit number of parallel API connections (20) |
25 |
-t c,h - set connection / host cache age limits (30s,120m) |
26 |
-m c,h - cap the number of active connections / hosts (1000,10000) |
28 |
Optional filter expressions (man tcpdump) can be specified in the command |
29 |
line to prevent p0f from looking at incidental network traffic. |
31 |
Problems? You can reach the author at <lcamtuf@coredump.cx>. |
Mari kita coba dengan perintah -i eth0 jika network card ada di eth0,
lalu -p atau promiscouse mode agar semua trafik dapat ditangkap oleh
p0f dan -o untuk menyimpan hasil sniffing, dapat dicoba seperti berikut:
1 |
./p0f -i eth0 -p -o p0f-internal |
Perintah -f tidak perlu dilakukan karena secara default p0f akan
menggunakan file konfigurasi p0f.fp, kecuali kalau kita ingin
menggunakan signature database packet data yang lain.
Dari data diatas mari kita coba lakukan analisa:
.-[ 192.168.10.207/49659 -> 76.74.255.117/443 (syn) ]-
|
| client = 192.168.10.207/49659
| os = Linux 3.x
| dist = 0
| params = none
| raw_sig = 4:64+0:0:1460:mss*10,6:mss,sok,ts,nop,ws:df,id+:0
|
`—-
Arti data diatas kira-kira begini:
- ip 192.168.10.207 port 49659 sedang melakukan koneksi SYN terhadap ip 76.74.255.117 port 443
- OS yg digunakan Linux 3.x
- Jarak dengan sniffer 0 (alias 1 network)
- raw_sig adalah suatu signature (tanda) yang dihasilkan oleh OS tersebut ketika melakukan komunikasi di dalam jaringan.
Sebenarnya masih banyak yang bisa dilihat dari data yang ditangkap oleh p0f, dapat dilihat
disini, tepatnya di
no. 2 “What’s the Output?”
B. Miranda
Miranda adalah tools yang dibuat dari bahasa pemrograman Python untuk menangkap data protokol
UPnP (Universal Plug n Play).
Perangkat apa saja yang menggunakan protokol UPnP??
Karena sifatnya yang plug n play maka perangkat yang menggunakan
protokol ini mulai dari komputer, network home appliances (tv internet,
nintendo wii dll) dan perangkat wireless lainnya.
Bayangkan saja kita bisa melakukan sniffing di suatu jaringan wifi
yang terdapat tv internet yang terhubung dengan wifi tersebut, maka
mungkin saja bagi kita untuk melakukan remote seperti mematikan tv,
menyetel volume tv dll. Ngeri kan?? hehehe #ketawasetan
Walaupun saya belum pernah melakukannya secara langsung (maklum ga punya tv internet), tetapi ada PoC dari website
Pauldotcom yang akan saya coba tulis disini:
Di BT5 Miranda ada di folder /pentest/enumeration/miranda/
Cara menjalankan miranda tinggal:
03 |
Setelah itu kita akan masuk kedalam shell prompt upnp> |
05 |
Perintah-perintah yang dapat dilakukan di miranda adalah sebagai berikut: |
09 |
root@bt:/pentest/enumeration/miranda# ./miranda.py |
12 |
Invalid command. Valid commands are: |
14 |
load Restore previous host data from file |
15 |
head Show/define SSDP headers |
16 |
help Show program help |
17 |
host View and send host list and host information |
18 |
msearch Actively locate UPNP hosts |
19 |
pcap Passively listen for UPNP hosts |
21 |
log Logs user-supplied commands to a log file |
22 |
seti Show/define application settings |
24 |
save Save current host data to file |
Untuk melakukan sniffing di miranda adalah dengan menjalankan perintah msearch seperti berikut:
upnp> msearch
Entering discovery mode for ‘upnp:rootdevice’, Ctl+C to stop…
**************************************************************** SSDP
reply message from 192.168.1.213:8060 XML file is located at
http://192.168.1.213:8060/Device
is running Roku UPnP/1.0 MiniUPnPd/1.4
****************************************************************
**************************************************************** SSDP
reply message from 192.168.1.224:52236 XML file is located at
http://192.168.1.224:52236/rcr/RemoteControlReceiver.xml Device
is running Linux/9.0 UPnP/1.0 PROTOTYPE/1.0
****************************************************************
**************************************************************** SSDP
reply message from 192.168.1.214:52235 XML file is located at
http://192.168.1.214:52235/dmr/SamsungMRDesc.xml Device is running Linux/9.0 UPnP/1.0 PROTOTYPE/1.0 ****************************************************************
Kemudian lakukan host list untuk melihat host mana saja yang telah diketahui oleh miranda:
upnp> host list
[0] 192.168.1.213:8060
[1] 192.168.1.219:8060
[2] 192.168.1.215:8060
[3] 192.168.1.224:52236
[4] 192.168.1.214:52235
[5] 192.168.1.241:8888
[6] 192.168.1.16:2869
Mari kita lihat data yang ada pada host 5:
upnp> host summary 5
Host: 192.168.1.241:8888 XML File:
http://192.168.1.241:8888/upnp_descriptor_0 MediaRenderer manufacturerURL:
http://www.onkyo.com modelName: TX-NR509 modelNumber: TX-NR509 presentationURL:
http://192.168.1.241/friendlyName:
TX-NR509 fullName: urn:schemas-upnp-org:device:MediaRenderer:1
modelDescription: AV Receiver UDN:
uuid:aeb01704-c117-04b9-db1e-0409c1b9c871 modelURL:
http://www.onkyo.com manufacturer: ONKYO
Untuk melihat lebih lanjut lakukan
host info 5
upnp> host info 5
xmlFile :
http://192.168.1.241:8888/upnp_descriptor_0 name :
192.168.1.241:8888 proto : http:// serverType : MediabolicMWEB/1.8.225
upnpServer : Linux/2.6.33-rc4 UPnP/1.0 MediabolicUPnP/1.8.225
dataComplete : True deviceList : {}
Dapat diketahui bahwa host no 5 adalah sebuah tv internet yang
menggunakan Linux, sekarang dengan sedikit perintah kita dapat mematikan
volume suara pada tv tersebut:
01 |
upnp> host send 5 MediaRenderer RenderingControl SetMute |
04 |
Argument Name: InstanceID |
07 |
Set InstanceID value to: 0 |
10 |
Argument Name: DesiredMute |
13 |
Set DesiredMute value to: 1 |
16 |
Argument Name: Channel |
18 |
Allowed Values: ['Master', 'LF', 'RF'] |
19 |
Set Channel value to: Master</pre> |
Semoga bermanfaat
Sumber:
1 comments:
If you'd like an alternative to randomly flirting with girls and trying to find out the right thing to say...
If you'd rather have women chase YOU, instead of spending your nights prowling around in crowded pubs and restaurants...
Then I urge you to view this eye-opening video to unveil a strong little secret that has the potential to get you your very own harem of hot women just 24 hours from now:
Facebook Seduction System!!!
Post a Comment