Server – Cara Instalasi dan Penggunaan Linux Malware Detect

Malware atau malicious software merupakan suatu script atau aplikasi program komputer yang dibuat/diprogram untuk mencari kelemahan suatu perangkat lunak. Pada dasarnya malware diciptakan untuk melakukan aktifitas perusakan atau peretasan yang telah disisipkan suatu script atau program khusus secara tersembunyi dan bisa menyimpan atau memberikan informasi penting pada programmer atau pembuat script malware tersebut..

Linux Malware Detect (LMD) atau yang biasa dikenal sebagai maldet merupakan suatu script/program/aplikasi yang dikembangkan khusus untuk melakukan tindakan preventif atau ancaman dari suatu malware pada ruang lingkup shared hosting. Beberapa fitur seperti yang dikutip pada situs resminya adalah sebagai berikut.

- MD5 file hash detection for quick threat identification
- HEX based pattern matching for identifying threat variants
- statistical analysis component for detection of obfuscated threats (e.g: base64)
- integrated detection of ClamAV to use as scanner engine for improved performance
- integrated signature update feature with -u|–update
- integrated version update feature with -d|–update-ver
- scan-recent option to scan only files that have been added/changed in X days
- scan-all option for full path based scanning
- checkout option to upload suspected malware to rfxn.com for review / hashing
- full reporting system to view current and previous scan results
- quarantine queue that stores threats in a safe fashion with no permissions
- quarantine batching option to quarantine the results of a current or past scans
- quarantine restore option to restore files to original path, owner and perms
- quarantine suspend account option to Cpanel suspend or shell revoke users
- cleaner rules to attempt removal of malware injected strings
- cleaner batching option to attempt cleaning of previous scan reports
- cleaner rules to remove base64 and gzinflate(base64 injected malware
- daily cron based scanning of all changes in last 24h in user homedirs
- daily cron script compatible with stock RH style systems, Cpanel & Ensim
- kernel based inotify real time file scanning of created/modified/moved files
- kernel inotify monitor that can take path data from STDIN or FILE
- kernel inotify monitor convenience feature to monitor system users
- kernel inotify monitor can be restricted to a configurable user html root
- kernel inotify monitor with dynamic sysctl limits for optimal performance
- kernel inotify alerting through daily and/or optional weekly reports
- e-mail alert reporting after every scan execution (manual & daily)
- path, extension and signature based ignore options
- background scanner option for unattended scan operations
- verbose logging & output of all actions

Terdapat beberapa tahapan atau proses instalasi LMD atau biasa dikenal sebagai maldet pada server atau vps kita, mulai dari download source code atau paket programnya hingga proses instalasi itu sendiri.
Pertama, tentunya adalah download paket maldet menggunakan wget melalui cosole SSH server kita.

# wget -c http://www.rfxn.com/downloads/maldetect-current.tar.gz

Kemudian ekstrak paket maldet yang terkompres tar tersebut dengan menggunakan perintah sebagai berikut melalui console.

# tar -xvfz maldetect-current.tar.gz
maldetect-1.4.2/
maldetect-1.4.2/CHANGELOG
maldetect-1.4.2/cron.daily
maldetect-1.4.2/README
maldetect-1.4.2/files/
maldetect-1.4.2/files/ignore_file_ext
maldetect-1.4.2/files/sigs/
maldetect-1.4.2/files/sigs/rfxn.ndb
maldetect-1.4.2/files/sigs/md5.dat
maldetect-1.4.2/files/sigs/hex.dat
maldetect-1.4.2/files/sigs/maldet.sigs.ver
maldetect-1.4.2/files/sigs/rfxn.hdb
maldetect-1.4.2/files/tmp/
maldetect-1.4.2/files/VERSION.hash
maldetect-1.4.2/files/ignore_inotify
maldetect-1.4.2/files/hexstring.pl
maldetect-1.4.2/files/maldet
maldetect-1.4.2/files/conf.maldet
maldetect-1.4.2/files/clean/
maldetect-1.4.2/files/clean/gzbase64.inject.unclassed
maldetect-1.4.2/files/clean/base64.inject.unclassed
maldetect-1.4.2/files/sess/
maldetect-1.4.2/files/pub/
maldetect-1.4.2/files/internals.conf
maldetect-1.4.2/files/quarantine/
maldetect-1.4.2/files/inotify/
maldetect-1.4.2/files/inotify/tlog
maldetect-1.4.2/files/inotify/inotifywait
maldetect-1.4.2/files/inotify/libinotifytools.so.0
maldetect-1.4.2/files/hexfifo.pl
maldetect-1.4.2/files/ignore_paths
maldetect-1.4.2/files/ignore_sigs
maldetect-1.4.2/files/modsec.sh
maldetect-1.4.2/cron.d.pub
maldetect-1.4.2/COPYING.GPL
maldetect-1.4.2/.ca.def
maldetect-1.4.2/install.sh

Setelah paket maldet terekstrak, selanjutnya masuk pada direktori atau folder maldet yang telah terekstrak tersebut menggunakan perintah cd (change directory) kemudian install paket maldet dengan mengeksekusi shell script installer menggunakan perintah sebagai berikut.

# cd maldetect-*
# ./install.sh

Proses instalasi berjalan dengan menampilkan resume proses seperti lokasi program atau script maldet tersimpan, file konfigurasi, database atau signature malware yang sudah dikenali dan informasi lainnya yang telah selesai seperti pada hasil sebagai berikut.

Linux Malware Detect v1.4.2
            (C) 2002-2013, R-fx Networks 
            (C) 2013, Ryan MacDonald 
inotifywait (C) 2007, Rohan McGovern 
This program may be freely redistributed under the terms of the GNU GPL

installation completed to /usr/local/maldetect
config file: /usr/local/maldetect/conf.maldet
exec file: /usr/local/maldetect/maldet
exec link: /usr/local/sbin/maldet
exec link: /usr/local/sbin/lmd
cron.daily: /etc/cron.daily/maldet

imported config options from /usr/local/maldetect.last/conf.maldet
maldet(31683): {sigup} performing signature update check...
maldet(31683): {sigup} local signature set is version 201205035915
maldet(31683): {sigup} new signature set (2014052712778) available
maldet(31683): {sigup} downloaded http://cdn.rfxn.com/downloads/md5.dat
maldet(31683): {sigup} downloaded http://cdn.rfxn.com/downloads/hex.dat
maldet(31683): {sigup} downloaded http://cdn.rfxn.com/downloads/rfxn.ndb
maldet(31683): {sigup} downloaded http://cdn.rfxn.com/downloads/rfxn.hdb
maldet(31683): {sigup} downloaded http://cdn.rfxn.com/downloads/maldet-clean.tgz
maldet(31683): {sigup} signature set update completed
maldet(31683): {sigup} 11743 signatures (9854 MD5 / 1889 HEX)

Sampai sejauh ini proses instalasi Linux Malware Detect (LMD) atau yang lebih dikenal sebagai maldet telah berhasil terinstall pada sistem server kita.
Selanjutnya untuk proses konfigurasi dapat dilakukan dengan mengedit file konfigurasi pada /usr/local/maldetect/conf.maldet dengan menggunakan teks editor yang biasa kita gunakan. Tedapat beberapa variable dengan yang memiliki dua opsi nilai yaitu 0 = disabled dan 1 = enabled. Sebagai contoh, pada file konfigurasi tersebut terdapat variable sebagai berikut.
email_alert yang berfungsi sebagai pemicu pemberitahuan terkait dengan aktiftias malware atau malware scanning terkait pada sistem server kita. Apabila kita memberikan nilai 1 (satu) maka email pemberitahuan akan aktif.
email_addr Tentunya apabila kita telah mengaktifkan fitur notifikasi melalui email maka pada variabel tersebut kita dapat menetukan alamt email tujuan sebagai user email yang akan menerima email notifikasi maldet tersebut.
quar_hits Variabel yang berfungsi untuk menetukan apabila suatu file yang terindikasi sebagai malware dapat langsung dipindahkan pada direktori quarentaine
quar_clean Variabel tersebut tidak jauh berbeda dengan variabel quar_hits sebelumnya, hanya saja apabila suatu file yang terindikasi sebagai malware dapat langsung dibersihakan secara otomatis oleh maldet atau tidak sesuai dengan nilai yang akan diberikan pada variabel tersebut. Sebagai catatan, apabila variabel tersebut ingin diaktifkan maka diharuskan agar variable quar_hits dalam keadan aktif atau enable terlebih dahulu. Namun apabila sekiranya bersifat krusial terhadap data apabila terinfeksi sebagai malware maka variabel quar_hits dan quar_clean dapat dinonaktifkan sehingga apabila kita mendapatkan notifikasi malware maka dapat dilakukan pengecekan terlebih dahulu secara lanjut pada sisi script yang terindikasi sebagai malware tersebut.
Aktifitas malware pada umumnya terinfeksi pada direktori public_html atau diretori untuk menyimpan konten data website pada suatu server. Untuk melakukan pengecekan atau scanning pada direktori tersebut untuk semua username dapat dilakukan dengan perintah sebagai berikut.

# maldet --scan-all /home?/?/public_html

Perintah untuk melihat hasil scanning pada suatu direktori adalah setelah dilakukan scanning dengan menggunakan perintah sebagai berikut.

# maldet --report SCANID

Perintah untuk melakukan karantina atau quarentine terhadap malware yang menginfeksi suatu file dalam suatu direktori setelah dilakukan scanning adalah dengan menggunakan perintah sebagai berikut.

# maldet --quarantine SCANID

Perintah untuk melakukan pembersihan atau cleaning terhadap malware yang menginfeksi suatu file dalam suatu direktori setelah dilakukan scanning adalah dengan menggunakan perintah sebagai berikut.

# maldet --clean SCANID

Jika ingin dilakukan restorasi file yang sebelumnya telah terkarantina atau quarentined dan telah dipastikan terbebas dari malware maka dapat dilakukan dengan menggunakan perintah sebagai berikut.

# maldet --restore /usr/local/maldetect/quarantine/config.php.FILEID

Untuk melihat detail argumen dan opsi perintah maldet dapat ditambahkan opsi --help sebagai contoh berikut.

# maldet --help

Detail informasi aplikasi Linux Malware Detect (LMD) atau maldet dapat merujuk pada situs resmi pengembangan project aplkasi tersebut.