PORTSENTRY
Keamanan jaringan adalah suatu cara
atau suatu system yang digunakan untuk memberikan proteksi atau perlindungan
pada suatu jaringan agar terhindar dari berbagaiancaman luar yang mampu merusak
jaringan.Elemen pembentukan keaman jaringan Ada dua elemen utama pembentuk keamanan
jaringan :
- Tembok pengamanan (baik secara fisik maupun maya), yaitu suatu cara untuk memberikan proteksi atau perlindugan pada jarigan, baik secara fisik (kenyataan) maupun maya (menggunakan software).
- Rencana pengamanan, yaitu suatu rancagan yang nantinya akan di implementasiakan uantuk melindugi jaringan agar terhindar dari berbagai ancaman dalam jaringan
Alasan keamanan
jaringan sangat penting karena:
Privacy
/ Confidentiality
- Defenisi : menjaga informasi dari orang yang tidak berhak mengakses
- Privacy : lebih kearah data-data yang sifatnya privat , Contoh : e-mail seorang pemakai (user) tidak boleh dibaca oleh administrator.
- Confidentiality : berhubungan dengan data yang diberikan ke pihak lain untuk keperluan tertentu dan hanya diperbolehkan untuk keperluan tertentu tersebut.
- Contoh : data-data yang sifatnya pribadi (seperti nama, tempat tanggal lahir, social security number, agama, status perkawinan, penyakit yang pernah diderita, nomor kartu kredit, dan sebagainya) harus dapat diproteksi dalam penggunaan dan penyebarannya.
- Bentuk Serangan : usaha penyadapan (dengan program sniffer).
2. Integrity
a.
Defenisi
: informasi tidak boleh diubah tanpa seijin pemilik informasi.
b. Contoh : e-mail di
intercept di tengah jalan, diubah isinya, kemudian diteruskan ke alamat yang
dituju.
c. Bentuk serangan : Adanya
virus, trojan horse, atau pemakai lain yang mengubah informasi tanpa ijin,“man
in the middle attack” dimana seseorang menempatkan diri di tengah pembicaraan
dan menyamar sebagai orang lain
3. Authentication
- Defenisi : metoda untuk menyatakan bahwa informasi betul-betul asli, atau orang yang mengakses atau memberikan informasi adalah betul-betul orang yang dimaksud.
- Dukungan : Adanya Tools membuktikan keaslian dokumen, dapat dilakukan dengan teknologi watermarking(untuk menjaga “intellectual property”, yaitu dengan menandai dokumen atau hasil karya dengan “tanda tangan” pembuat ) dan digital signature.
- Access control, yaitu berkaitan dengan pembatasan orang yang dapat mengakses informasi. User harus menggunakan password, biometric (ciri-ciri khas orang), dan sejenisnya.
4. Availability
- Defenisi : berhubungan dengan ketersediaan informasi ketika dibutuhkan.
- Contoh hambatan : “denial of service attack” (DoS attack), dimana server dikirimi permintaan (biasanya palsu) yang bertubi-tubi atau permintaan yang diluar perkiraan sehingga tidak dapat melayani permintaan lain atau bahkan sampai down, hang, crash. mailbomb, dimana seorang pemakai dikirimi e-mail bertubi-tubi (katakan ribuan e-mail) dengan ukuran yang besar sehingga sang pemakai tidak dapat membuka e-mailnya atau kesulitan mengakses e-mailnya.
5. Access
Control
a 1. Defenisi
: cara pengaturan akses kepada informasi. berhubungan dengan masalah
b2. authentication
dan juga privacy
c3. Metode
: menggunakan kombinasi userid/password atau dengan menggunakan mekanisme lain.
6. Non-repudiation
Defenisi
: Aspek ini menjaga agar seseorang tidak dapat menyangkal telah melakukan
sebuah transaksi. Dukungan bagi electronic commerce.
Pengertian
Portsentry
Portsentry merupakan
tools yang digunakan untuk menghindari berbagai aktifitas scanning (terutama
stealth scanning) yang dilakukan oleh hacker. Portsentry dapat mengingat ip
address dari si hacker. Portsentry juga dapat membuat server kita seolah-olah
menghilang dari hadapan hacker bilamana terjadi aktifitas scanning dan juga
dapat memblok IP hacker tersebut juga secara otomatis. Tujuannya adalah untuk
melindungi dari scanning yang dilakukan oleh pihak lain.
Dari sekian banyak hal
yang paling banyak di takuti orang pada saat mengkaitkan diri ke Internet
adalah serangan virus & hacker. Penggunaan Software Firewall akan membantu
menahan serangan dari luar. Pada kenyataan di lapangan, menahan serangan saja
tidak cukup, kita harus dapat mendeteksi adanya serangan bahkan jika mungkin
secara otomatis menangkal serangan tersebut sedini mungkin. Proses ini istilah
keren-nya Intrusion Detection.
PortSentry adalah
sebuah perangkat lunak yang di rancang untuk mendeteksi adanya port scanning
& meresponds secara aktif jika ada port scanning. Port scan adalah proses
scanning berbagai aplikasi servis yang dijalankan di server Internet. Port scan
adalah langkah paling awal sebelum sebuah serangan di lakukan. Terus terang,
cara meresponds PortSentry cukup sadiz, jika ada mesin yang tertangkap basah
melakukan port scan terhadap Server yang kita miliki maka secara aktif akan
memblokir mesin penyerang agar tidak dapat masuk & melakukan transaksi
dengan Server kita. Bagi mesin yang sial tersebut, maka jangan berharap untuk
melakukan hubungan ke Server yang kita miliki.
PortSentry dapat di
download secara gratis & tidak melanggar HAKI dari Psionic Software http://www.psionic.com.
Selain PortSentry juga tersedia beberapa freeware di http://www.psionic.com seperti Logcheck
untuk audit software & HostSentry yang merupakan host based intrusion
detection dan melihat jika ada login yang tidak normal. Bagi anda yang
menggunakan Linux Mandrake 8.0, PortSentry biasanya sudah di bawa bersama CD
Mandrake 8.0 jadi tidak perlu terlalu pusing lagi dengan mendownload dari
Internet. Beberapa fitur utama dari PortSentry:
1.
Berjalan di atas soket TCP & UDP untuk
mendeteksi scan port ke sistem kita.
2.
Mendeteksi stealth scan, seperti
SYN/half-open, FIN, NULL, X-MAS.
3.
PortSentry akan bereaksi secara real-time
(langsung) dengan cara memblokir IP address si penyerang. Hal ini dilakukan
dengan menggunakan ipchains/ipfwadm dan memasukan ke file /etc/host.deny secara otomatis oleh TCP Wrapper.
4.
PortSentry mempunyai mekanisme untuk mengingat
mesin / host mana yang pernah connect ke dia. Dengan cara itu, hanya mesin /
host yang terlalu sering melakukan sambungan (karena melakukan scanning) yang
akan di blokir.
5.
PortSentry akan melaporkan semua pelanggaran
melalui syslog dan mengindikasikan nama system, waktu serangan, IP mesin
penyerang, TCP / UDP port tempat serangan dilakukan. Jika hal ini di integrasikan
dengan Logcheck maka administrator system akan memperoleh laporan melalui
e-mail.
6.
Dengan adanya berbagai fitur di atas maka
system yang kita gunakan tampaknya seperti hilang dari pandangan penyerang. Hal
ini biasanya cukup membuat kecut nyali penyerang.
7.
Penggunaan PortSentry sendiri sangat mudah
sekali, bahkan untuk penggunaan biasa saja praktis semua instalasi default
tidak perlu di ubah apa-apa dapat langsung digunakan. Instalasi PortSentry di
Linux Mandrake 8.0 dapat dilakukan pada saat instalasi awal dengan memilih
paket portsentry, atau setelah Linux di install dengan cara menggunakan
Software Manager di desktop untuk menambahkan portsentry.
8.
Yang mungkin perlu di tune-up sedikit adalah
file konfigurasi portsentry yang semuanya berlokasi di /etc/portsentry. Untuk
mengedit file konfigurasi tersebut anda membutuhkan privilige sebagai root.
Pengalaman saya selama ini, tidak banyak yang perlu di tune-up. Beberapa hal
yang mungkin perlu di set adalah
9.
file /etc/portsentry/portsentry.conf merupakan
konfigurasi utama portsentry. Disini secara bertahap diset port mana saja yang
perlu di monitor, responds apa yang harus di lakukan ke mesin yang melakukan
portscan, mekanisme menghilangkan mesin dari routing table, masukan ke host.deny. Proses setting sangat mudah hanya dengan membuka
/ menutup tanda pagar (#) saja. Pada kenyataannya, jika kita ambil dari
distribusi Linux Mandrake, semua option di portsentry.conf yang
ada kita diamkan saja portsentry sudah berjalan dengan baik.
10. pada file /etc/portsentry/always_ignore
masukan semua IP address di LAN yang harus selalu di abaikan oleh portsentry.
Saya biasanya memasukan IP address desktop / laptop administrator LAN ke sini,
agar tidak terblokir secara tidak sengaja.
11. Pada file /etc/portsentry/portsentry.ignore
isikan IP address yang perlu di abaikan sama dengan isi file
/etc/portsentry/always_ignore.
12. Pada file /etc/portsentry.modes kita dapat menset mode deteksi yang
dilakukan portsentry. Semakin baik mode deteksi yang dipilih (advanced stealth TCP/UP scanning), biasanya PortSentry
akan semakin sensitif & semakin rewel karena sedikit-sedikit akan memblokir
mesin.
Gambar 1.1 Masuk grub linux
Di
bagian ini kita akan masuk ke grub linux dengan memasukan username root dan
password
Gambar 1.2.update
Semua sistem operasi pada prinsipnya menggunakan kernel, tapi
jelas kernel yang mereka gunakan berbeda dengan kernel Linux yang ditulis oleh
Linuz.Kernel yang digunakan oleh Linux sangat modular dan oleh karena itu
banyak orang bisa ikut berkontribusi dalam pengembangan kernel ini, kendati
pemantauan tetap dilakukan oleh Linuz.
Hampir setiap kali kernel baru dirilis untuk umum, biasanya
kernel ini memperbaiki sisi keamanan atau kerentanan yang dimiliki oleh versi
sebelumnya. Lubang keamanan yang ditutup dalam kernel versi baru biasanya di
dapat dari laporan bug baik dari komunitas maupun dari personal pengguna Linux.
Hal Ini mungkin adalah salah satu alasan paling penting untuk meng-update
kernel Anda, karena Linux Anda akan menjanjikan keamanan lebih dari versi
terdahulu. Terlebih jika Anda mengunakannya sebagai server, melayani banyak
client sehingga tingkat kerentanan untuk diretas begitu tinggi, maka dengan
update kernel Anda sudah melakukan satu langkah yang baik untuk menghindari
kerusakan pada sistem Anda.
Perbaikan Stabilitas
Mengupdate
kernel tidak hanya memberikan keamanan yang lebih bagi sistem Anda, tetapi
dapat memperbaiki masalah lain yang mungkin bisa membuat sistem crash melalui
penggunaan normal. Dalam kernel versi lawas mungkin beberapa aplikasi yang Anda
pakai tidak berjalan dengan normal atau sering crash, maka update kernel
mungkin salah satu solusi.Namun perlu di ingat bahwa tidak semua aplikasi yang
crash ditimbulkan oleh kernel, tapi biasanya kernel baru menjanjikan sesuatu
yang lebih stabil untuk aplikasi Anda.
Driver yang telah diperbarui
Isu
tentang kompatibel nya sebuah pergankat keras dengan Linux telah menjadi isu
yang paling santer terdengar sejak kemunculan Linux ke permukaan.Namu dewasa
ini masalah tersebut telah sedikit meredup dengan perbaikan kernel secara terus
menerus dan berkat kemudahan yang ditawarkan oleh distribusi Linux sehingga
pengguna tidak perlu lagi menkompail secara manual driver mereka.Untuk
perangkat keras keluaran lama biasanya sudah didukung oleh Linux.Namun bagaimana
dengan perangkat keras keluaran baru, dimana saat peluncuran nya kernel versi
baru belum keluar ?Ya hal ini membutuhkan usaha lebih. Namun jika Anda bisa
bersabar maka tunggulah Kernel versi baru dan segera lakukan update, jika masih
belum juga didukung maka langkah yang Anda lakukan adalah memberikan laporan
tentang perangkat yang Anda gunakan
Fitur Baru Kernel
Kadang-kadang,
pembaruan kernel Linux juga membawa beberapa fungsi baru.Fungsi-fungsi ini pada
dasarnya adalah program dari kernel yang dapat digunakan untuk melakukan
semacam tugas atau sebuah operasi.
Peningkatan kecepatan
Last but not least, update ke kernel dapat meningkatkan
kecepatan keseluruhan sistem. Kadang-kadang, orang tidak dapat mengetahui
perbedaan mendasar dalam kernel yang mereka pakai. Namun tidak sedikit yang
mengalami penurunan kinerja sistem operasi Linux mereka setelah melakukan
update kernel, mungkin hal ini terjadi karena beberapa aplikasi, hardware tidak
cocok dengan kernel baru, dan jika mengalami masalah ini, maka kembalilah
menggunakan kernel versi lama Anda.
Kesimpulan
Ya tentu saja update kernel begitu penting bagi
pengguna Linux. Namun bagi Anda yang tidak membutuhkan update dan sudah merasa
baik-baik saja, ataupun sudah merasa cukup dengan kernel yang sedang dipakai
sekarang, maka tidak mengupdate kernel adalah pilihan utama, Namun sebaliknya
jika Anda sangat membutuhkan update mungkin karena terdapat celah keamanan
dalam versi kernel yang sedang dipakai, maka update kernel adalah hal yang
sangat penting bagi sistem Anda
Gambar 3 installasi portsentry
Pada tahap ini kita
menginstal porsentry ,porsentry adalah sebuah aplikasi scan dan untuk
memonitoring sebuah jaringan
Gambar
4 printah masuk configurate portsentry
Pada tahap ini perintah
nano/etc/porsentry/portsentri.cof itu perintah untuk masuke konfig porsentry
Gambar
5Konfigurasi advance_ports
TCP dan UDP
Pada server IDS terdapat file
konfigurasi yang ada di direktori /etc/portsentry/portsentry.conf
untuk mereject koneksipenyerang dengan iptables
dan memfilter IP host
penyerangmelalui TCP wrapper. Untuk
mengedit file /etc/portsentry/portsentry.conf
dengan cara mengetikkan perintah # nano
/etc/portsentry/portsentry.conf.
Gambar
6Konfigurasi Blocking
TCP dan UDP scans
Pada gambar 5
memperlihatkan konfigurasi blocking UDP/TCP
scans pada ignore options , memilih angka 1 untuk memblock jika terjadi scanning port TCP dan UDP
Pada server IDS coba lakukan scanning port sendiri dengan menggunakan perintah # nmap localhost untuk mengetahui port yang dibuka dan dicek oleh portsentry seperti pada gambar 9 tetapi harus menginstall program nmap di linux dengan mengetikkan perintah apt-get install nmap yang sudah terkoneksi dengan internet.
Pada server IDS coba lakukan scanning port sendiri dengan menggunakan perintah # nmap localhost untuk mengetahui port yang dibuka dan dicek oleh portsentry seperti pada gambar 9 tetapi harus menginstall program nmap di linux dengan mengetikkan perintah apt-get install nmap yang sudah terkoneksi dengan internet.
MOD SECURITY
Apa
itu ModSecurity ?, ModSecurity adalah Web Application Firewall (WAF) yang
bekerja untuk Apache, Nginx dan IIS. Dengan manambahkan WAF pada web server
kita, tentu akan meningkatkan keamanan web server dari serangan cracker yang
tidak bertanggung jawab. Di sini saya menggunakan sitem operasi ubuntu server
14.04 LTS 64 bit dan menggunakan apache2 untuk web server nya.
Gambar 1 Install
Mod Security Dengan Perintah
·
File konfigurasi ModSecurity
default diatur ke
DetectionOnly
, yang mencatat
permintaan sesuai dengan kecocokan aturan dan tidak memblokir apapun. Ini bisa diubah dengan mengedit modsecurity.conf
file dan memodifikasi SecRuleEngine
direktif. Jika Anda mencoba ini di server
produksi, ubahlah perintah ini hanya setelah menguji semua peraturan Anda.
The
SecResponseBodyAccess
direktif
mengkonfigurasi apakah tubuh respon buffer (yaitu dibaca oleh ModSecurity). Ini hanya diperlukan jika deteksi dan
proteksi kebocoran data diperlukan. Oleh
karena itu, membiarkannya menggunakan sumber Droplet dan juga meningkatkan
ukuran logfile, jadi kami akan mematikannya.
Menguji
SQL Injection
Sebelum mengkonfigurasi beberapa
aturan, kita akan membuat skrip PHP yang rentan terhadap injeksi SQL untuk
menguji perlindungan ModSecurity.
Pertama, akses MySQL prompt.
Disini, buat database MySQL yang dengan nama binadarma dan
hubungkan ke sana.
Kemudian buat tabel yang berisi beberapa kredensial, contoh - username ' or true --dan password dede. Akhirnya, keluar dari prompt
MySQL.
Selanjutnya, buatlah skrip login
di root dokumen Apache.
Tempel skrip PHP berikut ke
dalam file /var/www/html/login.php. Pastikan untuk mengubah
password MySQL di script di bawah ini yang anda tentukan tadi sehingga
scriptnya bisa terhubung ke database:
<html>
<body>
<?php
if(isset($_POST['login']))
{
$username = $_POST['username'];
$password = $_POST['password'];
$con =
mysqli_connect('localhost','root','gejok123','sample');
$result = mysqli_query($con,
"SELECT * FROM `users` WHERE username='$username' AND
password='$password'");
if(mysqli_num_rows($result)
== 0)
echo
'Invalid username or password';
else
echo
'<h1>Logged in</h1><p>This is text that should only be
displayed when logged in with valid credentials.</p>';
}
else
{
?>
<form
action="" method="post">
Username: <input
type="text" name="username"/><br />
Password: <input
type="password" name="password"/><br />
<input
type="submit" name="login" value="Login"/>
</form>
<?php
}
?>
</body>
</html>
Tugas
selanjutnya adalah mencoba injeksi SQL untuk memotong halaman
login. Masukkan berikut ini untuk kolom username.
Setelah dimasukkan sql injection ternyata bisa masuk.
Seperti pada gambar berikut ini.
Membuat rule mod
security
Pada langkah ini, kami akan menyiapkan beberapa peraturan
ModSecurity.Untuk
mempermudah, ada banyak aturan yang sudah terpasang bersama dengan
ModSecurity. Ini disebut CRS (Core Rule Set) dan berada di
dalam /usr/share/modsecurity-crsdirektori. Untuk memuat aturan ini,
kita perlu mengkonfigurasi Apache untuk membaca .conffile di direktori
ini, jadi buka security2.conf file untuk diedit.
# nano /etc/apache2/mods-enabled/security2.conf
Tambahkan perintah yang
berwarna merah ke dalam file
/etc/apache2/mods-enabled/security2.conf
</IfModule>).
IncludeOptional /etc/modsecurity/*.conf
IncludeOptional"/usr/share/modsecurity-crs/*.conf"
IncludeOptional"/usr/share/modsecuritycrs/activated_rules/*.conf"
</IfModule>
Selanjutnya reload apachenya
# service apache2
reload
Coba lagi mengakses
web dengan sql injection seperti gambar di bawah ini
Kalau tampilan akhirnya seperti ini
berarti mod security nya berhasil.
SNORT
Snort adalah NIDS yang bekerja dengan menggunakan signature detection, berfungsi juga sebagai sniffer dan packet logger. Snort
pertama kali di buat dan dikembangkan oleh Marti Roesh, lalu menjadi sebuah
opensource project Versi komersial dari snort dibuat oleh Sourcefire (www.sourcefire.com). Snort memiliki karakteristik, sebagai
berikut:
1.
Berukuran kecil – Source code dan rules untuk rilis 2.1.1 hanya 2256k.
2.
Portable untuk banyak OS – Telah diporting ke
Linux, Windows, OSX, Solaris, BSD,dll.
3.
Cepat – Snort mampu mendeteksi serangan pada network 100Mbps.
4.
Mudah dikonfigurasi – Snort sangat mudah dikonfigurasi sesuai dengan
kebutuhan network kita. Bahkan kita juga dapat membuat rule sendiri untuk mendeteksi adanya serangan
baru.
5.
Free – Kita tidak perlu membayar sepeser pun untuk menggunakan snort. Snort
bersifat open source dan menggunakan lisensi GPL.
6.
A.
Komponen Snort.
Snort
merupakan packet sniffing yang sangat
ringan. Snifing interface yang digunakan berbasis
libpcap (pada Unix tersedia dengan tcpdump, www.tcpdump.org). Pembuat snort
sangat fokus pada engine yang
digunakan untuk mendeteksi serangan dan memanfaatkan tools tcpdump untuk
mengambil paket network. Salah satu keunggulan snort adalah bahwa snort
memiliki plugin sistem yang sangat
fleksibel untuk dimodifikasi.
Snort memiliki beberapa komponen
yang tiap komponennya mempunyai tugas masing-masing. Pada saat ada paket
network yang melewati Ethernet di tempat snort dipasang, maka ada beberapa hal
yang dilalui:
1. Packet capture library (libpcap). Packet capture library –
akan memisahkan paket data yang melalui ethernet card untuk selanjutnya
digunakan oleh snort.
2. Packet decoder. Packet decoder –
mengambil data di layer 2 yang dikirim dari packet capture library(proses
1). Pertama ia akan memisahkan Data link (seperti ethernet, TokenRing, 802.11)
kemudian protokol IP, dan selanjutnya paket TCP dan UDP. Setelah pemisahan data
selesai, snort telah mempunyai informasi protokol yang dapat diproses lebih
lanjut.
3. Preprocessor. Selanjutnya dilakukan analisis (preprocessor) atau manipulasi terhadap paket sebelum
dikirim ke detection engine. Manipulasi paket
dapat berupa ditandai, dikelompokan atau malah dihentikan.
4. Detection Engine. Inilah jantung dari snort. Paket yang datang dari packet decoder akan ditest dan dibandingkan
dengan rule yang telah ditetapkan sebelumnya. Rule berisi tanda-tanda (signature) yang termasuk serangan.
5. Output. Output yang
dihasilkan berupa report dan alert. Ada banyak variasi output yang dihasilkan
snort, seperti teks (ASCII), XML, syslog, tcpdump, binary format, atau Database
(MySQL, MsSQL, PostgreSQL, dsb).
B.
Memilih
lokasi Snort.
Hal terakhir yang harus kita ketahui,
sekaligus menjadi faktor yang menentukan keefektifan dari snort adalah
‘lokasi’. Ini sangat penting terlebih jika jaringan yang kita kelola berukuran
besar. Oleh karena itu, sebelum memulai menginstal snort, tentukan terlebih
dahulu apa yang akan kita lindungi, apakah:
1. Single server
2. Sekelompok
server
3. Semua subnet
Setelah kita selesai menentukan apa yang akan
dimonitor, maka kita bisa leluasa menentukan dimana akan meletakan snort. Jadi
untuk menempatkan snort tergantung kepada apa yang akan kita monitor.
Network
biasanya menggunakan firewall untuk
memisahkan server publik ke dalam De-Militarized Zone (DMZ)
dan jaringan lokal ke dalam internal NAT network. Hal-hal
yang penting untuk diketahui, adalah:
1. DMZ – adalah
daerah untuk menempatkan server publik yang sering diakses melalui internat.
Server seperti email, web, atau ftp bisa kita letakan di sini secara
berkelompok. Biasanya zone di daerah ini banyak mengalami lalu lintas data dari
internet.
2.
NAT (Network Address Translation) adalah cara untuk
menyembunyikan beberapa komputer yang menggunakan IP private di belakang IP publik. Dengan menggunakan
NAT, komputer internal di jaringan tetap bisa menggunakan internet meskipun
menggunakan IP private. Tetapi sebaliknya, pengguna internet tidak bisa
mengenali workstation yang ada di dalam NAT.
Mengapa
kita perlu memisahkan kedua jaringan ini? Jika di suatu perusahaan hanya
menggunakan internet untuk jaringan komunikasi internal seperti mengirim email
atau browsing mungkin tidak menjadi masalah. Tetapi jika perusahaan juga
membutuhkan server web atau email sendiri untuk menjalankan bisnisnya, maka
berhati-hatilah, karena kita telah mempublikasikan kepada dunia tentang web site perusahaan kita. Artinya semua orang di
dunia juga bisa bermain-main dan mengerjai server kita.
Oleh
karena itu, jika server yang terletak di DMZ misalnya berhasil ditembus olehcracker, maka kerusakan dapat diminimalkan karena
mereka tidak dapat keluar dari DMZ ke jaringan internal.
Jadi setiap kita menempatkan server publik, di
situ juga harus dipasang snort. Jika jaringan kita menggunakan DMZ, maka
setidaknyadilakukan hal-hal sebagai berikut:
1. Buat satu
port di switch DMZ sebagai monitoring port.
2.
Tambahkan perintah di file konfigurasi snort (snort.conf) untuk memonitor subnet tersebut.
Berikut adalah contoh install Snort.
Berikut Cara menjalankan Snort
Untuk mencatat rekaman packet ke dalam file teks, Snort bisa
dijalankan dengan memberikan perintah seperti:
snort
-dev -l ./log
Perintah di atas akan menulis
rekaman packet ke dalam direktori log (direktori
ini harus sudah dibuat sebelumnya).
Dan untuk modus NIDS, tambahan argumen -c yang merujuk ke
file konfigurasi Snort, seperti berikut ini:
snort
-d -l ./log -c snort.conf
Pada perintah di atas, file
konfigurasinya bernama snort.conf.
Untuk menjalankan Snort sebagai daemon (background
process yang terus berjalan), tambahkan argumen -D seperti pada contoh ini:
snort
-d -l /var/log/snort.log
-c /etc/snort.conf
-D
contoh isi file konfigurasi:
var
LOG_IP 100.10.12.13
alert
tcp $LOG_IP any -> any any (msg: "Akses Dari Dia"; sid:1;)
File konfigurasi di atas
menyebabkan Snort menghasilkan alert dalam file bernama alert setiap kali IP 100.10.12.13 melakukan
akses TCP, dengan pesan berupa “Akses Dari Dia”. Tentu saja ini adalah
contoh konfigurasi sederhana yang tidak banyak berguna, akan tetapi cukup untuk
menunjukkan syntax file konfigurasi Snort yang lumayan rumit. Contoh di
atas mengandung sebuah variabel IP bernama LOG_IP. Variabel tersebut
dapat digunakan dengan menulis $LOG_IP yang akan disubstitusi dengan nilai yang
sesungguhnya.
Argumen yang biasanya
diberikan saat memanggil Snort juga dapat dituliskan ke file konfigurasi
sehingga tidak perlu diberikan secara manual pada saat menjalankan Snort,
seperti pada contoh berikut
#sama
dengan argumen -D
config
daemon
#sama
dengan argumen -d
config
dump_payload
#sama
dengan argumen -l
config
logdir: /var/log/snort
var
LOG_IP 192.168.1.2
alert
tcp $LOG_IP any -> any any (msg: "Akses Dari Dia"; sid:1;)
Gunakan
preprocessor untuk memakai processor yang sudah disediakan oleh Snort.
Sebagai contoh, untuk mendeteksi terjadinya port scanning, tambahkan konfigurasi
berikut:
preprocessor
stream5_global:\
track_tcp yes, track_udp yes,
track_icmp yes
preprocessor
stream5_tcp:\
policy first
preprocessor
stream5_udp
preprocessor
stream5_icmp
preprocessor
sfportscan:\
proto { all } \
scan_type { all } \
sense_level { high }
Konfigurasi
di atas akan memakai preprocessor sfPortScan dari Source Fire. Syarat
untuk memakai sfPortScan adalah menggunakan preprocessor Stream5.
Sekarang, bila seseorang melakukan port scanning (yang merupakan tahap awal
dalam serangan), misalnya dengan menggunakan tool Nmap:
$
nmap -A -v 192.168.1.22
Maka,
Snort akan menghasilkan alert seperti berikut ini:
[**]
[122:1:0] (portscan) TCP Portscan [**]
[Priority:
3]
06/06-03:34:13.052153
192.168.1.49 -> 192.168.1.22
PROTO:255
TTL:64 TOS:0x0 ID:0 IpLen:20 DgmLen:158 DF
Alert
tersebut menunjukkan bahwa seseorang dari IP 192.168.1.49 melakukan port
scanning untuk komputer dengan IP 192.168.1.22.
Nama : LUVICTOR DOLAY 141420216
Nama Dosen : Suryayusra