Keamanan Jaringan (TCPDump)
TCPDUMP
Library libpcap digunakan oleh tcpdump untuk menangkap traffic pada jaringan, Selain di linux, tcpdump juga dapat berjalan pada sistem operasi lainnya seperti windows, bsd, macOS, dan android, pada sistem operasi windows tcpdump dikenal dengan sebutan windump.
tcpdump tidak melakukan modifikasi terhadap paket yang diterima, oleh karena itu analisis terhadap paket sepenuhnya berada ditangan seorang analyst.
Penggunaan
ProtocolSelain mendukung protokol tcp, tcpdump juga mendukung berbagai macam jenis protokol lainnya untuk melakukan filtering, filtering protokol yang dapat digunakan adalah: fddi, ip, arp, rarp, decnet, lat, sca, moprc, mopdl, tcp dan udp. Jika tidak melakukan filter traffic berdasarkan protokol maka tcpdump akan menampilkan semua jenis protokol yang diterima.
Berikut contoh penggunaan filter protokol udp:
tcpdump -n udp
Direction
Tcpdump juga dapat melakukan filtering berdasarkan arah traffic, baik traffic yang diterima atau yang mengarah ke host lain. filtering arah traffic yang dapat digunakan adalah: src, dst, src and dst, dan src or dst. Jika tidak melakukan filter arah traffic, secara default yang digunakan adalah src or dst.
Berikut contoh penggunaan filter yang menampilkan semua traffic berasal dari host tertentu:
tcpdump -n src host 192.168.254.138
Host
Filtering pada tcpdump juga dapat berdasarkan port, range port dan segmen jaringan. Filtering yang dapat digunakan adalah: net, port, host, portrange. Jika tidak ada filter host yang digunakan secara default adalah host
Berikut contoh penggunaan filter berdasarkan port https:
tcpdump -n port 443
Logical Operation
Tcpdump mendukung filter berdasarkan operator logis. Operator logis yang dapat digunakan adalah: and, or, not. Operator not mempunyai prioritas lebih tinggi, operator and dan not mempunyai prioritas sama, alur filter dibaca dari kiri ke kanan.
Berikut contoh penggunaan filter yang menampilkan semua port kecuali https:
tcpdump -n not port 443
Save Packet
tcpdump memungkinkan untuk menyimpan traffic yang diterima oleh tcpdump kedalam sebuah file yang memungkinkan untuk dianalisa lebih lanjut. Traffic yang diterima oleh tcpdump disimpan dalam format pcap. Pcap ini dapat dianalisa menggunakan program packet analyzer lainnya seperti wireshark, snort, networkminer, dan bro.
Berikut contoh pemnatauan traffic dan menyimpannya kesebuah file bernama test.pcap:
tcpdump -n -w test.pcap
Contoh Kasus
Beberapa opsi dalam tcpdump dapat digunakan secara bersamaan, berikut beberapa contoh kasus yang dapat diselesaikan dengan bantuan tcpdump1. Pada saat melakukan troubleshoot seorang administrator ingin memastikan apakah host (10.10.8.4) telah mengirimkan log ke syslog server (172.16.7.2 port 514).
netsec:/home# tcpdump -n dst host 172.16.7.2 and port 514 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes 20:26:29.417475 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG local0.error, length: 87 20:26:29.418754 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG local0.error, length: 87 20:26:30.170554 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 107 20:26:30.170617 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 107 20:26:30.180588 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 129 20:26:30.180622 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 110 20:26:30.180629 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 129 20:26:30.180640 IP 10.10.8.4.48950 > 172.16.7.2.514: SYSLOG mail.info, length: 110 ^C 8 packets captured 9 packets received by filter 0 packets dropped by kernelDari hasil tcpdump diatas dapat dilihat bahwa host 10.10.8.4 telah berhasil mengirimkan lognya ke host 172.16.7.2
2. Seorang analyst ingin melakukan pengecekan apakah host yang terinfeksi malware masih mengirim traffic https ke IP 216.58.221.78
netsec:/home# tcpdump -n dst host 118.98.110.54 and port 443 -w malware tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes ^C 45 packets captured 46 packets received by filter 0 packets dropped by kernelDari hasil tcpdump diatas dapat dilihat bahwa paket jaringan yang mengarah ke port https (443) masih ada
Intrusion Detection System
IDS (Intrusion Detection System)
Rockford fosgate t400x4ad and 360.3
Intrusion Detection System digunakan untuk mendeteksi aktivitas yang mencurigakan dalam sebuah sistem atau jaringan. Intrusion adalah aktivitas tidak sah atau tidak diinginkan yang mengganggu konfidensialitas, integritas dan atau ketersediaan dari informasi yang terdapat di sebuah sistem. IDS akan memonitor lalu lintas data pada sebuah jaringan atau mengambil data dari berkas log. IDS akan menganalisa dan dengan algoritma tertentu akan memutuskan untuk memberi peringatan kepada seorang administrator jaringan atau tidak
Keywords : intrusion, intrusion detection system, jaringan, network security
Dewasa ini ada banyak solusi untuk mengurangi resiko dari serangan atau threat pada sebuah sistem komputer [1]. Intrusion Detection System (IDS) hanyalah salah satu dari sekian banyak contoh penanganan terhadap intrusion. Intrusion sendiri didefinisikan sebagai segala aktivitas yang bersifat mengganggu integritas, konfidensialitas, dan ketersediaan dari sumber daya atau resource [3]. IDS umumnya merupakan sebuah aplikasi yang dapat mendeteksi aktivitas yang mencurigakan dalam sebuah sistem atau jaringan[4]. IDS dapat melakukan inspeksi terhadap lalu lintas komunikasi data dalam sebuah sistem atau jaringan, melakukan analisis dan mencari bukti dari percobaan penyusupan (termasuk kategori penyusupan atau tidak)dan terkadang memberikan penanganan terhadap susupan atau gangguan yang terjadi. Pendeteksian dilakukan IDS agar memblock gangguan jika segera dideteksi, bertindak sebagai deterrent (mencegah seseorang melakukan gangguan/intrusion), mengumpulkan informasi untuk meningkatkan keamanan.
Tipe dasar IDS
- Rule-based systems : berdasarkan atas database dari tanda penyusupan atau serangan yang telah dikenal. Jika IDS mencatat lalu lintas yang sesuai dengan database yang ada, maka langsung dikategorikan sebagai penyusupan.
- Adaptive systems: mempergunakan metode yang lebih canggih. tidak hanya berdasarkan database yang ada, tetapi juga membuka kemungkinan untuk mendeteksi terhadap bentuk-bentuk penyusupan yang baru.
Bentuk yang sering digunakan untuk komputer secara umum adalah rule-based systems. pendekatan yang digunakan dalam rule-based systems ada 2, yaitu pendekatan pencegahan (preemptory) dan pendekatan reaksi (reactionary). Perbedaannya hanya masalah waktu saja. Pada pendekatan pencegahan, program pendeteksi penyusupan akan memperhatikan semua lalu lintaas jaringan. Jika ditemukan paket yang mencurigakan maka program akan melakukan tindakan yang perlu. Pada pendekatan reaksi, program pendeteksi penyusupan, hanya mengamati file log. Jika ditemukan paket yang mencurigakan program juga akan melakukan tindakan yang perlu.
Jenis-jenis IDS
Ada dua jenis IDS, yakni:
- Network-based Intrusion Detection System (NIDS): Network intrusion detection systems adalah jenis IDS yang bertanggung jawab untuk mendeteksi serangan yang berkaitan dengan jaringan[4]. NIDS umumnya terletak di dalam segmen jaringan penting di mana server berada atau terdapat pada “pintu masuk” jaringan. Kelemahan NIDS adalah bahwa NIDS agak rumit diimplementasikan dalam sebuah jaringan yang menggunakan switch Ethernet, meskipun beberapa vendor switch Ethernet sekarang telah menerapkan fungsi IDS di dalam switch buatannya untuk memonitor port atau koneksi.
- Host-based Intrusion Detection System (HIDS): Aktivitas sebuah host jaringan individual akan dipantau apakah terjadi sebuah percobaan serangan atau penyusupan ke dalamnya atau tidak. HIDS seringnya diletakkan pada server-server kritis di jaringan, seperti halnya firewall, web server, atau server yang terkoneksi ke Internet.
Kebanyakan produk IDS merupakan sistem yang bersifat pasif, mengingat tugasnya hanyalah mendeteksi intrusi yang terjadi dan memberikan peringatan kepada administrator jaringan bahwa mungkin ada serangan atau gangguan terhadap jaringan. Akhir-akhir ini, beberapa vendor juga mengembangkan IDS yang bersifat aktif yang dapat melakukan beberapa tugas untuk melindungi host atau jaringan dari serangan ketika terdeteksi, seperti halnya mentutp beberapa port atau memblokir beberapa alamat IP. Produk seperti ini umumnya disebut sebagai Intrusion Prevention System (IPS). Beberapa produk IDS juga menggabungkan kemampuan yang dimiliki oleh HIDS dan NIDS, yang kemudian disebut sebagai sistem hibrid (hybrid intrusion detection system).
Cara kerja IDS
Ada beberapa cara bagaimana IDS bekerja. Cara yang paling populer adalah dengan menggunakan pendeteksian berbasis signature (seperti halnya yang dilakukan oleh beberapa antivirus), yang melibatkan pencocokan lalu lintas jaringan dengan basis data yang berisi cara-cara serangan dan penyusupan yang sering dilakukan oleh penyerang. Sama seperti halnya antivirus, jenis ini membutuhkan pembaruan terhadap basis data signature IDS yang bersangkutan.
Metode selanjutnya adalah dengan mendeteksi adanya anomali, yang disebut sebagai Anomaly-based IDS. Jenis ini melibatkan pola lalu lintas yang mungkin merupakan sebuah serangan yang sedang dilakukan oleh penyerang. Umumnya, dilakukan dengan menggunakan teknik statistik untuk membandingkan lalu lintas yang sedang dipantau dengan lalu lintas normal yang biasa terjadi. Metode ini menawarkan kelebihan dibandingkan signature-based IDS, yakni ia dapat mendeteksi bentuk serangan yang baru dan belum terdapat di dalam basis data signature IDS. Kelemahannya, adalah jenis ini sering mengeluarkan pesan false positive. Sehingga tugas administrator menjadi lebih rumit, dengan harus memilah-milah mana yang merupakan serangan yang sebenarnya dari banyaknya laporan false positive yang muncul.
Teknik lainnya yang digunakan adalah dengan memantau berkas-berkas sistem operasi, yakni dengan cara melihat apakah ada percobaan untuk mengubah beberapa berkas sistem operasi, utamanya berkas log. Teknik ini seringnya diimplementasikan di dalam HIDS, selain tentunya melakukan pemindaian terhadap log sistem untuk memantau apakah terjadi kejadian yang tidak biasa.
Kelebihan
- dapat mendeteksi “external hackers” dan serangan jaringan internal
- dapat disesuaikan dengan mudah dalam menyediakan perlindungan untuk keseluruhan jaringan.
- dapat dikelola secara terpusat dalam menangani serangan yang tersebar dan bersama-sama
- menyediakan pertahanan pada bagian dalam
- menyediakan layer tambahan untuk perlindungan
- ids memonitor Internet untuk mendeteksi serangan
- ids membantu organisasi utnuk mengembangkan dan menerapkan kebijakan keamanan yang efektif
- ids memungkinkan anggota non-technical untuk melakukan pengelolaan keamanan menyeluruh
- adanya pemeriksaan integritas data dan laporan perubahan pada file data
- ids melacak aktivitas pengguna dari saat masuk hingga saat keluar
- ids menyederhanakan sistem sumber informasi yang kompleks
- ids memberikan integritas yang besar bagi infrastruktur keamanan lainnya
Kekurangan
- Lebih bereaksi pada serangan daripada mencegahnya
- menghasilkan data yang besar untuk dianalisis
- rentan terhadap serangan yang “rendah dan lambat”
- tidak dapat menangani trafik jaringan yang terenkripsi
- ids hanya melindungi dari karakteristik yang dikenal
- ids tidak turut bagian dalam kebijakan keamanan yang efektif, karena dia harus diset terlebih dahulu
- ids tidak menyediakan penanganan kecelakaan
- ids tidak mengidentifikasikan asal serangan
- ids hanya seakurat informasi yang menjadi dasarnya
- Network-based IDS rentan terhadap “overload”
- Network-based IDS dapat menyalahartikan hasil dari transaksi yang mencurigakan
- Paket terfragmantasi dapat bersifat problematis
Contoh program IDS
* chkwtmp - Program yang melakukan pengecekan terhadap entry kosong. dalam arti wtmp mencatat sesuatu tapi isinya kosong.
* tcplogd - Program yang mendeteksi stealth scan. stealth scan adalah scanning yang dilakukan tanpa harus membuat sebuah sesi tcp. sebuah koneksi tcp dapat terbentuk jika klien mengirimkan paket dan server mengirimkan kembali paketnya dengan urutan tertentu, secara terus menerus sehingga sesi tcp dapat berjalan. stealth scan memutuskan koneksi tcp sebelum klien menrima kembali jawaban dari server. scanning model ini biasanya tidak terdeteksi oleh log umum di linux.
* hostsentry - Program yang mendeteksi login anomali. anomlai disini termasuk perilaku aneh (bizzare behaviour), anomali waktu (time anomalies), dan anomali lokal (local anomalies).
* snort
Snort adalah program IDS yang bekerja pada umumnya pada sistem operasi Linux, namun banyak pula versi yang dapat digunakan di beragam platform [5]. Snort pada umumnya merujuk kepada intrusion detection system yang sifatnya lightweight atau ringan karena diperuntukkan bagi jaringan kecil. Snort sangat fleksibel karena arsitekturnya yang berbasis rule [6]
Visual Recognition
Membuat Aplikasi Recycletor dengan Watson
Dalam kesempatan ini, kita tidak akan belajar tentang teori Watson Visual Recognition. Kita akan belajar tentang cara menggunakan layanan Watson Visual Recognition untuk membangun sebuah aplikasi pendeteksi benda-benda yang dapat didaur ulang. Berikut langkah-langkahnya:
Persiapan Tools
Sebelum mulai membangun aplikasi pendeteksi benda-benda yang dapat didaur ulang dengan menggunakan Watson Visual Recognition, rekan-rekan harus mempersiapkan beberapa hal berikut ini:
- Cloud Foundry CLI
- NodeJS
- Code Editor (Notepad++, Sublime Text, dll)
- Android Studio
Mempersiapkan Server
Setelah persiapan selesai, langkah selanjutnya adalah mempersiapkan server. Berikut caranya:- Download/Clone sampel aplikasi Node.js IBM Watson Visual Recognition Service
- Pada folder sampel aplikasi yang sudah diunduh, buka file manifest.yml. Ubah <application-name> pada bagian -name dengan nama yang anda inginkan. Nama tersebut harus dibuat unik karena akan menjadi inisial url aplikasi anda, sebagai contoh adalah <application-name>.mybluemix.net.
- Pada file app.js, masukan API key anda. Tutorial membuat servis dan cek API key di sini.
- Selanjutnya kita akan mencoba terlebih dulu API pada localhost. Buka folder yang diunduh, tekan “Shift+klik kanan->Open command window here” untuk membuka Command Line pada sistem operasi Windows.
- Jalankan aplikasi dengan mengetikan $ npm start pada Command Line, jika berhasil tampilan akan menjadi seperti di bawah ini:
- Lakukan uji coba API menggunakan aplikasi Postman, dengan url: localhost:3000/api/classify
- Untuk mengembangkan aplikasi pemindai benda-benda yang dapat didaur ulang, kita sebenarnya hanya memerlukan nilai “class” yang ada pada objek array classes.
- Oleh karena itu, kita hanya perlu mengambil nilai tersebut. Untuk mengambilnya, Buka file app.js. Kemudian tambahkan source code berikut ini pada baris 319:
- Kemudian disable dengan menambahkan // pada baris berikut ini:
- Mulai kembali aplikasi menggunakan perintah $ npm start pada Command Line. Dan coba kembali aplikasi menggunakan aplikasi Postman. Hasilnya akan terlihat seperti berikut ini: (hanya nilai class yang muncul)
- Login menggunakan akun Bluemix menggunakan Command Line dengan perintah seperti berikut:
- Masukan email anda pada <your user ID> . Jika anda belum memiliki akun Bluemix,
- Buatlah layanan Visual Recognition pada Bluemix menggunakan command line dengan perintah seperti berikut:
- kemudian push aplikasi menggunakan command line dengan perintah berikut:
- Jika berhasil, respon yang akan muncul adalah seperti berikut :
- Cek API menggunkan aplikasi Postman kembali:
Membuat Aplikasi Android Watson Visual Recognition
Setelah selesai mempersiapkan server, langkah selanjutnya adalah membuat aplikasi Android. Berikut ini cara membuat aplikasinya:
- Download sampel aplikasi di sini – (size 66mb).
- Buka file pada Android Studio.
- Buat Class baru. Dan beri nama “Response”
- Buka http://www.jsonschema2pojo.org/. Paste schema JSON pada API yang tampil pada aplikasi Postman dan konfiguasikan seperti berikut ini:
- Klik tombol Preview. Dan salin source code yang muncul ke dalam Class Response yang telah dibuat.
- Masukan base url anda pada class MainActivity pada baris 123.
- Kemudian tambahkan source code berikut pada baris 278.
- Kode di atas berfungsi untuk menampung data dari hasil pengolahan server, yang berupa Tag. Jika anda ingin menambahkan field lain pada response API, tambahkan variabel sesuai kebutuhan.
- Gunakan fungsi finalResult() untuk mengirimkan data ke ActivityResult :
- Jika terdapat variabel lain yang ingin anda kirim, Edit fungsi finalResult() sesuai dengan kebutuhan.
- Pada Class Result, tambahkan source code berikut pada baris 44:
- Setelah itu, jalankan Aplikasinya. Tampilan dari aplikasi adalah seperti berikut:
- Perbanyak pengenalan benda yang dapat didaur ulang pada source code berikut :
Nice
BalasHapus