Bab 2
STUDI PUSTAKA
2.1
Pengenalan Wireshark Wireshark adalah suatu open-source packet analyzer yang biasa digunakan untuk troubleshooting network, analisis, serta communication protocol development. Wireshark mengizinkan pengguna untuk melihat lalu lintas paket data pada suatu jaringan dengan network interface controller, baik satu jalur ataupun broadcast dan multicast. Wireshark merupakan suatu software yang mengerti struktur dari banyak protokol yang berbeda. Karena wireshark menggunakan pcap untuk menangkap paket data, wireshark hanya dapat menangkap paket data dari network yang didukung pcap. Umumnya wireshark digunakan oleh administrator jaringan komputer untuk memecahkan masalah jaringan, memeriksa masalah keamanan jaringan, dan sebagian pengembang untuk debug implementasi protokol jaringan dan belajar internal protokol jaringan. Hal ini lebih mudah dilakukan dan diimplementasikan pada jaringan local. Hasil yang ditangkap oleh wireshark dapat digunakan sebagai perbandingan antar jaringan. Sebelum melakukan pengambilan paket, perlu diketahui mode pengambilan data yang dapat digunakan 1.
Menggunakan Hub: Pada mode ini pengguna dapat membatasi target device dan sistem penganalisis pada network segment yang sama dengan menghubungkan mereka langsung ke hub.
2.
Dengan Port Mirrorring: Mode ini dilakukan dengan menduplikasi traffic antara satu port switch atau lebih dan di’mirrorr’kan ke port yang diinginkan.
3.
ARP cache Poisoning: Menerjemahkan alamat layer 2 melalui protokol layer 3 pada ARP. Ini juga dikenal dengan ARP spoofing, yang mana proses ini mengirim ARP messages ke Ethernet atau router dengan MAC address palsu untuk mengganggu lintas data dari komputer lain. (Kaur & Saluja, 2014).
5
6
Seperti yang dilakukan oleh Sarono Widodo (Widodo, 2012), wireshark dapat digunakan untuk memantau kinerja jaringan komputer dan dapat menunjukkan apakah jaringan tersebut bekerja dengan baik atau tidak. Pada penelitiannya, Sarono Widodo (Widodo, 2012) menunjukkan bahwa jaringan yang dianalisis berjalan dengan baik seperti saat permintaan ping dan akses ke server. Pengguna dapat mengetahui apakah akses seperti permintaan ping atau akses server berjalan baik dari bagian info yang terdapat disebelah kanan pada tampilan wireshark (Widodo, 2012). Selain itu, seperti yang dilakukan oleh Roland Oktavianus Lukas Sihombing dan Muhammad Zulfin (Lukas Sihombing & Zulfin, 2013), wireshark dapat digunakan menganalisis parameter trafik seperti delay, packet loss, dan throughput. Delay merupakan penundaan waktu paket tiba ke tujuan, Packet Loss dapat didefinisikan sebagai kegagalan mentransmisi paket pada alamat tujuan sehingga menyebabkan beberapa paket menghilang atau loss pada saat pengiriman, dan Throughput merupakan suatu kinerja jaringan yang terukur. Pada penelitian ini wireshark dapat dimanfaatkan untuk menampilkan waktu delay pada saat mengakses suatu jaringan dan mengetahui seberapa banyak packet loss yang terjadi. (Lukas Sihombing & Zulfin, 2013). Wireshark juga dapat mengidentifikasi data yang terinfeksi seperti penelitian Tati Ernawati (Ernawati, 2012), wireshark menunjukkan beberapa data berbasis numerik yang terinfeksi malicious software pada suatu jaringan. Shilpi Gupta dan Roopal Mamtora (Gupta & Mamtora, 2012) juga menjelaskan bahwa wireshark dapat digunakan untuk mendeteksi gangguan pada jaringan dan ditampilkan dalam beberapa mode, seperti: 1.
Expert Info’s : Expert Info’s merupakan suatu kumpulan kelainan yang ditemukan oleh wireshark. Biasanya dilihat dalam bentuk grafik warna. Setiap expert info mengandung beberapa hal : Chat (abu-abu) : informasi tentang aliran data Note (cyan): catatan Warn (kuning): peringatan Error (merah): masalah serius
2.
Chats: Biasanya mengandung sequence SYN, SYN+ACK, ACK
3.
Flow Graph: grafik komunikasi antar satu atau beberapa IP
4.
Conversation: Lalu lintas data antara dua tujuan tertentu
7
Selain untuk analisis masalah pada jaringan, wireshark juga dapat digunakan untuk melakukan monitoring dan mengawasi aktivitas yang sedang terjadi pada suatu jaringan. Wireshark dapat melihat elemen autentikasi seperti username dan password pada jaringan yang data-data informasinya belum terenkapsulasi dengan baik sehingga bisa jadi cukup berbahaya bila digunakan oleh orang-orang yang bermaksud untuk mengambil informasi penting untuk melakukan hal negatif dengan memanfaatkan data-data tersebut. Meski demikian, hal ini juga dapat membantu orang-orang yang melakukan troubleshooting dan monitoring jaringan untuk mengetahui siapa saja yang sedang menggunakan jaringan tersebut dan aktivitas apa saja yang sedang dilakukan pada jaringan tersebut sehingga dapat dengan mudah mengetahui jika terjadi penyebaran atau pengambilan informasi ilegal. Dapat juga diketahui apakah data-data yang dikirim dimaksudkan untuk menyerang dan atau mengganggu jaringan sehingga dapat meminimalisir hal-hal buruk yang kemungkinan bias terjadi pada suatu jaringan. Shrutika Suri (Suri & Batra, 2012) dalam penelitiannya memberikan poin-poin dari mekanisme wireshark, yaitu •
Paket yang ditangkap menunjukkan informasi tentang network data, seperti sumber, tujuan, tipe protocol, dan header data seperti sequence dan acknowledgement.
•
Wireshark akan menampilkan informasi dalam tiga panel: Gambaran transmisi, detail paket, dan panel hex.
•
User dapat menyimpan hasil filter paket untuk diperiksa nanti.
Selama melakukan pemeriksaan pada jaringan, terkadang masih terdapat masalahmasalah yang muncul. Amanpreet Kaur dan Monika Saluja (Kaur & Saluja, 2014) dalam penelitiannya member tahu masalah-masalah yang biasanya dihadapi selama melakukan periksaan jaringan: A.
Unreachable Destination Saat user melakukan ping ke tujuan tetapi target tujuan tidak memberikan respon, maka user akan mendapat pesan bahwa target tidak dapat dituju.
B.
Unreachable Port Hal ini hampir sama seperti poin A, tetapi ping dilakukan pada port tertentu
8
C.
Fragmented Packets Pemecahan paket ini mengizinkan protokol IP untuk memecah data besar menjadi beberapa bagian yang kemudian dikirim. Setiap request dan reply membutuhkan tiga paket dan ping hanya mengirim 32 byte data ke tujuan.
D.
Keeping Things in order Hal ini masih berhubungan dengan poin C. Paket yang dipecah ini harus tetap teratur. Untuk melakukannya, IP akan memberikan nilai sehingga sistem dapat mengetahui urutan dari data yang sebelumnya telah dipecah ini. Jika pada detail paket nilainya nol (0) berarti ini merupakan paket pertama. Jika nilai data selanjutnya meningkat menjadi misalnya 1480 (ukuran payload (data)), maka selanjutnya nilai paket akan bertambah menjadi 2960 dan seterusnya.
E.
Evil Program Biasanya menyangkut masalah spyware
F.
Malformed BOOTP/DHCP Bila source address menunjukkan 0.0.0.0 berarti paket mengalami kecacatan atau perubahan
Jika menggunakan versi wireshark terbaru, pengguna juga dapat menggunakan fitur untuk mengetahui lokasi geologis IP suatu jaringan. Untuk menggunakannya diperlukan software tambahan MaxMind’s GeoIP database saat sedang melakukan proses analisis jaringan. Tambahan ini dapat melakukan filter dari kota, negara, BGP Autonomous Sistem Number (ASN), garis lintang, garis bujur, dan nama perusahaan. Dengan fitur ini pengguna dapat melakukan monitoring lebih luas untuk mengetahui pengiriman paket data dari banyak perusahaan yang mungkin menggunakan jaringan yang sama. Mereka yang melakukan monitoring jaringan juga harus lebih berpengalaman agar dapat memonitor paket data dalam skala internasional dengan lebih baik dan lebih aman. Fitur lainnya adalah wireshark bias menampilkan proses komunikasi antara source dan destination serta menampilkan grafik komunikasi dari beberapa protokol yang ada serta grafik waktu (time sequence) dari paket yang diterima.
9
2.2
Protokol yang dianalisis Menurut Geoff Huston (Houston, 2000), Transmission Control Protocol (TCP) memiliki keunggulan dimana protokol ini memastikan paket yang mencapai tujuan sesuai keinginan pengirim, sehingga menjadi protokol yang sering digunakan untuk melakukan komunikasi pada suatu jaringan internet. TCP juga dapat memastikan bahwa data yang dikirim terurut sesuai keinginan. Bila terdapat data yang hilang saat dilakukan pengiriman, maka TCP akan mengirim ulang data tersebut sehingga paket data yang telah dikirim pasti sampai ke tujuan. TCP memiliki keunggulan dimana keseluruhan fungsinya hanya membutuhkan IP datagram yang mudah dan dibangun dari model control yang mengimplementasikan ketahanan, rangkaian, flow control, dan data streaming. Selain itu, TCP juga memiliki beberapa karakteristik fungsi, diantaranya : Unicast protocol: TCP dibuat berdasarkan unicast network model, dan membantu pertukaran data antara dua pengguna. Connection State: Daripada membebankan jaringan untuk membantu koneksi, TCP menggunakan sinkronisasi antara dua endpoint. Sinkronisasi ini diatur sebagai bagian dari proses koneksi, sehingga TCP bisa dianggap sebagai connection-oriented protocol. Reliable: Menyatakan bahwa jalur-jalur octet yang dikirim ke TCP driver akan ditransmisikan melewati jaringan sehingga jalur-jalur ini terlihat pada remote process sebagai rangkaian octet yang sama. Ini menjelaskan bahwa protokol dapat menemukan saat segmen-segmen data dibuang oleh jaringan, memesan ulang, diduplikat, atau rusak. Full duplex: TCP merupakan protokol full-duplex, dimana pengiriman dan penerimaan data pada satu koneksi TCP diizinkan. Streaming: Walaupun TCP menggunakan paket terstruktur untuk transmisi jaringan, beberapa protokol menegaskan penggunaan enkapsulasi pada setiap aplikasi transaksi. TCP tidak mempertahankan kelengkapan struktur pada jalur data, sehingga tidak ada pemasangan antara operasi write dengan read didalam jaringan protokol.
10
Rate adaptation: TCP juga merupakan protokol rate-adaptive, dimana kecepatan transfer data ditujukan untuk beradaptasi dengan kondisi pada jaringan dan beradaptasi dengan pengolahan kapasitas penerima. Tidak ada penentuan kecepatan transfer data pada TCP, jika jaringan dan receiver memiliki ketersediaan kapasitas, maka pengirim akan menambahkan lebih banyak data untuk mengisi ketersediaan kapasitas. (Houston, 2000) Koneksi Transmission Control Protocol (TCP) dapat terbentuk dari tiga langkah berikut: 1) Sinkronisasi (SYN) bit dari host A (client) ke host B (server) 2) Sinkronisasi (SYN) + Acknowledge (ACK) dari host B (server) ke host A (client) 3) Acknowledge (ACK) dari host A (client) ke host B (server) Bila salah satu dari langkah ini tidak terjadi selama koneksi, maka koneksi tidak dapat terbentuk antara client dengan server dan berarti terdapat gangguan pada jaringan. (Gupta & Mamtora, 2012). Biasanya terdapat beberapa protokol lain yang diangkut oleh protokol ini. Protokol tersebut diantaranya adalah HyperText Transfer Protocol (HTTP) dan HyperText Transfer Protocol Secure (HTTPS). HyperText Transfer Protocol (HTTP) merupakan protocol berbasis server/client yang digunakan untuk mentransfer halaman web pada network. HyperText Transfer Protocol (HTTP) memiliki keunggulan dimana protokol ini ringan dan tidak berstatus generic sehingga dapat digunakan pada berbagai macam dokumen. Selain itu, HTTP juga memiliki versi yang telah dilengkapi keamanan, yaitu HyperText Transfer Protocol Secure (HTTPS). Selain menggunakan komunikasi plain text, HTTPS menyandikan data sesi menggunakan protokol Secure Socket Layer (SSL) atau protokol Transport Layer Security (TLS). Kedua protokol tersebut memberikan perlindungan yang memadai dari serangan eavesdroppers, dan man in the middle attacks (Pramudya P & Kaharesa W, 2010) sehingga menarik untuk dipelajari lebih lanjut.
11