Etherwall therwall – User Guide
Revision 1.0
Copyright (c) 2012, Indonesian Research & Development Center.. All Rights Reserved.
Buku ini didedikasikan untuk RNDC (Indonesian Research & Development Center)
Agus Bimantoro
2012-07-06 Dokumen ini menguraikan serangkaian petunjuk dalam penggunaan etherwall, di dalamnya juga terdapat beberapa bagian yang menjelaskan tentang hal – hal yang berkaitan. Manual ini bersifat berkelanjutan dan akan selalu di update sesuai dengan kebutuhan. Copyright 2012 Agus Bimantoro dan RNDC Merek dagang yang dimiliki oleh pemiliknya. Izin diberikan untuk menyalin, mendistribusikan dan / atau memodifikasi dokumen ini di bawah ketentuan GNU Free Documentation License, Versi 1,3; tanpa bagian Invarian, tanpa Teks Sampul Depan, dan tanpa Teks Sampul Belakang. Satu salinan lisensi ini harus dicantumkan pada bagian yang berjudul " GNU Free Documentation License ". Website: http://rndc.or.id/etherwall
Daftar isi I. Pengantar Etherwall 1.1 Sekilas tentang ARP (Address Resolution Protocol) ...............................................................
1
1.1.1 Struktur format pesan ARP ........................................................................................................
3
1.1.2 Celah keamanan ARP .....................................................................................................................
4
1.1.2.1 ARP reply palsu ...............................................................................................................
5
1.1.2.2 ARP request palsu ..........................................................................................................
6
1.1.3 Jenis – jenis serangan ....................................................................................................................
7
1.1.3.1 MITM (Man in The Middle) .......................................................................................
7
1.1.3.2 DoS (Denial of Service) ................................................................................................
9
1.1.3.3 MAC Flooding .....................................................................................................................
9
1.1.4 Usaha pencegahan ........................................................................................................................... 10 1.2 Tentang Etherwall ....................................................................................................................................... 10 1.2.1 Motivasi .................................................................................................................................................. 11 1.2.2 Skenario aplikasi .............................................................................................................................. 11 1.2.2.1 ARP packet filtering ...................................................................................................... 11 1.2.2.2 Point to Point Protection ............................................................................................ 12 1.2.2.3 Point to Multipoint Protection ................................................................................ 12 1.2.3 Algoritma .............................................................................................................................................. 13 1.2.4 Mengapa Etherwall di butuhkan ? .......................................................................................... 14 1.2.5 Pengguna akhir (End User) ........................................................................................................ 14 II. Panduan installasi Etherwall 2.1 Mendapatkan Etherwall ........................................................................................................................... 15 2.2 Kebutuhan sistem ........................................................................................................................................ 15
2.3 Installasi Etherwall ..................................................................................................................................... 15 III. Panduan penggunaan Etherwall 3.1 Etherwall ........................................................................................................................................................... 17 3.2 Ethwconsole .................................................................................................................................................... 17 3.3 Direktori dan File program Etherwall ............................................................................................. 22 IV. Bantuan 4.1 Halaman manual ........................................................................................................................................... 23 4.2 Laporan bug dan pertanyaan ................................................................................................................
23
V. Penutup 5.1 Kesimpulan ...................................................................................................................................................... 24 5.2 Ucapan terima kasih .................................................................................................................................. VI. Daftar Pustaka
24
Pengantar etherwall 1.1 Sekilas tentang ARP (Address Resolution Protocol) Komputer yang terhubung ke dalam jaringan memiliki dua alamat, yang pertama adalah alamat fisik, atau yang biasa di sebut alamat MAC (Media Access Control). Alamat MAC bersifat unik dan permanen yang di simpan dalam network card itu sendiri. Panjang alamat MAC adalah 48 bit (6 byte) di tulis dalam format 6 digit bilangan heksadecimal. IEEE (Institute of Electrical and Electronics Enginers) sebagai lembaga yang mengurus standarisasi internet membagi alamat MAC menjadi dua blok, 24 bit pertama mempresentasikan organisasi pembuat kartu tersebut (vendor) dan 24 bit sisanya adalah nomor kartu tersebut. MAC format : 00-00-0C-67-89-6f atau 00:00:0C:67:89:6f
Alamat yang ke dua adalah alamat IP (Internet Protocol) atau alamat logika, Protokol IP adalah bagian penting yang di gunakan sebagai alat identifikasi setiap komputer pada jaringan/lapisan internet. IP juga bersifat unik, itu artinya masing – masing komputer yang terhubung haruslah menggunakan alamat yang berbeda tidak boleh satu alamat IP di gunakan oleh dua atau lebih komputer. IP tidak seperti MAC yang bersifat permanen, alamat IP bisa di rubah – rubah sesuai dengan pengaturan atau pengalamatan jaringan yang di buat. Panjang format alamat IP adalah 32 bit (4 byte) untuk IPv4 dan 128 bit (16 byte) untuk IPv6. IP format: IPv4 = 192.168.1.1 IPv6 = 2001:0ba0:01e0:d001:0000:0000:d0f0:0010
Dasar konsep dari komunikasi jaringan adalah pengiriman data dari sumber ke tujuan begitu juga sebaliknya. Setiap bentuk komunikasi harus memiliki identifikasi alamat sumber dan tujuan, hal ini penting untuk menerangkan siapa yang mengirim dan siapa yang menerima. Dalam keseharian kita menggunakan alamat IP bukan MAC agar komputer bisa saling terhubung. Namun sebetulnya komputer berkomunikasi hanya menggunakan alamat MAC/fisik. Lalu untuk apa IP ?, dua pertanyaan di bawah ini mungkin akan memberikan gambaran: Page | 1
1. Logiskah jika anda menggunakan alamat seperti ini 00-00-0C-67-89-6f ? 2. Masing – masing alamat MAC bersifat unik dan sudah di set oleh vendor, mau kah anda menghafal ribuan bahkan jutaan perangkat NIC dunia untuk menghubungkan/mengakses perangkat tersebut ?
Bagi manusia menggunakan alamat IP lebih masuk akal jika di bandingkan dengan alamat MAC, untuk itulah di buat sebuah protokol ARP yang berfungsi untuk menterjemahkan/meresolusi alamat IP ke alamat MAC. Pada proses enkapsulasi, IP membungkus paket data yang berisi header (source IP,destination IP,dan meta data lainnya) dan payload (data yang mau dikirim), kemudian paket ini akan di rubah menjadi frame – frame data pada lapisan data link agar bisa di kirim pada level fisik melalui media transmisi (kabel,radio,dll). Gambaran cara kerja protokol ARP seperti dibawah ini: 1. Sebuah komputer yang mendukung teknologi TCP/IP ingin berkomunikasi dengan IP: 192.168.1.2 di dalam satu segmen jaringan. “ siapa pemilik IP: 192.168.1.2, berikan alamat MAC mu ?” 2. Komputer yang sedang dicari/pemilik IP: 192.168.1.2 akan merespon pertanyaan tersebut dengan jawaban “ saya IP: 192.168.1.2 alamat MAC 00:00:0C:05:B4:3F ” 3. Keduanya sudah saling mengetahui alamat fisik, setelah itu alamat fisik tersebut akan di simpan di dalam tabel ARP, sampai disini komunikasi bisa di mulai. Pada tahapan pertama adalah sebuah pesan ARP request, dan tahapan kedua adalah pesan balasan atau ARP reply. Perlu di ketahui bahwa komputer menyimpan alamat MAC di dalam tabel ARP hanya bersifat sementara dan akan di hapus secara otomatis dalam periode waktu tertentu. Gambar sederhana berikut ini bisa lebih membantu untuk memahami cara kerja protokol ARP :
Gambar 1.1 Cara kerja ARP Page | 2
1.1.1 Struktur format pesan ARP ARP merupakan bagian penting di dalam jaringan TCP/IP, memiliki tugas untuk dapat menterjemahkan alamat logis (IP address) yang di gunakan pada lapisan aplikasi ke dalam alamat fisik (MAC address). Struktur format pesan ARP relative simple dan juga memiliki operasi yang sederhana, ARP request dengan mengirim pesan broadcast ke semua host di dalam jaringan dan ARP respon sebagai bentuk balasan kepada host yang sedang mencarinya. Bentuk struktur format pesan ARP bisa dilihat di bawah ini:
Gambar 1.2 Struktur format pesan ARP
Hardware Type: Bagian ini adalah field untuk menentukan type hardware yang di gunakan, Misalnya: untuk tipe hardware Ethernet bernilai 1 (0x1 dalam heksa). Protocol Type: Bagian ini adalah field untuk menentukan versi/network IP yang di gunakan, Untuk alamat IPv4 memiliki nilai 2048 (0x800 dalam heksa). Hardware Address Length: Bagian ini berisi panjang dari alamat MAC address, nilainya adalah 6.
Page | 3
Protocol Address Length: Bagian ini berisi panjang dari alamat IP, Untuk IPv4 tentu saja nilainya adalah 4. Opcode (Operation Code): Bagian ini berisi field untuk menentukan operasi pesan yang akan di kirim. Berikut tabel dari kode operasi pada ARP: Opcode 1 2 3 4 5 6 7 8 9
Tipe operasi pesan ARP Request ARP Reply Reverse ARP Request Reverse ARP Reply Dynamic RARP Request Dynamic RARP Reply Dynamic RARP Error Inverse ARP Request Inverse ARP Reply Tabel 1.1 Tabel kode operasi ARP
Sender Hardware Address: Bagian ini adalah field yang berisi alamat fisik (MAC Address) dari komputer sumber/pengirim. Sender Protocol Address: Bagian ini adalah field yang berisi alamat logis (IP Address) dari komputer sumber/pengirim. Target Hardware Address: Bagian ini adalah yang berisi alamat fisik (MAC Address) komputer tujuan/penerima. Target Protocol Address: Bagian ini adalah field yang berisi alamat logis (IP Address) komputer tujuan/penerima. 1.1.2 Celah Keamanan ARP Masih ingat dengan ilustrasi cara kerja ARP ?, Cara kerja protokol ARP yang mengirim pesan ARP request secara broadcast ke semua komputer ternyata menimbulkan celah keamanan. Didalam prakteknya ternyata siapapun dijaringan yang berada dalam satu broadcast domain dapat merespon pesan ARP broadcast tersebut meskipun isi pesan bukan di tujukan Page | 4
untuknya. Tidak hanya itu siapapun di jaringan juga dapat mengirim ARP request dengan berpura – pura menjadi salah satu host, namun dengan alamat fisik (MAC) yang di palsukan. Malicious host melakukan hal tersebut dengan cara membuat paket (crafted packet) ARP palsu. Celah keamanan ini biasa dikenal dengan istilah ARP spoofing/poisoning. 1.1.2.1 ARP reply palsu Setiap kali datang pesan ARP reply, system akan mempercayai dan menyimpan alamat fisik dari komputer pengirim pesan pada ARP table/cache, tidak peduli palsu atau tidaknya alamat fisik tersebut. Jika sebelumnya alamat fisik tersebut sudah tersimpan, maka alamat fisik yang lama akan di hapus dan di update dengan alamat fisik yang baru (overwrite), begitu juga seterusnya. Kita bisa lihat dari gambar ilustrasi berikut:
Gambar 1.3 ARP reply palsu
Gambar 1.4 Pengiriman paket ARP reply yang tidak diminta
Page | 5
Pada ilustrasi gambar 1.3, komputer dengan IP: 192.168.1.1 sedang mencari alamat fisik dari komputer IP: 192.168.1.2 dengan mengirim ARP request dengan metode broadcast ke semua host. Merasa di cari komputer yang memiliki IP: 192.168.1.2 menjawab pesan tersebut dengan mengirim pesan ARP reply. Namun tanpa kita ketahui ternyata malicious host juga mengirim pesan ARP reply. Pertanyaanya, alamat fisik siapa yang di simpan oleh komputer 192.168.1.1 ?, Pertama kali tentu alamat fisik dari IP: 192.168.1.2 selanjutnya sistem akan menghapusnya dan mengganti/memperbaruhi dengan alamat fisik yang dikirim oleh malicious host. Didalam kondisi yang berbeda terkadang suatu host mendapatkan pesan ARP reply meskipun tidak mengirim permintaan ARP request, seperti yang terlihat pada gambar 1.4. 1.1.2.2 ARP request palsu ARP request palsu adalah sebuah paket permintaan ARP request yang dengan sengaja di kirim oleh sebuah malicious host. Berikut gambar dari ARP request palsu:
Gambar 1.5 ARP request palsu Pada gambar 1.5, malicioust host mengirim permintaan paket ARP request palsu untuk komputer 192.168.1.1, karena merasa di cari komputer 192.168.1.1 lalu mengirim ARP reply kepada malicious host dan menyimpan alamat 192.168.1.2 dengan alamat fisik 04:D1:22:05:FE:FE. Padahal kita sendiri tahu bahwa sebenarnya alamat fisik dari IP 192.168.1.2 adalah 00:00:0C:05:B4:3F namun kenyataannya malah alamat fisik si malicioust host yang di simpan. Inilah yang di sebut kemampuan seseorang untuk membuat crafted paket dengan menjadi siapapun namun dengan alamat fisik yang di isi sesuai dengan kemauan pengirim paket tersebut. Dan lucunya komputer yang mendapatkan pesan ARP request tersebut membalasnya.
Page | 6
1.1.3 Jenis – jenis serangan Setelah memahami celah kelemahan yang terdapat protokol ARP, selanjutnya adalah memahami jenis – jenis serangan yang dapat di akibatkan oleh serangan ARP spoofing/poisoning. 1.1.3.1 MITM (Man in The Middle) MITM adalah serangan lanjutan yang di mulai dari ARP spoofing/poisoning. Di dalam serangan MITM attacker akan memposisikan dirinya di tengah – tengah komunikasi antara dua pihak. Seluruh bentuk komunikasi akan melalui komputer attacker. Attacker akan dengan mudah melakukan penyadapan (sniffing), memanipulasi paket (tampering), mengontrol komunikasi dan semua serangan lainya yang di dimungkinkan dari serangan MITM ini. Sekarang mari kita lihat bagaimana proses terjadinya MITM, pada proses komunikasi yang normal/wajar komputer terlihat pada gambar di bawah:
Gambar 1.6 Komunikasi normal Attacker memulai aksinya dengan mengirim pesan ARP reply palsu (spoof/poison) untuk meracuni tabel ARP PC: A dan PC: B . seperti yang di tunjukan pada gambar 1.7.
Page | 7
Gambar 1.7 ARP spoofing/poisoning Sampai disini attacker berhasil membelokkan komunikasi (gambar 1.8), agar tidak di curigai dan tidak menimbulkan putusnya koneksi maka attacker akan membuat komputernya menjadi mesin routing untuk melanjutkan paket data (forwarding) ke paket tujuan begitu juga sebaliknya. Kondisi inilah yang di sebut dengan Man in The Middle Attack. Seperti terlihat pada gambar 1.9
Gambar 1.8 Attacker berhasil mengalihkan komunikasi
Gambar 1.9 MITM (Man in The Middle Attack) Page | 8
Attacker melakukan serangan MITM dengan tujuan: 1. Menyadap percakapan pada instant messaging. Ex: irc, yahoo messeger, window messeger, whatsapp, dll. Atau bentuk komunikasi pesan plain text lainya. 2. Mengumpulkan/memperoleh data – data sensitif, Ex: username & password, nomer kartu kredit, dll. 3. Membajak sesi (session hijacking) pada protokol web. Ex: http or https. 4. DNS spoofing, Web Spoofing, dll. 1.1.3.2 DoS (Denial of Service) Serangan ini merupakan bentuk serangan yang mengasosiasikan alamat ip dengan alamat fisik yang dipalsukan. Misalnya, anda memiliki IP: 192.168.1.4 dengan MAC: 00:11:22:55:F3:C5 secara normal ketika anda berkomunikasi dengan gateway yang beralamat IP: 192.168.1.1 berarti pada table ARP milik gateway di petakan bahwa IP: 192.168.1.4 alamat fisiknya adalah MAC: 00:11:22:55:F3:C5, namun seorang attacker dapat mengasosiasikan alamat IP: 192.168.1.4 dengan alamat MAC yang di palsukan. Apa yang terjadi ketika attacker berhasil melakukan hal ini ?, tentu anda tidak dapat terkoneksi dengan gateway. Teknik seperti inilah yang di gunakan oleh alat pemutus jaringan seperti Netcut.
Gambar 1.10 Attacker mengasosiasikan IP: 192.168.1.4 dengan MAC yang di palsukan 1.1.3.3 MAC flooding Perangkat penghubung switch memang lebih cerdas jika di bandingkan dengan hub, switch memiliki kemampuan merekam serta memetakan alamat fisik dari masing – masing Page | 9
komputer yang di hubungkannya. Switch memiliki memory yang di sebut Content Addressable Memory (CAM) table, untuk menyimpan alamat MAC. Dibalik kemampuan itu, fungsi CAM pada switch ternyata memiliki kelemahan, yaitu dari sisi keterbatasan ruang penyimpanan. Misalnya anda memiliki sebuah switch yang dapat menyimpan alamat MAC sebanyak 5000 buah, seorang attacker membanjiri switch milik anda tersebut hingga lebih dari 5000 alamat MAC. Ketika sebuah CAM tidak lagi dapat menampung alamat MAC, maka switch tidak akan ada bedanya dengan hub, yang hanya memiliki kemampuan untuk meneruskan sinyal. Disaat switch kehilangan kemampuannya, attacker tidak akan melewati kesempatan untuk melakukan penyadapan dan capturing data.
1.1.4 Usaha pencegahan Berbagai jenis serangan yang telah di jabarkan sebelumnya merupakan bentuk serangan yang relatif sulit untuk di cegah, Beberapa hal yang bisa menjadi solusi pencegahan antara lain:
1. Gunakan IP statis (tanpa dhcp), sebagai usaha menghindari serangan DHCP spoofing. 2. Melindungi ARP table/cache, karena ARP spoofing/poisoning merupakan serangan yang memaanfaatkan kelemahan pada tabel ARP yang dinamis, maka solusinya adalah membuat ARP menjadi statis, dengan cara mengetikan perintah “arp –s [ip] [mac]”. Langkah ini bisa di lakukan setiap reboot dengan cara menyimpan perintah ke dalam sebuah startup script. 3. Gunakan port security, switch model manageable. 4. Gunakan selalu protokol komunikasi yang aman/terenkripsi, tujuannya agar data yang di alirkan menjadi acak sehingga ketika di sadap akan berbentuk paket – paket yang sulit di baca.
5. Dan jika diperlukan, silakan monitoring menggunakan perangkat lunak seperti wireshark, tcpdump, arpwatch, dll. 1.2 Tentang Etherwall Etherwall adalah perangkat keamanan jaringan gratis dan kode terbuka yang di design untuk mencegah MITM (Man in The Middle) melalui serangan ARP spoofing/poisoning. Juga mencegah dari jenis - jenis serangan yang di turunkannya seperti Sniffing, Hijacking, Netcut, DHCP Spoofing, DNS Spoofing, WEB Spoofing, dan lain-lain. Melindungi host secara aktif, menyaring paket ARP secara ketat, serta memberikan peringatan dini kepada pengguna akhir jika di temukan adanya indikasi serangan ARP cache poisoning. Etherwall di tulis dalam bahasa pemrograman python menggunakan pustaka/library Scapy. Mendukung penuh sistem operasi Page | 10
Linux, telah di uji coba di beberapa distribusi populer seperti Slackware, Debian, Ubuntu, Backtrack, Mint, CentOS, Fedora, OpenSUSE, dll. Beberapa fitur dari etherwall diantaranya: • • • • • • • • • • •
Daemon Processing ARP Packet Filtering Point to Point & Point to Multipoint Protection Realtime Protection System Logging Early Warning Support for networks Statically, Dynamically, or Both Supports for Ethernet Wired & Wireless interface (IEEE 802.3 & IEEE 802.11) Plugins / Tools Included Man Pages Easy to Use and Free
1.2.1 Motivasi Menutupi kelemahan isu keamanan protokol ARP, mencegah dari serangan MITM (Man in The Middle) melalui ARP spoofing/poisoning. Juga mencegah dari berbagai jenis serangan yang memaanfatkan kelemahan dari cara kerja protokol ARP. 1.2.2 Skenario aplikasi Etherwall berjalan sebagai proses daemon, memiliki 3 algoritma dasar diantaranya adalah ARP packet filtering, Point to Point protection, Point to Multipoint protection. 1.2.2.1 ARP packet filtering Secara default etherwall hanya mengijinkan paket yang berasal dari router/gateway untuk dapat di proses oleh kernel. Jika ingin mengijinkan host lain maka user dapat membuat daftar host yang di perbolehkan melalui sebuah file konfigurasi (Pembahasan pada hal:21). Skenario algoritma ini bisa di lihat pada gambar dibawah:
Page | 11
Gambar 1.11 ARP packet filtering
1.2.2.2 Point to Point Protection Point to Point protection adalah algoritma untuk menjaga komunikasi antara dua pihak dengan memberikan alamat yang valid sehingga TRUE komunikasi akan selalu terjaga.
Gambar 1.12 Point to Point protection 1.2.2.3 Point to Multipoint Protection Algoritma Point to Multipoint Protection sama seperti dengan Point to Point, namun pada algoritma ini perlindungan di berikan untuk dua atau lebih host. Page | 12
Gambar 1.1 1.13 Point to Multipoint protection 1.2.3 Algoritma
Gambar 1.14 Algoritma Etherwall Page | 13
1.2.4 Mengapa Etherwall di butuhkan ? Seberapa penting etherwall di butuhkan ?, tentu pertanyaan ini memiliki jawaban yang relatif bagi masing – masing individu. Namun di sisi lain saya dapat menyimpulkan beberapa alasan: 1. Tidak ada yang dapat menjamin bahwa koneksi publik seperti sekolah,kampus,kantor,cafe,mall,dan tempat umum lainnya itu aman. 2. Banyak perangkat lunak yang dapat di gunakan untuk mengeksploitasi kelemahan protokol ARP. 3. Tidak semua pengguna mengerti keamanan jaringan. 4. Menghindar dari pelaku kegiatan network abuse. 5. Gangguan ARP Worm pada sebuah jaringan. 1.2.5 Pengguna akhir (End User) Etherwall di tujukan hanya untuk penggunaan komputer personal, penggunaan di luar itu sangat tidak di rekomendasikan. Aplikasi ini gratis dan berbasis opensource, Anda di ijinkan untuk menyebarluaskannya dan/atau memodifikasinya di bawah ketentuan-ketentuan dari GNU General Public License versi 3 atau versi lain (pilihan anda) yang lebih tinggi.
Page | 14
Panduan installasi Etherwall 2.1 Mendapatkan Etherwall Sangat penting untuk mengunduh etherwall pada sumber yang dapat dipercaya, Ini merupakan langkah untuk mencegah perubahan isi kode sumber oleh pihak – pihak yang tidak bertanggung jawab yang mungkin dapat menyebabkan kerugian bagi anda. Etherwall latest release: http://sourceforge.net/projects/etherwall Etherwall development: https://github.com/rndc/etherwall 2.2 Kebutuhan sistem Etherwall adalah program yang tidak berdiri sendiri, ia membutuhkan beberapa program dan library/pustaka untuk dapat berjalan. Program dan pustaka itu diantaranya: 1. Python >= 2.5.2 2. Scapy (sudah disertakan di dalam installasi etherwall) 3. Arptables (untuk kernel >= 2.6.16 gunakan versi 0.0.3-4) silakan cek informasi tentang arptables di http://ebtables.sourceforge.net/downloads/latest.html. Jika anda memiliki koneksi internet program installasi etherwall akan mengunduh, mengkompilasi, dan memasang arptables pada sistem anda secara otomatis setelah mendapat persetujuan user. 4. Python GTK library 5. Utilitas linux: arp, ifconfig, dan tcpdump (hampir semua distro memiliki utilitas ini kecuali tcpdump) 2.3 Installasi etherwall Pada sesi ini akan di jelaskan tutorial installasi etherwall secara step by step, langkah – langkah installasi sebagai berikut : 1. Extract file hasil download $ tar -zxf etherwall-1.0.BETA3.tar.gz
2. Masuk ke dalam direktori file $ cd etherwall-1.0.BETA3
Page | 15
3. Eksekusi file install.sh, pada step ini anda wajib memiliki hak akses root atau administrator system (anda bisa menggunakan perintah su atau sudo). # bash install.sh
atau # chmod +x install.sh # ./install.sh
4. User Agreement (persetujuan user) Are you sure you want install etherwall?[y/n] y GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too.................................................... ...................................................................... ...................................................................... ........... Do you agree with the license?[y/n] y ...................................................................... ........... Creating etherwall installation directory and copying files... Creating etherwall script... Creating etherwall console script... Copying etherwall configuration files... Copying manual pages... Setting executable flags... Installation finished. Type 'etherwall' or 'ethwconsole' as root to run etherwall.
Page | 16
Panduan penggunaan Etherwall 3.1 Etherwall Perintah etherwall di gunakan untuk menjalankan, menghentikan, menjalankan kembali, dan memeriksa status dari layanan daemon etherwall. Anda bisa mengetikkan perintah ini di terminal dimanapun lokasi kerja anda asalkan memiliki hak akses root atau admin system. Bentuk umum penggunaan: etherwall {start|stop|restart|status}
Sebagai contoh: etherwall start
Keterangan: start: menjalankan layanan daemon etherwall stop: menghentikan layanan daemon etherwall restart: menjalankan kembali layanan daemon etherwall status: memeriksa status daemon, apakah berjalan atau berhenti.
3.2 Ethwconsole Ethwconsole adalah sebuah konsol interaktif (berbasis-teks) program dari etherwall untuk digunakan sebagai tambahan pertahanan jaringan (White Hat tools :D). Ethwconsole prompt menyediakan beberapa program yang berguna untuk menganalisa dan mengindetifikasi keadaan jaringan, Tujuannya adalah untuk meminimalisasi berbagai jenis serangan yang sering terjadi pada LAN (Local Area Network). Bentuk umum penggunaan: ethwconsole Sebagai contoh: ethwconsole
Page | 17
Beberapa tool atau plugin yang tersedia beserta fungsinya:
1. allow Secara standar komputer yang menjalankan etherwall hanya dapat berkomunikasi dengan gateway komputer dan komputer di luar segmen jaringan dari antarmuka yang aktif. Kecuali host yang memiliki izin yang telah disertakan dalam file “/etc/etherwall/allow.conf”. Jika Anda ingin mengizinkan akses sementara kepada suatu host silakan gunakan perintah ini. Contoh: ethw> allow 192.168.1.100
2. arp perintah arp digunakan untuk memanipulasi sistem arp cache dan dump dari cache arp diwakili dalam tampilan tabulasi. Contoh: ethw> arp ethw> arp -s 192.168.1.100 00:11:22:33:44:55 ethw> arp -d 192.168.1.100
3. arping Alat arping digunakan untuk mengirim dan menerima paket pada lapisan data link. Jika anda ingin mengamati jaringan LAN melalui protokol ARP bisa menggunakan gunakan alat ini. Contoh: ethw> arping 192.168.1.100 ethw> arping 192.168.1.100/24
4. banner Perintah banner digunakan untuk menampilkan gambar ASCI secara acak. Contoh:
Page | 18
ethw> banner
5. clear Perintah clear digunakan untuk menghapus layar konsol. Contoh: ethw> clear
6. deny perintah deny digunakan untuk mencabut perizinan (kebalikan dari perintah allow). Contoh: ethw> deny 192.168.1.100
7. dhcpcop Perintah dhcpcop digunakan untuk mengidentifikasi server DHCP palsu pada LAN (mencegah DHCP palsu dan sesat). Seperti program klien dhcp, tetapi hanya mengirim paket dhcp discover. Contoh: ethw> dhcpcop ethw> dhcpcop wlan1
8. flog Perintah flog digunakan untuk menampilkan beberapa baris terakhir dari file log etherwall ke output standar, Baris standarnya 10 baris jika tidak ditentukan. Ini seperti program tail di Unix system. Contoh: ethw> flog ethw> flog 15
Page | 19
9. gwdisc Perintah gwdisc digunakan untuk menemukan gateway atau host router pada LAN (mengidentifikasi router palsu). Dengan mengirim permintaan paket echo ke komputer yang terletak pada jaringan Internet atau WAN. Untuk melakukan tindakan ini, anda perlu mengatur alamat default gateway. Hanya mengatur alamat yang Anda inginkan, tetapi harus sesuai dengan segmen jaringan atau mengatur alamat sebenarnya dari gateway. Sebagai contoh: Anda mengatur interface jaringan eth0 dengan alamat 192.168.1.23, atur alamat default gateway yang Anda inginkan, misalnya 192.168.1.100. Contoh: ethw> gwdisc ethw> gwdisc -t xxx.xxx.xxx.xxx ethw> gwdisc -i wlan0 -t xxx.xxx.xxx.xxx
10. help Perintah help digunakan untuk menampilkan panduan. Contoh: ethw> help
11. interface Perintah interface digunakan untuk menampilkan antarmuka yang aktif. Ini berarti perangkat mampu dan siap untuk berkomunikasi pada jaringan. Contoh: ethw> interface
12. linktype Perintah linktype digunakan untuk memeriksa tipe link jaringan (HUB/SWITCH). HUB & switch berbeda, Jika Anda terhubung kedalam link HUB, sangat tidak dianjurkan untuk menggunakan protokol yang tidak aman (resiko keamanan). Jika terhubung
Page | 20
kedalam link switch juga sangat direkomendasikan untuk selalu menggunakan protokol yang aman untuk keamanan yang lebih maju. Contoh: ethw> linktype
13. macfaked Perintah macfaked digunakan untuk memanipulasi alamat fisik dari antarmuka jaringan. Digunakan untuk penyamaran alamat MAC. Contoh: ethw> macfaked -r eth0 ethw> macfaked -m 00:11:22:33:44:55 wlan0
14. macvendor Perintah macvendor digunakan untuk menampilkan vendor dari alamat MAC. Vendor database alamat MAC didapatkan dari Oui - IEEE-SA, terletak di http://standards.ieee.org/develop/regauth/oui/oui.txt. Contoh: ethw> macvendor 00:11:22:33:44:55
15. promiscop Perintah promiscop digunakan untuk mendeteksi promiscuous node dalam LAN (deteksi sniffer). Untuk informasi lebih lanjut bagaimana teknik ini bekerja silahkan download materi di: http://www.securityfriday.com/promiscuous_detection_01.pdf Contoh: ethw> promiscop ethw> promiscop 192.168.1.100 ethw> promiscop -i wlan0 192.168.1.2/24
Page | 21
3.3 Direktori dan file program Etherwall Direktori/File
Keterangan
/opt/etherwall
Lokasi hasil installasi, didalamnya terdapat file program dan dokumentasi.
/etc/etherwall/etherwall.conf
File konfigurasi etherwall berisi kata kunci dan argumen berpasangan, yang mana akan di eksekusi ketika anda menjalankan etherwall. Baris yang di mulai tanda ‘#’ dan baris kosong dianggap sebuah komentar, penulisan kata kunci dan argumen tidak di perbolehkan menggunakan spasi kosong. Format: Katakunci=argumen
/etc/etherwall/allow.conf
File ini menjelaskan host yang di perbolehkan berkomunikasi dengan sistem anda. Sebagai keamanan kontrol akses (Filterisasi MAC address). Format: ip-mac
/etc/etherwall/etherwall-oui.txt
File ini berisi kumpulan database vendor MAC.
/var/log/etherwall/etherwall.log
Daemon program akan mencatat seluruh aktifitas pada file ini, kemungkinan ukuran file akan membesar sehingga anda wajib membersihkannya secara manual.
Tabel 3.1 Direktori dan file program etherwall
Page | 22
Bantuan 4.1 Halaman manual Anda bisa memaanfaatkan buku ini sebagai petunjuk penggunaan, atau bisa memanfaatkan manual pages. Halaman manual saat ini tersedia dalam dua bahasa, yaitu english dan indonesian. Contoh: $ man etherwall versi bahasa indonesia: $ man etherwall-id atau $ man ethwconsole versi bahasa indonesia: $ man athwconsole-id 4.2 Laporan bug dan pertanyaan Seperti penulisnya, etherwall tidaklah sempurna. Anda bisa membuatnya lebih baik dengan mengirimkan laporan bug, menulis patch, atau memberikan umpan balik anda. Jangan ragu dan hubungi saya secara pribadi ke alamat email saya :D. Selain email, Anda juga bisa melaporkan bug dan pertanyaan di alamat https://github.com/rndc/etherwall/issues.
Page | 23
Penutup 5.1 Kesimpulan ARP spoofing/poisoning merupakan sebuah serangan yang relatif sulit di tangkal dalam satu broadcast domain, namun dengan segala kemungkinan yang bisa di lakukan dengan metode yang telah di implementasikan ke dalam program etherwall dapat menjadi solusi. Beberapa materi dalam buku ini di bahas dengan bahasa yang sederhana dengan tujuan agar siapapun dapat dengan mudah memahaminya. Besar harapan buku ini dapat memberikan ilmu yang bermaanfaat meski penulis sadari masih banyak kekurangan, baik dari segi materi ataupun format penulisan. 5.2 Ucapan terima kasih Saya mengucapkan terimakasih kepada rekan – rekan di RNDC (We are the warriors of indonesian technology :D). Special thanks to Drubicza yang telah ikut berpartisipasi dalam perkembangan kode etherwall, dan tidak lupa saya ucapkan terimakasih kepada Dennis Choober atas logo, gambarnya bagus dan keren :D. Dan semua pihak yang tidak bisa di sebutkan satu persatu. Terimakasih juga kepada anda semua yang telah membaca buku ini.
Page | 24
Daftar Pustaka [1] http://www.en.wikipedia.org/wiki/Address_Resolution_Protocol [2] http://www.en.wikipedia.org/wiki/CAM_Table [3] http://www.rootsecure.net/content/downloads/pdf/arp_spoofing_intro.pdf [4] http://www.secdev.org/projects/scapy/ [5] http://www.securityfriday.com/promiscuous_detection_01.pdf [6] http://www.tcpipguide.com/free/t_ARPMessageFormat.htm [7] http://www.tools.ietf.org/html/rfc826 [8] http://www.watchguard.com/infocenter/editorial/135324.asp