INFOMATEK Volume 18 Nomor 2 Desember 2016
SISTEM PENCEGAHAN SERANGAN BRUTEFORCE PADA UBUNTU SERVER DENGAN MENGGUNAKAN FAIL2BAN *)
Iwan Kurniawan , Ferry Mulyanto, Fuad Nandiasa Program Studi Teknik Informatika Fakultas Teknik – Universitas Pasundan Abstrak: Perkembangan internet yang semakin cepat dengan berbagai macam fungsi dan kebutuhan, menuntut meningkatnya kualitas keamanan jaringan webserver. Terutama dengan semakin terbukanya pengetahuan hacking dan cracking, didukung dengan banyaknya tools yang tersedia dengan mudah dan kebanyakan free, semakin mempermudah para intruder dan attacker untuk melakukan aksi penyusupan ataupun serangan. Masalah timbul ketika sang administrator sedang tidak berada pada posisi siap sedia, misalnya sakit, berada di luar jam kerja, atau adanya kepentingan mendadak, sedangkan serangan terhadap server bisa terjadi kapan saja. Salah satu serangan yang berakibat fatal adalah, serangan bruteforce. Serangan bruteforce pada server memang jarang sekali terjadi, tetapi akibat yang ditimbulkan dari serangan ini adalah penyerang bisa mendapatkan hak akses administrator dan tentu saja membahayakan server. Administrator membutuhkan suatu sistem yang dapat membantu kerjanya. Sebuah sistem yang dapat memberikan hasil laporan apa yang terjadi pada sistem apakah itu sebuah serangan atau penyusupan. Dengan hasil laporan yang di dapat ,administrator akan bertindak lebih jauh untuk mencegah terjadinya serangan di masa yang akan datang. Kata kunci: Bruteforce, Fail2ban
I. PENDAHULUAN
1
serangan.
Terjadi
nya
penyusupan
atau
1.1 Latar Belakang
serangan dapat mengakibatkan masalah pada
Perkembangan internet yang semakin cepat
keberlangsungan sistem yang diserang oleh
dengan
attacker .
berbagai
macam
fungsi
dan
kebutuhan, menuntut meningkatnya kualitas keamanan
jaringan
webserver.
dengan semakin terbukanya hacking
dan
banyaknya mudah
dan
cracking,
Terutama
pengetahuan
didukung
Pencegahaan yang paling sering dilakukan untuk
masalah
ini
adalah
dengan
dengan
menempatkan seorang administrator. Masalah
tools yang tersedia dengan
timbul ketika sang administrator sedang tidak
kebanyakan
free,
semakin
berada pada posisi siap sedia, misalnya sakit,
mempermudah para intruder dan attacker
berada di luar jam kerja, atau adanya
untuk melakukan aksi penyusupan ataupun
kepentingan mendadak.Sedangkan serangan terhadap server bisa terjadi kapan saja.
*)
[email protected]
Infomatek Volume 18 Nomor 2 Desember 2016 : 89 - 96
Keamanan jaringan komputer mempunyai tiga
yang dapat memberikan notifikasi kepada
basis yang harus terpenuhi yang disebut
admin jika terjadi serangan terhadap server.
dengan The Security Trinity, yaitu prevention, detection dan response (Canavan [1]).
II. METODOLOGI
Maka,
Metodologi yang digunakan dalam penelitian
dari
administrator
permasalahan
tersebut,
membutuhkan suatu sistem
yang dapat membantu kerjanya. Sebuah
ini adalah sebagai berikut: 1. Studi Literatur
sistem yang dapat membantu administrator
Pada
tahap
ini
penulis
melakukan
jika sedang tidak berada di tempat, sebuah
pengumpulan fakta-fakta terkait dengan
sistem yang dapat memberikan hasil laporan
serangan Bruteforce
apa yang terjadi pada sistem apakah itu sebuah serangan atau penyusupan. Dengan
2. Tahap Analisis Lingkungan Penelitian
hasil laporan yang di dapat ,administrator akan
Tahap ini adalah tahap dimana peneliti
bertindak
melakukan analisis terkait lingkungan
lebih
jauh
untuk
mencegah
terjadinya serangan di masa yang akan
penelitian, yaitu Ubuntu server.
datang. 3. Tahap Pengujian Sebelum Implementasi Di era yang modern ini, teknologi bukan
Fail2ban
merupakan
di
Tahap ini adalah tahap dimana dilakukan
perusahaan
nya serangan Bruteforce terhadap target
menggunakan teknologi dalam menjalankan,
yang sudah ditentukan yang belum di
mengembangkan dan mendukung oprasional
implementasi Fail2ban. Fail2ban bekerja
segala jenis perusahaan bisnis. Salah satunya
dengan cara merubah aturan konfigurasi
persaingan bisnis di bidang peminjaman uang.
firewall dengan konfigurasi yang berada
Perbankan
di Fail2ban itu sendiri, ketika Fail2ban
perusahaan.
hal
yang
Hampir
salah
intermediasidalam
baru semua
satu
negara,
terutama
lembaga
berkenaan
hal
berjalan, ia akan mengambil alih fungsi
tersebut bank menutut para karyawan dapat
firewall
yang
memberikan pelayanan yang terbaik dan
(Ellingwood [2]).
berada
di
server
memuaskan kepada nasabah-nasabah. Dari latar belakang di atas, perumusan masalah yakni bagaimana membangun sebuah sistem
4. Implementasi Fail2ban Tahap
ini
adalah
tahap
pengimplementasian Fail2ban sebagai
90
Sistem Pencegahan Serangan Bruteforce pada Ubuntu Server dengan Menggunakan Fail2ban
bentuk solusi dari pencegahan serangan
default. Untuk update repository ketik perintah,
Bruteforce.
sudo apt-get update.
2. Fail2ban Package Downloading
5. Konfigurasi Blocklist.de Tahap ini adalah tahap dimana web
Setelah
mendapatkan
reporting di konfigurasi dengan mengisi
terbaru,
data dari server yang di implementasi
mengunduh Fail2ban, dan secara otomatis
Fail2ban
Fail2ban akan terpasang pada Ubuntu server,
langkah
paket
repository
selanjutnya
adalah
dengan mengetikan perintah, sudo apt-get 6. Tahap Pengujian Setelah Implementasi
install fail2ban.
Fail2ban Tahap ini adalah tahap dimana dilakukan
3. Fail2ban Config File Downloading
nya pengujian yang sama dengan tahap
Setelah
mendapatkan
paket
sebelumnya dengan target yang sudah di
Langkah
selanjutnya
adalah
implementasi Fail2ban.
mengunduh debian configuration file yang
Fail2ban. dengan
berada di situs blocklist.de. Configuration file ini berisi pengaturan – pengaturan servis
7. Analisis Report Blocklist.de Tahap
ini
adalah
tahap
dimana
fail2ban. Untuk mendapatkan Configuration file
menganalisa hasil report yang diterima
ketik
perintah,
sudo
wget
oleh Blocklist.de dari Ubuntu Server.
http://www.blocklist.de/downloads/fail2ban.con fig.tar.gz
III. IMPLEMENTASI DAN PENGUJIAN 3.1 Instalasi Fail2ban
4. Fail2ban Config File Extraction
Fail2ban berfungsi sebagai monitor jumlah
Langkah
kegagalan
yang
melakukan extraction pada configuration file
selanjutnya ip akan diblokir. Dalam kasus ini
tersebut, agar file dapat digunakan oleh
Fail2ban
aplikasi Fail2ban. Untuk melakukan extraction
login
ssh
menangani
di
server,
serangan bruteforce,
selanjutnya
untuk itu diperlukan beberapa tahap dalam
ketik
perintah,
konfigurasi Fail2ban.
fail2ban.config.tar.gz.
adalah
sudo
tar
dengan
–xzvf
1. Update Repository Package Untuk dapat melakukan instalasi Fail2ban,
5. Fail2ban Config File Replacement
diperlukan
dikarenakan
Setelah melakukan extraction, config file
paket Fail2ban tidak tersedia untuk repository
tersebut harus dipindahkan kedalam folder
update
repository
91
Infomatek Volume 18 Nomor 2 Desember 2016 : 89 - 96
dimana fail2ban tersebut berada, hal ini
dengan mengisi nama server, alamat IP
diperlukan
server, sender mail, dan juga time-zone,
untuk
mempermudah
fail2ban
dimana alamat IP server adalah alamat IP
melakukan logging.
public dari server yang akan digunakan. 6. Konfigurasi Blocklist.de Blocklist.de web yang menyediakan layanan
7. Konfigurasi Jail.conf
fail2ban reporting. Tujuan digunakan nya
Jail.conf adalah file yang berisi konfigurasi –
blocklist.de adalah sebagai dial-up sender
konfigurasi Fail2ban, dimana di dalam jail.conf
untuk
report
kita bisa memilih jenis servis mana yang akan
beserta detail nya ke email admin yang
digunakan dan yang tidak digunakan. Dalam
sebelumnya terdaftar di blocklist.de. Setelah
kasus ini penulis menggunakan servis ssh-
terdaftar di blocklist.de, admin akan diberikan
iptables dikarenakan percobaan serangan
2 buah email yang berperan sebagai sender
bruteforce ini melalui port.
selanjutnya
mengirim
hasil
dan destination mail. Selanjutnya adalah dengan mendaftarkan server yang digunakan
Gambar 1 Jail.conf
Bisa terlihat dari Gambar 1 bahwa maksimal
Setelah semua informasi telah dimasukkan
percobaan
oleh
kedalam log maka sistem akan mengirimkan
penyerang adalah 10 kali, jika melebihi 10 kali
sebuah report yang terkait dengan kegiatan
maka
penyerangan
login
sistem
akan
yang
dilakukan
memutuskan
koneksi
dengan
alamat
pengirim
antara penyerang dan server, dan setiap
fail2ban[at]dyn.blocklist.de dan alamat tujuan
percobaan login gagal akan dimasukkan
fail2ban[at]blocklist.de.
kedalam sebuah log yang terletak di direktori /var/log/auth.log .
Hal
yang
selanjutnya
dilakukan
adalah
memilih aksi yang dilakukan oleh fail2ban jika terjadi penyerangan. Ada 3 jenis aksi yang
92
Sistem Pencegahan Serangan Bruteforce pada Ubuntu Server dengan Menggunakan Fail2ban
terdapat di dalam jail.conf, Action, Action_mw,
berfungsi dengan baik. Untuk melakukan
dan Action_mwl . Dalam kasus ini penulis
Starting ketik perintah sudo service fail2ban
memilih
start .
aksi
Action_mwl,
dikarenakan
Action_mwl mempunyai kemampuan mengirim email ke alamat yang dituju serta dapat
Setelah
melakukan
Starting,
langkah
menyimpan semua kegiatan login kedalam
selanjutnya adalah melakukan Checking untuk
sebuah log file .
mengetahui bahwa Fail2ban telah benar – benar berjalan. Untuk melakukan Checking
8. Starting and Checking Fail2ban Services
ketik perintah sudo service fail2ban status.
Starting and Checking Fail2ban Service perlu
Bisa dilihat dari Gambar 2 bahwa Fail2ban
dilakukan untuk memastikan bahwa Fail2ban
sudah berjalan dengan status already running.
Gambar 2 Starting
3.2
Pengujian
Setelah
Implementasi
target
192.168.68.128,
berbeda
dengan
Fail2ban
alamat ip target sebelumnya dikarenakan ip
Tahap pengujian ini adalah tahap pengujian
Ubuntu
untuk melihat dampak serangan bruteforce
dinamis.
setelah
penyerang pun sama seperti tahap pengujian
implementasi
menggunakan pengujian
tools
fai2ban. yang
sebelumnya
Penyerang
sama yaitu
server
yang
Perintah
digunakan
yang
bersifat
digunakan
oleh
dengan
sebelumnya yaitu, medusa –h 192.168.68.128
dengan
–n
menggunakan medusa, dengan alamat ip
22
–U
/root/userlist.txt
–P
/root/password.txt –M ssh .
93
Infomatek Volume 18 Nomor 2 Desember 2016 : 89 - 96
Gambar 3 Pengujian setelah impelemntasi
Terlihat dari Gambar 3 bahwa penyerang tidak
di dalam jail.conf dimana sebelumnya sudah
berhasil melakukan percobaan login yang ke-
dikonfigurasi. Dengan Action_mwl yang sudah
enam
otomatis
ditetapkan sebelumnya sebagai aksi fail2ban,
memutuskan koneksi antara penyerang dan
maka setiap percobaan gagal login akan
sistem. Pemutusan koneksi ini dilakukan oleh
disimpan kedalam sebuah
fail2ban yang terpasang di sistem target
terletak di direktori /var/log/auth.log. Untuk
dimana penyerang hanya bisa melakukan
melihat
percobaan login sebanyak 6 kali percobaan.
/var/log/auth.log.
kali,
Pengaturan
dimana
terkait
target
dengan
maksimal
percobaan login sebanyak 6 kali ini disimpan
94
log
file
ketik
log file
perintah,
yang
nano
Sistem Pencegahan Serangan Bruteforce pada Ubuntu Server dengan Menggunakan Fail2ban
Gambar 4 Log file
Bisa terlihat dari Gambar 4 di atas dimana ada
mengirimkan laporan penyerangan ke email
sebuah percobaan login yang dilakukan oleh
melalui
alamat ip 192.168.68.129 dimana alamat ip
blocklist.de, maka seharusnya setiap laporan
tersebut adalah alamat ip dari penyerang, dan
penyerangan akan dikirimkan terlebih dahulu
terlihat
melakukan
melalui blocklist.de lalu dilanjutkan ke email
kali
admin. Laporan penyerangan bisa dilihat
percobaan
bahwa login
penyerang sebanyak
5
yang
dinyatakan gagal.
third-party
applications
yaitu
melalui website blocklist.de.
Terkait dengan penjelasan sebelumnya bahwa aksi Action_mwl memiliki kemampuan untuk
Gambar 5 Bocklist de report
95
Infomatek Volume 18 Nomor 2 Desember 2016 : 89 - 96
Bisa terlihat dari Gambar 5 bahwa alamat ip
2. Fail2ban tidak dapat memberikan report
118.97.186.26 yaitu alamat ip server tidak
kepada
menerima
blocklist.de dan email administrator.
laporan
penyerangan
ataupun
administrator
melalui
web
laporan lainnya yang terkait dengan kegiatan di server.
DAFTAR PUSTAKA [1] Canavan, J. E, “Fundamentals of Network
V. KESIMPULAN
Security”, Artech House, 2001
Kesimpulan dari penelitian ini solusi yang ditawarkan oleh penulis untuk melakukan implementasi fail2ban pada Ubuntu server untuk mencegah serangan bruteforce. 1. Implementasi fail2ban pada Ubuntu server terbukti
dapat
mencegah
serangan
bruteforce dan memblokir alamat ip dari penyerang blacklist.
96
tersebut
kedalam
daftar
[2] Ellingwood, Justin “How Fail2ban Works to Protect
Services
on
Linux
Server”,
https://www.digitalocean.com/community/ tutorials/how-fail2ban-works-to-protectservices-on-a-linux-server, Mei 2014