Jumat, 29 Mei 2015

Laporan Resmi HostBased IDS

A.      DASAR TEORI
Pemasangan program intrusi deteksi sebenarnya ditujukan untuk mendeteksi, memantau keadaan anomali jaringan yang disebabkan salah satunya oleh penyusup (intruder). Setelah tahap pendeteksian biasanya IDS dapat diset untuk dapat memberikan peringatan bagi network administrator.Type IDS sendiri secara garis besar dibagi 2 yaitu host-based dan network-based IDS. Pada praktikum kali ini, kita akan membahas salah satu contoh aplikas dari host-based IDS, yaitu tripwire. Program tripwire berfungsi untuk menjaga integritas file sistem dan direktori, dengan mencatat setiap perubahan yang terjadi pada file dan direktori. Penggunaan tripwire biasanya digunakan untu mempermudah pekerjaan yang dilakukan oleh System Administrator dalam mengamankan System. Cara kerja tripwire adalah dengan melakukan perbandingan file dan direktori yang ada dengan database system yang dibuat pada saat tripwire diinstall. Perbandingan tersebut meliputi perubahan tanggal, ukuran file, penghapusan dan lain-lainnya. Setelah tripwire dijalankan, secara otomatis akan melakukan pembuatan database sistem. Kemudian secara periodik aka selalu melaporkan setiap perubahan pada file dan direktori.

B.       LAPORAN RESMI
Percobaan 1: Proses Instalasi
1.      Login sebagai root
2.      Lakukan sinkronisasi terkini index paket software lokal dengan repository
#apt-get update
Description: Description: G:\kamdat hostbased\apt-get update.png

3.      Lakukan installasi tripwire
# apt-get install tripwire
Description: Description: G:\kamdat hostbased\apt-get install tripwire.png

Lalu akan muncul dialog seperti dibawah. Perhatikan pesan yang muncul pada setiap dialog, lalu jawab dengan “Yes”.
Description: Description: G:\kamdat hostbased\tripwire1.png

4.      Masukkan site key passphrase dan local key passphrase, setelah muncul dialog seperti dibawah. Ulangi sekali lagi !
-          Enter site-key passphrase:
Description: Description: G:\kamdat hostbased\tripwire2.png

-          Repeat the site-key passphrase
Description: Description: G:\kamdat hostbased\tripwire3.png

-          Enter local key passphrase
Description: Description: G:\kamdat hostbased\tripwire4.png

5.      Kemudian akan mucul dialog bahwa trip wire telah terinstal. Perhatikan pesan pada dialog tersebut !
Description: Description: G:\kamdat hostbased\tripwire5.png

6.      Ubah mode dari 2 buah file dari tripwire : tw.cfg dan tw.pol.
#cd /etc/tripwire
#chmod 0600 tw.cfg tw.pol
Description: Description: G:\kamdat hostbased\chmod file tripwire.png

Percobaan 2: Melakukan modifikasi pada file “Policy” dan file konfigurasi
Setelah proses instalasi berakhir, lakukan langkah-langkah dibawah ini :
1.      Modifikasi file twpol.txt. Perhatikan setiap baris pada file tersebut. Lalu
Enkripsi file tersebut.
# vi /etc/tripwire/twpol.txt
# cd /etc/tripwire
# twadmin --create-cfgfile --cfgfile ./tw.cfg
--site-keyfile ./site.key ./twcfg.txt
Description: Description: G:\kamdat hostbased\modif twpol.png

2.      Modifikasi file tw.cfg. Perhatikan setiap baris pada file tersebut. Lalu
Enkripsi file tersebut.
# vi /etc/tripwire/twcfg.txt
# cd /etc/tripwire
# twadmin --create-cfgfile --cfgfile ./tw.cfg
--site-keyfile ./site.key ./twcfg.txt
Description: Description: G:\kamdat hostbased\modif policy1_hasil.png

Percobaan 3: Inisialisasi Database
Setelah melakukan langkah-langkah pada point II, anda akan melakukan inisialisasi database dengan menjalankan perintah :
#tripwire --init --cfgfile /etc/tripwire/tw.cfg \
--polfile /etc/tripwire/tw.pol --site-keyfile
/etc/tripwire/site.key \
--local-keyfile /etc/tripwire/HOSTNAME-local.key
HOSTNAME adalah nama host komputer anda. Langkah ini mungkin membutuhkan waktu yang relatif lama.
Percobaan 4: Melakukan Cek System
Pada tahap ini tripwire menyimpan informasi awal dari file-file yang akan
dimonitor perubahannya :
# tripwire –check
Description: Description: G:\kamdat hostbased\tripwire cek1.png

Percobaan 5: Melakukan Update file “Policy”
Apabila ada perubahan pada file twpol.txt, misalnya kita akan menambahkan atau mengurangi folder yang akan dimonitor maka kita harus melakukan update dengan menjalankan perintah :
# cd /
# tripwire --update-policy --cfgfile ./tw.cfg --polfile ./tw.pol \
--site-keyfile ./site.key --local-keyfile ./HOSTNAME-local.key ./twpol.txt
Description: Description: G:\kamdat hostbased\update file policy 1.png

Hasil yang diperoleh setelah melakukan update file policy adalah seperti berikut:
Description: Description: G:\kamdat hostbased\update file policy 2.png

Percobaan 6: Melakukan Update Database dari System File
Database dari file system perlu di update secara berkala. Proses update dapat menggunakan perintah
# tripwire --update -z low --twrfile /var/lib/tripwire/report/host-yyyymmdd-tttttt.twr
Perintah tersebut berarti bahwa tripwire akan membandingkan antara database yang ada dengan file yang ada di system, kemudian akan menjalankan editor untuk memili perubahan di database. Opsi dari twrfile adalah file report yang dibangkitkan dan disimpan pada folder /var/lib/tripwire/report. Format penamaan file adalah berdasarkan tahun (yyyy), bulan (mm), tanggal(dd) dan jam dalam format (HH-MM-SS). Ekstensi file report adalah .twr.
Description: E:\semester 6\keamanan data\m3\21.png

Description: E:\semester 6\keamanan data\m3\22.png

C.      TUGAS PERCOBAAN
1.      Jalankan perintah :
# tripwire –check
Description: Description: G:\kamdat hostbased\tripwire cek1.png

Hasilnya:
Description: E:\semester 6\keamanan data\m3\17.png

Catat dan analisa hasilnya.

2.      Kerjakan langkah-langkah dibawah dan analisa setiap langkahnya
a.       Ubah file policy twpol.txt
# vim /etc/tripwire/twpol.txt
Description: E:\semester 6\keamanan data\m3\21.png

b.      Tambahkan di baris paling bawah
(
rulename = "Kirim Notifikasi ke email",
severity = $(SIG_HI),
emailto = root@localhost
)
Email akan dikirimkan ke akun email dari root dari system yang anda monitor.
Biasanya, email akan ditujukan kea kun user yang dapat bertindak sebagai root.
Description: E:\semester 6\keamanan data\m3\22.png

c.       Lakukan enkripsi terhadap file anda
# cd /etc/tripwire
# twadmin --create-polfile --cfgfile ./tw.cfg \
--site-keyfile ./site.key ./twpol.txt
Description: E:\semester 6\keamanan data\m3\23.png

d.      Ubah file konfigurasi untuk memasukkan informasi smtp :
# vi /etc/tripwire/twcfg.txt
MAILMETHOD =SMTP
SMTPHOST =localhost
SMTPHOST =localhost
SMTPPORT =25
Description: Description: G:\kamdat hostbased\tp2_d.png

e.       Lakukan enkripsi terhadap file tersebut
# cd /etc/tripwire
# twadmin --create-cfgfile --cfgfile ./tw.cfg
--site-keyfile ./site.key ./twcfg.txt
Description: Description: G:\kamdat hostbased\tp2_e.png

f.       Jalankan test dengan menggunakan perintah :
# tripwire –test –email root@localhost
Description: Description: G:\kamdat hostbased\tp2_f.png

g.      Check email di akun user anda
$ mail


3.      Buat sebuah file kosong . Kemudian salinlah ke dalam direktori /bin
# touch newfile.sh
# cp newfile.sh /root


4.      Lakukan cek konsistensi dengan menjalankan perintah :
# tripwire –check


Catat dan analisa hasilnya.

5.      Bandingkan hasil dari perintah pada nomor 1 dan nomor 4.


D.      LATIHAN
1.      Berikan kesimpulan hasil praktikum yang anda lakukan.
Pada hasil pratikum yang telah di jalankan maka tripware yang menjaga perubahan pada file dan direktori. Apabila terjadi perubahan file maka secara otomatis melakukan pemeriksaan file melalui cron.
2.      Berdasarkan percobaan yang anda lakukan, jelaskan cara kerja tripwire dalam melakukan integrity checker ?
Jawab:
Integrity checker pada Tripwire bekerja dengan cara menghitung checksum (menghitung integritas) dari daftar-daftar direktory yang sudah dienkripsi dan menyimpannya di dalam sebuah database. Kemudian secara periodik atau ketika user memerintahkan untuk melakukan pengecekan, checksum dari program-program tersebut akan dihitung ulang dan dibandingkan dengan database checksum tersebut.
3.      Carilah referensi baik dari buku maupun Internet, aturan-aturan apa saja yang bisa dideteksi oleh tripwire ?
Jawab:
Tripwire berfungsi sebagai unix integrity checker yang bisa digunakan diberbagai platform linux dan Unix. Berikut adalah tulisan singkat yang membahas bagaimana cara mengimplementasikan Tripwire di Linux Redhat:
1. Install tripwire
#yum install tripwire
2. Mengkonfigurasi tripwire
Ketika kita menginstall tripwire, akan terbentuk konfigurasi default yaitu: /etc/tripwire/tw.cfg Anda tidak bisa mengedit file ini karena file tersebut merupakan file binary terenkripsi, file versi cleartextnya adalah: /etc/tripwire/twcfg.txt. File ini adalah file yang bisa diubah-ubah untuk menyesuaikan kebutuhan. Berikut adalah contoh konfigurasi:
ROOT =/usr/sbin
POLFILE =/etc/tripwire/tw.pol
DBFILE =/var/lib/tripwire/$(HOSTNAME).twd
REPORTFILE =/var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twr
SITEKEYFILE =/etc/tripwire/site.key
LOCALKEYFILE =/etc/tripwire/$(HOSTNAME)-local.key
EDITOR =/bin/vi
LATEPROMPTING =false
LOOSEDIRECTORYCHECKING =false
MAILNOVIOLATIONS =true
EMAILREPORTLEVEL =3
REPORTLEVEL =3
MAILMETHOD =SENDMAIL
SYSLOGREPORTING =false
MAILPROGRAM =/usr/sbin/sendmail -oi -t
Banyak dari konfigurasi diatas bisa dijelaskan secara intuitif, hal yang harus kita perhatikan disini adalah “DBFILE” file ini berisi database pembanding, sebagai acuan pengecekan integritas sistem, file ini harus disimpan sebagai file read-only. Jika ada keadaan yang dinilai “false” oleh tripwire, maka tripwire akan mereport hal tersebut, hal ini bisa diatur dibagian “MAILNOVIOLATION” jika kita mendefinisikan “true” maka email akan dikirimkan setiap kali tripwire check dijalankan, sebaiknya kita set “false” karena selain membuat email jadi penuh, intruder bisa jadi menyadari keberadaan tripwire di dalam suatu host yang hendak dia hack.
Berikut adalah hal-hal yang diubah untuk konfigurasi yang saya miliki:
MAILMETHOD =SMTP
SYSLOGREPORTING =false
SMTPHOST =mail.polkatistas.org
SMTPPORT =25
Buat key file untuk site dan local:
#twadmin –generate-keys –site-keyfile ./site.key
#twadmin –generate-keys –local-keyfile ./local.key
Setiap kali anda membuat konfigurasi dan juga konfigurasi policy maka anda akan diminta memasukan key
Setelah kita melakukan editing terhadap konfigurasi tripwire(twcfg.txt) maka kita harus jalankan perintah berikut untuk membuat versi binarynya:
#twadmin –create-cfgfile –site-keyfile ./site.key twcfg.txt
3. Membuat/mengedit policy
Policy di tripwire adalah otak dari tripwire, konfigurasi ini menspesifikan, apa yang harus dilihat, untuk apa dilihat dan apa yang harus kita lakukan. Tripwire mempunyai default policy, dan jika diperlukan ini bisa diubah tentusaja. Kita juga harus bisa memilah-milah file-file mana saja yang harus dimonitor, apa hal-hal yang tidak boleh berubah, sehingga jika berubah maka jadi indikasi adanya penyusupan sistem. Hal ini menjadi penting karena jika kita salah mendefinisikan terlalu strict ataupun terlalu longgar, maka bisa terjadi false positive alarm atau jadi ada intruder yang tidak terdeteksi. 
a. Struktur dan syntax dari policy
Disini saya akan menjelaskan struktur file dan sintax dari policy tripwire
i. Definisi variabel:
TWROOT=/usr/sbin;
TWBIN=/usr/sbin;
TWPOL=”/etc/tripwire”;
TWDB=”/var/lib/tripwire”;
TWSKEY=”/etc/tripwire”;
TWLKEY=”/etc/tripwire”;
TWREPORT=”/var/lib/tripwire/report”;
HOSTNAME=ssintraappdev01.sampoernastrategic.com;
ii. Definisi variabel:
@@section FS
SEC_CRIT = $(IgnoreNone)-SHa ; # Critical files that cannot change
SEC_SUID = $(IgnoreNone)-SHa ; # Binaries with the SUID or SGID flags set
SEC_BIN = $(ReadOnly) ; # Binaries that should not change
SEC_CONFIG = $(Dynamic) ; # Config files that are changed infrequently but accessed often
SEC_LOG = $(Growing) ; # Files that grow, but that should never change ownership
SEC_INVARIANT = +tpug ; # Directories that should never change permission or ownership
SIG_LOW = 33 ; # Non-critical files that are of minimal security impact
SIG_MED = 66 ; # Non-critical files that are of significant security impact
SIG_HI = 100 ; # Critical files that are significant points of vulnerability
iii. Contoh konfigurasi
(
rulename = “Invariant Directories”,
severity = $(SIG_MED)
)
{
/ -> $(SEC_INVARIANT) (recurse = 0) ;
/home -> $(SEC_INVARIANT) (recurse = 0) ;
/etc -> $(SEC_INVARIANT) (recurse = 0) ;
}
Hal yang harus kita perhatikan sewaktu membuat policy adalah pastikan file-file ataupun folder yang dimonitor adalah yang memang benar-benar perlu dan memang ada di operating system anda. Silahkan sesuaikan, memang membutuhkan banyak waktu.
b. Buat policy
# twadmin –create-polfile twpol.txt
c. Hapus file text konfigurasi baik file konfigurasi tripwire maupun file konfigurasi policy:
# rm twpol.txt twcfg.txt
File konfigurasi berformat text ini bisa kita buat dari versi binarynya jika kita perlu mengubah policy dan konfigurasi tripwire:
#twadmin –print-polfile > twpol.txt
#twadmin –print-cfgfile > twcfg.txt
4. Inisialisasi database tripwire:
#tripwire –init
Dibagian ini pun anda akan diminta untuk mengisi passphrass yang ditanyakan, hasil dari perintah ini adalah database tripwire: /var/lib/tripwire/$(HOSTNAME).twd
5. Jalankan check secara rutin via crontab:
#tripwire –check
Output hasil check akan dibuat dalam twr file: /var/lib/tripwire/report/$(HOSTNAME)-$(DATE).twr
6. Setiap kali mengubah file yang tadi tertera dalam policy file jangan lupa lakukan step berikut:
#tripwire –update



Tidak ada komentar:

Posting Komentar