JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
30
EVALUASI PERFORMANSI DETEKSI SERANGAN PADA HIDS OSSEC
EKA STEPHANI SINAMBELA eka@del.ac.id
ABSTRACT
HIDS (Host Intrusion Detection system) is an application which is intended for monitoring and protecting the host computer system (server) and its network activities. This intrusion detection system is integrated into the server to detect the intruder attack activities and report the events to the network administrator. Throughout the years, different HIDS technology developed to counter, the computer crime with different type of attacks that attempts for entering the computer system.
Therefore, the main goal of this paper is to provide a review of a most-widely used HIDS application called OSSEC. The evaluation process is conducted by applying some scenarios that practice the intruder activities who attempts to penetrate the host computer system. Each scenario is designed to run different intruder attacks that come from one or more attacker.
Finally, the performance is evaluated by measuring the response time of OSSEC to detect the intrusion, the consumption of CPU and memory while detecting the intrusion.
Keywords : HIDS, OSSEC PENDAHULUAN
Dengan berkembangnya teknologi informasi dan komunikasi juga mengakibatkan perkembangan terhadap serangan siber yang terjadi. Untuk mengatasi permasalahan ini banyak aplikasi yang diciptakan untuk mendeteksi serangan yang terjadi pada jaringan komputer, salah satunya yaitu dengan munculnya aplikasi HIDS (Host-based Intrution Detection System).
HIDS adalah sebuah sistem pengawasan atau monitoring terhadap aktivitas sebuah host (server ataupun Personal Computer) dalam suatu jaringan, terhadap kemungkinan terjadinya serangan atau penyusupan terhadap host [1]. HIDS diletakkan pada host yang terhubung pada suatu jaringan yang berperan penting seperti firewall, web server ataupun server lainnya yang terkoneksi ke internet. HIDS bertujuan untuk mengumpulkan informasi tentang aktivitas pada host di sistem jaringan komputer [1], [2].
Oleh sebab itu, perlu dilakukan evaluasi lebih lanjut terhadap performansi suatu HIDS dengan melakukan pengujian terhadap host melalui berbagai jenis serangan jaringan komputer yang akan menyerang kelemahan (vulnerability) dari host.
Pada penelitian ini HIDS yang akan dievaluasi performansinya adalah OSSEC (Open Source HIDS Security) yang bersifat open source. Performansi OSSEC akan dievaluasi berdasarkan beberapa faktor yaitu kemampuan untuk mendeteksi serangan yang ditujukan kepada host, konsumsi sumberdaya CPU dan memori oleh OSSEC ketika mendeteksi beberapa serangan dari beberapa penyerang. Performansi HIDS OSSEC untuk mendeteksi serangan akan diuji dengan menggunakan berbagai jenis serangan yang dirancang sesuai dengan skenario.
METODE PENELITIAN
Pendekatan yang dilakukan dalam pelaksanaan penelitian ini adalah:
1. Studi Literatur
Memahami konsep Host-based Intrusion Detection System (HIDS), memahami konsep lalu lintas jaringan, mempelajari jenis serangan dan bagaimana membuat suatu serangan. Mengumpulkan informasi mengenai Host-based Intrusion Detection System(HIDS) sebagai referensi untuk melakukan evaluasi dan perbandingan antara berbagai tools HIDS.
2. Analisis dan Desain
Dalam bagian ini, sistem akan dibangun sesuai dengan skenario. Seperti penyediaan server, instalasi sistem operasi dan
juga perancangan sistem yang terdiri atas integarasi perangkat keras dan perangkat lunak.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
31 3. Implementasi dan Pengujian
Implementasi dilakukan dengan menerapkan desain sistem yang telah dirancang. Kemudian, pada tahap pengujian dilakukan berbagai serangan kepada host sesuai dengan yang telah disusun pada skenario.
STUDI LITERATUR
Host-based Intrusion Detection System (HIDS)
HIDS adalah sebuah sistem pengawas terhadap aktivitas sebuah host dalam suatu jaringan dan memantau apakah ada serangan atau penyusupan kedalam host (Server atau Personal Computer). Sistem ini akan memonitor dan menganalisa paket data dalam jaringan ataupun dalam host dan akan mendeteksi paket yang berupa serangan. HIDS sering diletakan pada server yang terhubung pada suatu jaringan yang menyimpan data data yang penting. HIDS ini mengamankan suatu server secara passive, artinya HIDS hanya akan mengirimkan alert (notifikasi) kepada administrator apabila terjadi serangan tanpa menangani serangan yang terjadi [1], [2].
HIDS memiliki 2 metode dalam mendeteksi suatu serangan yaitu Signature-based detection dan anomaly-based detection.
Signature adalah kriteria atau pola-pola serangan yang pernah terjadi dan telah ada yang menjadi acuan pembanding paket yang telah ada untuk mendeteksi serangan sedangkan anomaly adalah metodologi yang membandingkan aktivitas yang normal dengan aktivitas yang mencurigakan pada lalu lintas jaringan untuk diobservasi, diidentifikasi penyimpangan yang signifikan [4].
Metode Pendeteksian Serangan
Teknologi HIDS menggunakan beberapa metodologi untuk mendeteksi serangan. Secara umum, metodologi dalam pendeteksian ada dua, yaitu Signature-based dan Anomaly-based.
a. Signature-based Detection
Signature-based detection adalah cara yang dilakukan HIDS untuk mengenali adanya penyusupan dengan cara melihat paket data yang di kirimkan oleh intruder kemudian membandingkannya dengan rule yang ada pada database HIDS tersebut. Database rule tersebut dapat berisi signature-signature paket serangan. Jika pattern atau pola paket data tersebut terdapat kesamaan dengan rule database padsa HIDS maka paket tersebut diangggap sebagai serangan [3],[7].
b. Anomaly-based Detection
Metodologi yang membandingkan aktivitas yang normal dengan aktivitas yang mencurigakan pada lalu lintas jaringan untuk diamati dan untuk menentukan kemungkinan terjadinya serangan. Contoh, sebuah profil dari jaringan menunjukkan bahwa aktivitas web memakai rata-rata 20% dari bandwidth jaringan selama jam kerja. Namun pada keadaan tertentu ternyata pemakaian bandwidth dapat mencapai 60%, maka dengan menggunakan metode ini HIDS akan mendeteksi terjadinya serangan akibat hal yang tidak normal [3],[7].
Jenis HIDS
Ada beberapa jenis HIDS saat ini, diantaranya adalah OSSEC, SNORT dan Tripware. Beberapa jenis HIDS tersebut akan dijelaskan pada subbab berikut:
a. OSSEC
OSSEC HIDS adalah sebuah aplikasi open source yang dapat digunakan untuk melalukan monitoring log server. Apabila
terjadi sesuatu di server, misalnya seseorang melakukan gagal login di server, maka server akan mencatat siapa, dari lokasi
mana, jam berapa dan aplikasi apa yang diakses. Kelemahan sebagai admin terkait dengan log server ini adalah admin
kesulitan menganalisa setiap log yang ada, yang dapat berakibat fatal, misalnya saat terjadi hacking melalui brute force
attack, server telah mencatat adanya serangan akan tetapi admin mengetahuinya. OSSEC HIDS terdiri dari dua kategori,
yaitu sebagai server dan sebagai agent. Setiap agent akan mengirimkan log yang dimonitor ke server OSSEC. Agent dapat
berjlan pada multi-platform atau berbagai jenis sistem operasi seperti Windows ataupun Linux. Dengan demikian, OSSEC
akan menyimpan semua log yang berasal dari agent yang kemudian akan dianalisis dan diberikan notifikasi kepada
administrator [5],[6],[8].
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
32 b. SNORT
Snort adalah sebuah perangkat lunak ringkas yang sangat berguna untuk mengamati aktivitas dalam suatu jaringan komputer. Snort dapat digunakan sebagai Network Intrusion Detection System (NIDS) dan juga Host-based Intrusion Detection system (HIDS). SNORT menggunakan sistem peraturan (rules system) yang relatif mudah dipelajari untuk melakukan deteksi dan pencatatan (logging) terhadap berbagai macam serangan terhadap jaringan komputer. Dengan membuat berbagai rules untuk mendeteksi ciri-ciri khas (signature) dari berbagai macam serangan, maka Snort dapat mendeteksi dan melakukan logging terhadap serangan-serangan tersebut [5],[6],[8].
c. Tripware
Tripware berfungsi untuk menjaga integritas file sistem dan direktori, dengan mencatat setiap perubahan yang terjadi pada file dan direktori. Konfigurasi Tripware meliputi pelaporan melalui email, bila menemukan perubahan file yang tidak semestinya dan secara otomatis melakukan pemeriksaan file melalui program Cron. Penggunaan Tripware biasanya digunakan untuk mempermudah pekerjaan yang dilakukan oleh Administrator dalam mengamankan sistem komputer.
Cara kerja Tripware adalah melakukan perbandingan file dan direktori yang ada dengan database sistem. Perbandingan tersebut meliputi perubahan tanggal, ukuran file, penghapusan dan lain-lainnya. Setelah tripware dijalankan, secara otomatis akan melakukan pembuatan database sistem. Kemudian secara periodik akan selalu melaporkan setiap perubahan pada file dan direktori.
Dari 3 jenis HIDS diatas OSSEC dipilih untuk diobservasi dikarenakan OSSEC termasuk salah satu HIDS open source yang terbaik saat ini, dimana dapat mengetahui adanya serangan secara real time dan dapat melaporkan serangan yang terjadi melalui email kepada administrator. Snort merupakan IDS yang tidak dikhususkan untuk host melainkan untuk aktivitas di jaringan komputer, sehingga performansi Snort sebagai HIDS masih memiliki banyak kekurangan. Alasan penulis tidak memilih Tripware karena Tripware masih terlalu sederhana, Tripware hanya mendeteksi perubahan file pada suatu host atau dengan kata lain rule yang disediakan Tripware masih terlalu sedikit [5],[6],[8].
ANALISIS DAN DESAIN Event Flow Diagram OSSEC
Event flow diagram pada gambar dibawah menjelaskan cara kerja dari OSSEC dalam mendeteksi serangan mulai dari paket data yang didapat dari penyerang hingga proses pengiriman alert (notifikasi) sampai ke administrator [9],[10].
Gambar 1 Event flow diagram OSSEC
Berikut adalah penjelasan event flow diagram dari OSSEC.
a) Event: Event adalah suatu peristiwa yang terjadi saat penyerang melakukan penyerangan terhadap server.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
33
b) Pre-Decoding: adalah suatu proses dimana Event yang diterima kemudian diekstrak untuk mengambil informasi statik dari paket data yang diterima oleh server. Adapun informasi yang diambil dalam proses pre-decoding adalah hostname, program_name, log, dan time/date. Berikut contoh dari proses decoding.
Apr 14 17:32:06 tatk07 sshd[1025]: Accepted password for manuel from 172.27.40.118 port 1618 ssh2. Dari data tersebut akan dilakukan proses pre-decoding yang dapat dilihat pada tabel dibawah:
Tabel 1 Field pre-decoder
Field Deskripsi
Hostname Tatk07 Program_name Sshd
Log Accepted password for manuel from 172.27.40.118 port 1618 ssh2 Time/date Apr 14 17:32:06
Dari data tersebut akan dilakukan proses decoding yang dapat dilihat pada tabel dibawah:
Tabel 2 field decoding
Field Deskripsi
Srcip 172.27.40.118
User Manuel
Untuk mendapatkan informasi seperti pada tabel diatas, decoder melakukan pegecekan dengan beberapa opsi yang tersedia. Berikut adalah beberapa opsi yang tersedia pada decoder yang dapat dilihat pada tabel di bawah:
Tabel 3 Optsi Decoder
Field Deskripsi
Program_name Akan mengeksekusi decoder apabila program_name cocok dengan informasi yang didapat Regex Regular expression untuk menspesifikan informasi apa yang akan diambil oleh decoder Order Memberikan input/ informasi apa yang akan diambil oleh regex. Contohnya adalah (source ip,
source port)
Parent Parent decoder yang harus dieksekusi apabila terjadi kecocokan pada decoder.
c) Rule Matching
Rule matching adalah proses selanjutnya dari decoding, dimana pada proses ini akan dilakukan pencocokan informasi yang diperoleh dari pre-decoding dan decoding dengan rule yang tersedia pada OSSEC.
d) Alerting
Setelah dilakukan proses rule matching, apabila informasi yang diterima cocok dengan rule yang tersedia pada OSSEC maka Event tersebut akan dianggap sebagai serangan dan OSSEC akan melakukan alerting (notifikasi) melalui DB Storage, E-mail, ataupun Active response.
Kebutuhan Perangkat Lunak
Perangkat lunak yang digunakan untuk pengujian HIDS adalah sebagai berikut:
1. Sistem Operasi Centos 6.4 sebagai lingkungan pengujian yang telah di-install beberapa servis seperti DNS, HTTP, SSH.
2. Sistem Operasi Kali Linux yang digunakan untuk melakukan serangan pada lingkungan pengujian.
3. HIDS OSSEC 2.8.1 yang di-install pada server (Centos 6.4).
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
34 Kebutuhan Perangkat Keras
Perangkat Keras yang digunakan untuk pengujian HIDS sebagai berikut:
1. 1(satu) unit PC (Personal Computer) yang dimanfaatkan sebagai server dan sudah diinstal servis yang sesuai dengan lingkungan pengujian yang dirancang.
Tabel 4 Spesifikasi PC
Perangkat Keras Keterangan
Processor Intel (R) Core(TM) i3.2120 @ 3.30 GHz (4 CPUs), ~ 3.3 GHz Monitor 1366 x 68 (32 Bit)
Hardisk 500 GB
Memory 8 GB
2. Beberapa unit laptop yang akan digunakan oleh penyerang untuk melakukan pengujian, dengan spesifikasi sebagai berikut.
Tabel 5 Spesifikasi Laptop
Perangkat Keras Keterangan Processor Intel Core i3
Monitor Generic Pnp Monitor
Hard Disk 500 GB
Memory 4 GB
Topologi Fisik
Topologi Fisik menggambarkan komponen yang dibutuhkan pada saat pengujian, berikut gambar topologi fisik yang akan digunakan pada saat pengujian.
Gambar 2 Topologi Fisik
Pada server dengan alamat IP 172.35.40.179 akan di-install OSSEC dan akan diuji dengan melakukan berbagai jenis serangan oleh penyerang yang berasal dari intruder_1, intruder_2, selanjutnya notifikasi dari seluruh serangan akan dikirimkan kepada Admin.
Spesifikasi Server
Pada host akan dijalankan sistem operasi Linux dengan Distro Centos 6.4 yang dilengkapi dengan tiga servis sebagai berikut:
a) DNS
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
35
Servis DNS adalah sebuah servis yang menyimpan informasi tentang nama host maupun nama Domain dalam bentuk basisdata tersebar di dalam jaringan komputer dimana kita dapat mengakses suatu host berdasarkan nama bukan lagi IP.
b) HTTP
HTTP adalah sebuah protokol jaringan pada layer aplikasi (Web) yang digunakan untuk menerima dan merespon request dari pengguna.
c) SSH
SSH adalah application remote login yang lebih aman dibandingkan aplikasi remote lain seperti Telnet.
Spesifikasi Penyerang
Pada host penyerang dijalankan sistem operasi Kali Linux yang dilengkapi dengan beberapa aplikasi sebagai berikut:
a) Metasploit
Metasploit adalah sebuah penetration tool yang cukup kuat untuk melakukan penetrasi kedalam sebuah sistem.
Fungsi dari metasploit ini adalah untuk memunculkan modul dan membiarkan pengguna mengkonfigurasi modul exploit dan mencoba pada target yang dituju.
b) Hydra
Hydra adalah sebuah tool bruteforcing yang banyak digunakan tester. Hydra memiliki metode dictionary yang memiliki kemampuan menyerang dalam berbagai tipe service, seperti: SMB, HTTP, FTP, SSH, IMAP.
c) Medusa
Medusa adalah sebuah tool bruteforcing yang bersifat CLI yang penggunaannya hampir sama dengan Hydra.
d) HPING3
Hping3 adalah sebuah TCP/IP assembler. Tidak seperti ping command yang hanya dapat mengirim ICMP echo request, Hping3 juga dapat mengirim paket TCP, UDP, dan ICMP.
Jenis serangan dari penyerang kepada host (target)
Jenis serangan yang akan diuji kepada host (target) dikelompokkan berdasarkan protokol yang dapat diserang sebagai berikut:
a) Serangan Terhadap DNS
DNSEnum atau Domain Name System Enumeration merupakan tools information gathering dengan menggunakan WHOIS yang akan akan menampilkan informasi-informasi penting sebuah DNS seperti NS, MX (mail server).
b) Serangan Terhadap HTTP
Serangan terhadap HTTP yang diuji adalah port scanning. Port Scanning adalah suatu kegiatan atau proses untuk mencari dan melihat serta meneliti port pada suatu komputer.
c) Serangan Terhadap SSH
Serangan terhadap SSH yang diuji adalah SSH Bruteforce Attack. SSH Bruteforce attack adalah sebuah teknik serangan terhadap suatu server dengan melakukan percobaan terhadap semua password yang memungkinkan agar penyerang dapat masuk kedalam server korban melalui servis SSH.
HASIL DAN PEMBAHASAN DNSENUM
Kinerja CPU dan memori serta waktu yang dibutuhkan oleh OSSEC untuk mendeteksi serangan dapat dilihat pada Gambar
3 dan Gambar 4. Pada kedua grafik tersebut ditunjukkan hasil pengujian DNSENUM dengan 1 (satu) penyerang.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
36
Gambar 3 Grafik Response Time OSSEC terhadap DNSENUM 1 (satu) penyerang
Gambar 4 Grafik Konsumsi CPU dan Memory OSSEC terhadap DNSENUM 1 (satu) penyerang
Berdasarkan Gambar 3 dan Gambar 4, dengan percobaan 15 kali dan menghasilkan alert (notifikasi) 15 kali, maka rata-rata
waktu yang dibutuhkan OSSEC untuk mendeteksi serangan adalah 1.6 detik, sedangkan waktu untuk mengirimkan alert
level 1 pada serangan DNSENUM menuju administrator adalah 14.9 detik. Rata-rata konsumsi memori oleh OSSEC adalah
0.16%, dan rata-rata konsumsi CPU adalah 1.27%, sehingga dapat disimpulkan bahwa OSSEC dapat mendeteksi serangan
secara realtime dengan penggunaan sumber daya CPU dan memori yang rendah untuk mendeteksi serangan DNSENUM
dengan jumlah 1 (satu) penyerang. Pada Gambar 5 dan Gambar 6 adalah grafik yang menunjukan hasil dari pengujian
DNSENUM dengan jumlah 2 (dua) penyerang.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
37
Gambar 5 Grafik Response Time OSSEC terhadap DNSENUM 2 (dua) penyerang
Gambar 6 Grafik Konsumsi CPU dan Memory OSSEC terhadap DNSENUM 2 (dua) penyerang
Berdasarkan Gambar 5 dan Gambar 6, dengan percobaan 15 kali dan menghasilkan alert (notifikasi) 15 kali, maka rata-rata waktu yang dibutuhkan OSSEC untuk mendeteksi serangan adalah 1.9 detik sedangkan waktu untuk mengirimkan alert level 1 pada serangan DNSENUM menuju administrator adalah 16.6 detik. Selanjutnya, rata-rata konsumsi memori oleh OSSEC adalah 0.17% dan rata-rata konsumsi CPU adalah 2.01%. Berdasarkan hasil tersebut maka dapat disimpulkan bahwa OSSEC dapat mendeteksi serangan secara realtime dengan penggunaan sumber daya CPU dan memori yang rendah untuk mendeteksi serangan DNSENUM dengan jumlah 2 (dua) penyerang.
Port Scanning
Kinerja CPU dan memori serta waktu yang dibutuhkan oleh OSSEC untuk mendeteksi serangan dapat dilihat pada Gambar
7 dan Gambar 8 yang merupakan hasil pengujian terhadap port scanning dengan jumlah 1 (satu) penyerang.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
38
Gambar 7 Grafik Response Time OSSEC terhadap port scanning 1 (satu) penyerang
Gambar 8 Grafik Konsumsi CPU dan Memory OSSEC terhadap Port scanning 1 (satu) penyerang
Berdasarkan Gambar 7 dan Gambar 8 diatas, dengan percobaan 15 kali dan menghasilkan alert (notifikasi) 15 kali, maka ke handalannya adalah 100%. Rata-rata waktu yang dibutuhkan OSSEC untuk mendeteksi serangan adalah 3.13 detik sedangkan waktu untuk mengirimkan alert level 6 pada serangan port scanning menuju administrartor adalah 16.06 detik.
Rata-rata konsumsi memori oleh OSSEC adalah 0.17% dan rata-rata konsumsi CPU adalah 1.31%. Berdasarkan hasil
tersebut maka dapat disimpulkan OSSEC dapat mendeteksi serangan secara realtime dengan penggunaan sumber daya
CPU yang rendah. Selanjutnya, Gambar 9 dan Gambar 10 adalah grafik yang menunjukan hasil dari pengujian port
scanning dengan 2 (dua) penyerang.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
39
Gambar 9 Grafik Response Time OSSEC terhadap port scanning dengan 2 (dua) penyerang
Gambar 101 Grafik Konsumsi CPU dan Memory OSSEC terhadap Port Scanning dengan 2 (dua) penyerang
Berdasarkan Gambar 9 dan Gambar 10, dengan percobaan 15 kali dan menghasilkan alert 15 kali, maka rata-rata waktu yang dibutuhkan OSSEC untuk mendeteksi serangan adalah 3.86 detik sedangkan waktu untuk mengirimkan alert level 6 pada serangan port scanning menuju administrartor adalah 17.06 detik. Sedangkan, rata-rata konsumsi memori oleh OSSEC adalah 0.18% dan rata-rata konsumsi CPU adalah 1.85% sehingga, dapat disimpulkan bahwa OSSEC dapat mendeteksi serangan secara realtime dengan penggunaan sumber daya CPU dan memori yang rendah dengan jumlah 2 (dua) penyerang.
SSH Bruteforce Attack
Kinerja CPU dan memori serta waktu yang dibutuhkan oleh OSSEC untuk mendeteksi serangan dari 1 (satu) penyerang dan
mengirimkan alert level 1 melalui email kepada administrator dapat dilihat pada Gambar 11 dan Gambar 12.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
40
Gambar 11 Grafik Response Time OSSEC terhadap ssh bruteforce attack dengan 1 (satu) penyerang
Gambar 12 Grafik Konsumsi CPU dan Memory OSSEC terhadap ssh bruteforce attack dengan 1 (satu) penyerang
Berdasarkan Gambar 11 dan Gambar 12, dengan percobaan 15 kali dan menghasilkan alert 15 kali, maka rata-rata waktu
yang dibutuhkan OSSEC untuk mendeteksi serangan adalah 17.13 detik sedangkan waktu untuk mengirimkan alert level 6
pada serangan SSH Bruteforce menuju administrator adalah 29.8 detik. Selanjutnya, rata-rata konsumsi memori oleh
OSSEC adalah 0.18% dan rata-rata konsumsi CPU adalah 1.73%. Berdasarkan hasil tersebut maka dapat disimpulkan
OSSEC dapat mendeteksi serangan secara realtime, dengan konsumsi sumber daya CPU dan memori yang rendah dengan
jumlah 1 (satu) penyerang. Selanjutnya, pada Gambar 13 dan Gambar 14 adalah grafik yang menunjukan hasil dari
pengujian serangan SSH Bruteforce dengan jumlah 2 (dua) penyerang.
JURNAL ILMIAH KOHESI Vol. 4 No. 1 Januari 2020
41
Gambar 13 Grafik Response Time OSSEC terhadap ssh bruteforce attack dengan 2 (dua) penyerang
Gambar 14 Grafik Konsumsi CPU dan Memory OSSEC terhadap ssh bruteforce attack dengan 2 (dua) penyerang