Jumat, 09 Juli 2010

sql inject

SQL INJECTION

Pengertian SQL Injection
1) SQL injection adalah sebuah aksi hacking yang dilakukan di aplikasi client dengan cara memodifikasi perintah SQL yang ada di memori aplikasi client.
2) SQL Injection merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan database untuk penyimpanan data.

Sebab terjadinya SQL Injection
1) Tidak adanya penanganan terhadap karakter – karakter tanda petik satu ’ dan juga karakter double minus -- yang menyebabkan suatu aplikasi dapat disisipi dengan perintah SQL.
2) Sehingga seorang Hacker menyisipkan perintah SQL kedalam suatu parameter maupun suatu form.

Bug SQL Injection berbahaya ?
1) Teknik ini memungkinkan seseorang dapat login kedalam sistem tanpa harus memiliki account.
2) Selain itu SQL injection juga memungkinkan seseorang merubah, menghapus, maupun menambahkan data–data yang berada didalam database.
3) Bahkan yang lebih berbahaya lagi yaitu mematikan database itu sendiri, sehingga tidak bisa memberi layanan kepada web server.


Apa saja yang diperlukan untuk melakukan SQL Injection ?
1) Internet Exploler / Browser
2) PC yang terhubung internet
3) Program atau software seperti softice



Contoh sintaks SQL Injection
Contoh sintak SQL dalam PHP
1) $SQL = “select * from login where username =’$username’ and password = ‘$password’”; , {dari GET atau POST variable }
2) isikan password dengan string ’ or ’’ = ’
3) hasilnya maka SQL akan seperti ini = “select * from login where username = ’$username’ and password=’pass’ or ‘=′”; , { dengan SQL ini hasil selection akan selalu TRUE }
4) maka kita bisa inject sintax SQL (dalam hal ini OR) kedalam SQL

Gambar contoh SQL Injection


Contoh sintaks SQL Injection
1) Sintaks SQL string ‘-- setelah nama username
2) Query database awal :


Berubah menjadi :




Contoh sintaks SQL Injection
SQL Injection melalui URL, contohnya :


Penanganan SQL Injection
1) Merubah script php
2) Menggunakan MySQL_escape_string
3) Pemfilteran karakter ‘ dengan memodifikasi php.ini

1. Merubah script php
Contoh script php semula :
$query = "select id,name,email,password,type,block from user " .
"where email = '$Email' and password = '$Password'";
$hasil = mySQL_query($query, $id_mySQL);
while($row = mySQL_fetch_row($hasil))
{
$Id = $row[0];
$name = $row[1];
$email = $row[2];
$password = $row[3];
$type = $row[4];
$block = $row[5];
}
if(strcmp($block, 'yes') == 0)
{
echo "\n";
exit();
}
else if(!empty($Id) && !empty($name) && !empty($email) && !empty($password));

Script diatas memungkinkan seseorang dapat login dengan menyisipkan perintah SQL kedalam form login. Ketika hacker menyisipkan karakter ’ or ’’ = ’ kedalam form email dan password maka akan terbentuk query sebagai berikut :

Maka dilakukan perubahan script menjadi :
$query = "select id,name,email,password,type,block from user".
"where email = '$Email'";
$hasil = mySQL_query($query, $id_mySQL);
while($row = mySQL_fetch_row($hasil))
{
$Id = $row[0];
$name = $row[1];
$email = $row[2];
$password = $row[3];
$type = $row[4];
$block = $row[5];
}
if(strcmp($block, 'yes') == 0)
{
echo "\n";
exit();
}
$pass = md5($Password);
else if((strcmp($Email,$email) == 0) && strcmp($pass,$password) == 0));

2. Menggunakan MySQL_escape_string
Merubah string yang mengandung karakter ‘ menjadi \’ misal SQL injec’tion menjadi SQL injec\’tion
Contoh : $kar = “SQL injec’tion”;
$filter = mySQL_escape_string($kar);
echo”Hasil filter : $filter”;
Hasilnya :


3. Pemfilteran karakter ‘ dengan memodifikasi php.ini
Modifikasi dilakukan dengan mengenablekan variabel magic_quotes pada php.ini sehingga menyebabkan string maupun karakter ‘ diubah menjadi \’ secara otomatis oleh php
Contoh :


Contoh script yang membatasi karakter yang bisa masukkan :
function validatepassword( input )
good_password_chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
validatepassword = true
for i = 1 to len( input )
c = mid( input, i, 1 )
if ( InStr( good_password_chars, c ) = 0 ) then
validatepassword = false
exit function
end if
next
end function

Implementasi SQL Injection
1) Masuk ke google atau browse yg lain
2) Masukkan salah satu keyword berikut
"/admin.asp"
"/login.asp"
"/logon.asp"
"/adminlogin.asp"
"/adminlogon.asp"
"/admin_login.asp"
"/admin_logon.asp"
"/admin/admin.asp"
"/admin/login.asp"
"/admin/logon.asp"
{anda bisa menambahi sendiri sesuai keinginan anda}


3) Bukalah salah satu link yang ditemukan oleh google, kemungkinan Anda akan menjumpai sebuah halaman login (user name danpassword).
4) Masukkan kode berikut :
User name : ` or `a'='a
Password : ` or `a'='a (termasuk tanda petiknya)
5) Jika berhasil, kemungkinan Anda akan masuk ke admin panel, di mana Anda bisa menambahkan berita, mengedit user yang lain, merubah about,
dan lain-lain. Jika beruntung Anda bisa mendapatkan daftar kredit card yang banyak.
6) Jika tidak berhasil, cobalah mencari link yang lain yang ditemukan oleh google.
7) Banyak variasi kode yang mungkin, antara lain :
User name : admin
Password : ` or `a'='a
atau bisa dimasukkan ke dua–duanya misal :
‘ or 0=0 -- ; “ or 0=0 -- ; or 0=0 -- ; ‘ or 0=0 # ;
“ or 0=0 # ; ‘ or’x’=’x ; “ or “x”=”x ; ‘) or (‘x’=’x
8) Cobalah sampai berhasil hingga anda bisa masuk ke admin panel

Cara pencegahan SQL INJECTION
1) Batasi panjang input box (jika memungkinkan), dengan
cara membatasinya di kode program, jadi si cracker pemula akan bingung sejenak melihat input box nya gak bisa diinject dengan perintah yang panjang.
2) Filter input yang dimasukkan oleh user, terutama penggunaan tanda kutip tunggal (Input Validation).
3) Matikan atau sembunyikan pesan-pesan error yang keluar dari SQL Server yang berjalan.
4) Matikan fasilitas-fasilitas standar seperti Stored Procedures, Extended Stored Procedures jika memungkinkan.
5) Ubah "Startup and run SQL Server" menggunakan low privilege user di SQL Server Security tab.


Hacking adalah seni. Hacking adalah perpaduan dari pengetahuan, kreatifitas dan kesabaran. Jika Anda memiliki ketiga-tiganya Anda akan berhasil.

R E F E R E N S I
1) -------------, SQLinjection, (www.BlackAngels.it).
2) -------------, Advanced SQL injection in SQL server applications, (www.ngssoftware.com).
3) -------------, SQL injection walktrough (www.securiteam.com).
4) BM-100, ”Hacking hiltonjakarta.com (SQL Injection)”, 24 Juli 2005, (http://www.jasakom.com).
5) Budi Raharjo, ”Keamanan Sistem Informasi Berbasis Internet”, PT Insan Indonesia & PT INDOCISC, Jakarta,2002.

Kamis, 08 Juli 2010

Keamanan Sifo

Pendahuluan
• Relevansi keamanan sistem informasi
– Informasi sebagai komoditi ekonomi ® obyek kepemilikan yang harus dijaga
– Informasi menciptakan “dunia” baru (mis: Internet) ® membawa beragam dinamika dari dunia nyata
• Komunikasi digital (e-mail, e-news, …)
• Aktifitas digital (e-commerce, e-learning, …)
• Konflik digital (cyber war, …)
• Mengapa sistem informasi rentan terhadap gangguan keamanan
– Sistem yg dirancang untuk bersifat “terbuka” (mis: Internet)
• Tidak ada batas fisik dan kontrol terpusat
• Perkembangan jaringan (internetworking) yang amat cepat
– Sikap dan pandangan pemakai
• Aspek keamanan belum banyak dimengerti
• Menempatkan keamanan sistem pada prioritas rendah
– Tidak ada solusi yang komprehensif
• Solusi terhadap masalah keamanan sistem informasi
– Pusat-pusat informasi tentang keamanan
• CERT
• Milis-milis tentang keamanan sistem
• Institusi lainnya: SecurityFocus, Symantec
– Penggunaan mekanisme deteksi global
• Pembentukan jaringan tim penanggap insiden di seluruh dunia
– Peningkatan kesadaran terhadap masalah keamanan
• Pendidikan bagi pengguna umum
• Pelatihan bagi personil teknis (administrator sistem dan jaringan, CIO, CTO)
Konsep-konsep Keamanan
• Keamanan sebagai bagian dari sistem QoS
– Ketersediaan, kehandalan, kepastian operasional, dan keamanan
– Keamanan: perlindungan thdp obyek-obyek dlm kaitannya dengan kerahasiaan dan integritas
• Obyek ® komponen pasif
– CPU, disk, program, …
• Subyek ® komponen aktif
– pemakai, proses, …
– Keamanan sbg. fungsi waktu: Sec(t)
• Memungkinkan kuantifikasi tingkat-tingkat keamanan, mirip dengan konsep MTTF (mean time to failure) pada kehandalan
• Biaya pengamanan sistem
– Pengertian “aman”: penyusup hrs mengeluarkan usaha, biaya, dan waktu yg besar utk dpt menembus sistem
– Biaya pengamanan ® kombinasi banyak faktor yg saling berpengaruh
– Perlu dicari optimisasi: biaya pengamanan vs potensi kerusakan
Konsep-konsep Keamanan
• Kebijakan keamanan
– Mengatur apa yang diijinkan dan tidak diijinkan dlm operasi normal
• Mengatur bgmn subyek dapat mengakses obyek
– Sering bersifat “politis” drpd teknis
– Harus mencerminkan proteksi thdp sistem secara seimbang, komprehen-sif, dan cost-effective
– Proses: analisis ancaman ® kebijakan keamanan ® mekanisme pengamanan
• Analisis ancaman: memperkirakan jenis ancaman dan potensi merusaknya
• Mekanisme pengamanan: implementasi kebijakan keamanan
– Kebijakan keamanan harus berfungsi dengan baik sekaligus mudah dipakai
• Dapat mencegah penyusup pada umumnya
• Mampu menarik pemakai untuk mengguna-kannya

Aspek-aspek dalam Masalah Keamanan
• Kerahasiaan
– Melindungi obyek informasi dari pelepasan (release) yg tidak sah
– Melindungi obyek resource dari akses yg tidak sah
• Integritas
– Menjaga obyek agar tetap dapat dipercaya (trustworthy)
– Melindungi obyek dari modifikasi yang tidak sah
Sistem Deteksi Intrusi
• Deteksi intrusi:
– Teknologi pengamanan sistem untuk menghadapi serangan dan penyalah-gunaan sistem
– Mengumpulkan info dari berbagai sumber di sistem dan jaringan, lalu menganalisisnya dari sudut pandang kelemahan pengamanan (security vulnerabilities)
• Relevansi
– Kenaikan tingkat pembobolan sistem sebesar 22% (1996 - 1998)
• Fungsi-fungsi
– Pemantauan dan analisis aktivitas pemakai dan sistem
– Audit terhadap konfigurasi dan kelemahan sistem
– Prakiraan integritas file-file sistem dan data
– Pengenalan pola-pola serangan
– Analisis statistik ttg. pola-pola abnormal
• Proses
– Kombinasi berbagai aktifitas peman-tauan, audit, dan prakiraan
– Dilakukan secara kontinyu
– Diawali dengan prakiraan kelemahan (vulnerability assessment)
• Identifikasi kelemahan sistem yg memung-kinkan terjadinya penyelewengan sistem pengamanan
• Teknik pasif: memeriksa konfigurasi sistem, file password, dsb.
• Teknik aktif: mengevaluasi performance sistem pengamanan melalui simulasi serangan
• Tools: scanners
• Hasil prakiraan menunjukkan snapshot kondisi keamanan sistem pd suatu saat
• Tidak bisa mendeteksi serangan yg sedang berlangsung
• Bisa menunjukkan bahwa sebuah serangan mungkin terjadi
• Kadang-kadang bisa menunjukkan bahwa sebuah serangan telah terjadi
Keuntungan Sistem Deteksi Intrusi
• Memberikan perlindungan yg lebih luas dalam pengamanan sistem
• Membantu memahami apa yg terjadi di dalam sistem
• Dukungan teknis:
– Melacak aktivitas pemakai dari awal sampai akhir
– Mengenal dan melaporkan usaha-usaha modifikasi file
– Mengetahui kelemahan konfigurasi sistem
– Mengenali bahwa sistem telah atau potensial untuk diserang
• Memungkinkan operasional pengamanan sistem dilakukan oleh staf tanpa keahlian spesifik
• Membantu penyusunan kebijakan dan prosedur pengamanan sistem
Kelemahan Sistem Deteksi Intrusi
• Bukan solusi total untuk masalah keamanan sistem
• Tidak bisa mengkompensasi kelemahan:
– mekanisme identifikasi dan autentifikasi
– protokol jaringan
– integritas dan kualitas informasi dalam sistem yang dilindungi
• Masih memerlukan keterlibatan manusia
• Banyak berasumsi pada teknologi jaringan konvensional, belum bisa menangani teknologi baru (mis: fragmentasi paket pd jaringan ATM)

Sniffing (Penyadapan)
• Sniffing: penyadapan informasi
– Memanfaatkan metode broadcasting
– “Membengkokkan” aturan Ethernet
• Dilakukan dengan membuat NIC bekerja pada mode “promiscuous”
• Dimanfaatkan untuk:
– menyadap password, e-mail, dokumen rahasia, dan semua informasi yg tidak dienkripsi
– memetakan network
– mengambilalih mesin-mesin “trusted” sbg batu loncatan
• Contoh-contoh sniffer
– Sniffit, TCP Dump, Linsniffer
• Mencegah efek negatif sniffing
– Pendeteksian sniffer (local & remote)
– Penggunaan kriptografi (mis: ssh sbg pengganti telnet)
www.attrition.org/security/newbie/security/sniffer/p54-10.txt
Scanning (Pemindaian)
• Teknik untuk menemukan saluran komunikasi yg dpt dieksploitasi
• Prinsip: coba ke sebanyak mungkin target, catat target yg potensial untuk dipindai
• Teknik pemindaian
– Penyapuan ping (Ping sweeping)
• Mengirimkan ICMP echo dan TCP ACK ke tiap host
• Untuk mengetahui apakah sebuah host sedang hidup atau tidak
– TCP connect (port scanning)
• Menggunakan system call connect()
• Tidak perlu privilege khusus
• Mudah dilacak melalui mekanisme log
– TCP SYN (model “setengah-terbuka”)
• Tidak membangun koneksi TCP secara penuh
• Mengirim SYN, menerima SYN|ACK, lalu mengirim RST (bukan ACK spt pada koneksi penuh)
• Relatif tidak terlacak oleh mekanisme log
• Memerlukan privilege root
Deteksi Intrusi Jaringan
• Untuk mendeteksi usaha-usaha sniffing dan scanning
• Berdasarkan basis data pola-pola penyusupan
• Penempatan tool pendeteksi
– Di antara firewall dan jaringan eksternal ® mendeteksi serangan yg dapat ditangkal firewall maupun yg tidak
– Di dalam jaringan lokal ® hanya mendeteksi serangan yg tidak dapat ditangkal firewall
IP Spoofing
• IP spoofing: “membajak” identitas (alamat IP) sebuah host untuk membangun komunikasi dengan host lain
• Memanfaatkan:
– Autentikasi berbasis alamat IP (mis: rlogin)
– Kelemahan protokol IP
• connectionless (tidak menyimpan connect-ion state)
• mudah untuk memodifikasi stack IP
• Skenario:
– Menentukan host sasaran
– Menemukan “pola-pola kepercayaan” (pattern of trust) dr host yg dapat dipercaya (trusted host)
– “Melumpuhkan” host yg dpt dipercaya
– Membajak identitas host yg dpt dipercaya
– Mencoba membentuk koneksi yg memanfaatkan autentikasi berbasis alamat IP
IP Spoofing

1. Menemukan pola-pola kepercayaan antara TGT dan TPC
– Memanfaatkan tool-tool yg ada: showmount, rpcinfo, …
2. Melumpuhkan TPC
– Melalui SYN flooding (D.o.S dengan permintaan SYN) dengan alamat palsu yg tidak terlacak (alamat milik A)
3. Pencuplikan dan peramalan nomor sekuens (ns)
4. Serangan:
– P(TPC) ®SYN® TGT
– TPC ¬SYN|ACK¬ TGT
– P(TPC) ®ACK® TGT (dng ns yg cocok)
– P(TPC) ®PSH ® TGT
5. Memasang backdoor
6. Tindakan pencegahan
– Tidak menggunakan autentikasi berbasis alamat IP
– Penyaringan paket dan firewall
– Penggunaan kriptografi
– Randomisasi ISN (Initial Sequence Number)
Carnivore
• Packet sniffer milik FBI
• Komponen
– Carnivore: packet sniffer
– Packeteer: packet reassembler
– Coolminer: ekstrapolasi dan analisis data
• Cara kerja
– FBI punya alasan cukup mencurigai seseorang terlibat dlm aktivitas ilegal
– Pengadilan memberi ijin melakukan penyadapan komunikasi
 content-wiretap: seluruh isi komunikasi
 trap-and-trace: target/tujuan komunikasi
 pen-register: asal komunikasi
– FBI meminta copy file backup ttg. aktivitas orang yg dicurigai ke ISP. Jika data yg diminta tidak ada, maka FBI melaksanakan langkah #4 dst.
– FBI memasang komputer Carnivore di ISP
 Pentium III, Win NT/2000, 128 MB RAM
 Software komunikasi komersial
 Program C++ untuk packet sniffing
 Sistem perlindungan fisik thdp sistem Carnivore
 Piranti isolasi jaringan utk menjaga Carnivore dr usaha-usaha penyusupan dsb
 Jaz drive 2 GB untuk piranti penyimpanan
• Cara kerja (lanjutan)
– Sistem Carnivore di-set sesuai dng penyadapan yg diijinkan. Packet sniffing dilakukan tanpa mengganggu aliran data yg lain
– Paket target yg disadap disimpan di piranti penyimpan (Jaz drive)
– Setiap 1 atau 2 hari, FBI mengganti kaset Jaz drive dengan yg baru
– Proses penyadapan berlangsung maks 1 bulan. Jika diperlukan waktu lebih, hrs ada ijin baru dr pengadilan
– Data yg diperoleh diproses dng Packeteer dan Coolminer
• Isu-isu ttg Carnivore
– Privasi dalam berkomunikasi
– Pentingnya regulasi
– Kebebasan berkomunikasi
– Kontrol oleh pemerintah
Virus, Worm, dan Trojan Horse
• Virus
– Program yg menumpang program lain
– Menginfeksi dng cara bereproduksi dan menempel pd program lain
• Worm
– Program yg menyebar melalui jaringan dan memanfaatkan lubang-lubang keamanan sistem
– Dapat mereplikasi dirinya sendiri
• Trojan horse
– Program dng “hidden agenda”
• Efek yg ditimbulkan virus, worm, dan Trojan horse
– Dari gangguan pd tampilan s.d. kerusakan data/file/hard disk
– Beban trafik jaringan yg begitu besar
– Server-server macet krn. DoS
– Kerugian material $17.1 milyar pd tahun 2000
Virus dan Penyebarannya
• Pemicu munculnya virus:
– Popularitas PC dng arsitektur terbuka
– Bulletin boards yg menyediakan aneka program ® melahirkan Trojan horse
– Floppy disk sbg alat transportasi program
• Penyebaran virus
– Virus menempel pd program lain
– Bila program induk dieksekusi, virus akan dimuat ke memori dan menjadi aktif
– Virus mencari program induk yg lain, dan bila ada, ia akan menempelkan kode programnya ke program induk baru ® menyebar melalui program induk baru ini
– Virus dpt masuk ke boot sector, shg tiap kali komputer dihidupkan, ia akan dimuat ke memori dan menjadi aktif
• Virus e-mail
– Menyebar melalui pengiriman e-mail ® sbg attachment e-mail
– Aktivasi melalui pembukaan attachment ® mengeksekusi script virus yg ada dlm attachment (mis: script VBA)
– Melissa, ILOVEYOU, …
Worm
• Menyebar melalui Internet dan mengeksploitasi kelemahan sistem
• Penyebaran:
1. Masuk ke sistem yg tidak terlindung
2. Replikasi
3. Scan sistem-sistem lain yg tdk terjaga
• Ledakan kombinatorial dlm penyebarannya
1. CodeRed: 250 ribu replikasi dlm 9 jam
2. Populasi mesin di Internet yg amat besar
3. Ketidakpedulian thdp aspek keamanan
• Contoh: CodeRed
1. Vulnerability di fasilitas ISAPI pd IIS
2. Replikasi dirinya pd 20 hari pertama pd tiap bulan
3. Web defacing (mengganti tampilan halaman Web)
4. Serangan DDoS
Contoh Worm: Code Red
• Platform yg terpengaruh:
– Windows NT 4.0 dan Windows 2000
• Akibat serangan
– Eksekusi kode sesuai dng keinginan penyerang
• Eksploitasi
– Instalasi IIS akan memasang bbrp file DLL yg mrpk ekstensi ISAPI -- salah satunya adl file IDQ.DLL (indexing service)
– IDQ.DLL mengandung buffer utk menangani input URL. Buffer ini tidak mengalami error checking
– Penyerang yg telah memiliki web session dng IIS dpt melakukan serangan berupa buffer overflow thdp IDQ.DLL
– Buffer overflow dng pola ttt menye-babkan eksekusi kode ttt oleh server pd konteks sistem ® kendali penuh pd sistem
• Kemungkinan penggunaan
– Web defacing
– Eksekusi perintah OS
– Rekonfigurasi server
– Eksekusi program lain
Pencegahan Virus, Worm, dkk
• Anti virus
– Update data ttg virus signature secara teratur
– Aktifkan proteksi yg disediakan oleh software (mis: proteksi virus macro)
• Faktor manusia: kehati-hatian
– Menggunakan disket dr sumber asing
– Menerima e-mail dengan attachment
– Menerima dokumen dr sumber asing
– Sering-sering melihat situs keamanan, mengawasi munculnya virus-virus baru, dan menerapkan patch yg diberikan
• Gunakan sistem operasi dan software yg tidak banyak memiliki lubang kelemahan
– Linux vs Windows
– Apache vs IIS
Firewall
• Program/piranti utk mencegah potensi kerusakan masuk ke network
• Metode
– Penapisan (filtering) paket
• Alamat IP
• Nama domain
• Protokol
• Port
– Layanan proxy
• Bertindak “atas nama” host di dalam network
• Sering digabung dengan fasilitas cache
• Potensi kerusakan yg dpt ditangkal oleh firewall
– Login jarak-jauh
– Application backdoors
– Pembajakan sesi SMTP (utk mengirim e-mail spam)
– Denial of service
– Bom e-mail
• Perancangan firewall
– Mengikuti kebijakan pengamanan
– Keamanan vs kemudahan akses
– Dua pendekatan
• Segala sesuatu yg tidak secara eksplisit diijinkan berarti tidak diperbolehkan
• Segala sesuatu yg tidak secara eksplisit dilarang berarti diijinkan
• Level ancaman
– Pentingnya informasi ttg sebuah ancaman atau serangan
• Kasus terburuk: tidak ada info sama sekali
• Kasus terbaik: info lengkap, dan serangan dapat ditangkal
– “Zona-zona beresiko”
• Host/network yg beresiko menerima ancaman/serangan yg terkait dng fungsi perlindungan yg diberikan oleh firewall
• Minimisasi zona beresiko menjadi sebuah “titik/node” (sentralisasi)
Implementasi Firewall
• Firewall dengan screening router
– Screening router: router dengan fasilitas penapisan paket
– Zona-zona beresiko:
• Host-host di jaringan privat
• Semua layanan yg diijinkan oleh router
– Sulit utk mendeteksi usaha-usaha penyusupan
– “Segala sesuatu yg tdk scr eksplisit dilarang berarti diijinkan”
• Firewall dng “dual-homed gateway”
– Tanpa router, dng “bastion host” gateway, forwarding TCP/IP dinonaktifkan
– Koneksi dng application gateways (mis: telnet forwarder) atau login ke gateway
– “Segala sesuatu yg tdk scr eksplisit diijinkan berarti dilarang”
– Jika disusupi dan TCP/IP forwarding diaktifkan, maka zona beresiko mjd amat luas
• Firewall dng screened host gateways
– Screening router + bastion host
• Bastion host di sisi jaringan privat
• Router dikonfigurasi agar bastion host mjd satu-satunya host di jaringan privat yg dpt dicapai dari Internet
– Zona beresiko terbatas pd bastion host dan router
– Dlm kaitannya dng bastion host, mirip dng. model dual-homed gateway
• Firewall dng screened subnet
– Screening router + bastion host
– Zona beresiko: bastion host + router
– Koneksi melalui application gateway
– Relatif sulit disusupi krn melibatkan 3 jaringan
• Firewall hibrid
– Menggunakan berbagai kombinasi tool dan piranti untuk mengimplementa-sikan fungsi firewall





Mengamankan Sistem Informasi
DALAM mengoperasikan Sistem Informasi, faktor keamanan merupakan hal penting yang perlu diperhatikan. Dengan demikian dapat dicegah ancaman terhadap sistem tersebut dan mendeteksi serta membetulkan apabila sistem mengalami kerusakan. Secara umum, ancaman terhadap Sistem Informasi dapat dibedakan menjadi dua macam, yaitu ancaman aktif dan ancaman pasif.
Ancaman aktif mencakup kecurangan dan kejahatan terhadap komputer, misalnya saja sabotase, pengaksesan oleh orang yang tidak berhak, penyalahgunaan kartu kredit dan sebagainya. Sedangkan ancaman pasif mencakup kegagalan sistem, kesalahan manusia dan bencana alam.
Untuk mengantisipasinya dapat dilakukan tindakan-tindakan yang berupa pengendalian terhadap Sistem Informasi dengan berbagai macam kontrol terhadap Sistem Informasi itu sendiri.
Kontrol tersebut meliputi :
1. Kontrol Administratif. Kontrol ini dimaksudkan untuk menjamin seluruh kerangka kontrol dilaksanakan sepenuhnya dalam organisasi berdasarkan prosedur-prosedur yang jelas. Termasuk didalamnya adalah proses pengembangan sistem, prosedur untuk back-up, pemulihan data dan manajemen pengarsipan data. Kontrol terhadap pengembangan dan pemeliharaan sistem, harus melibatkan Auditor Sistem Informasi dari mulai masa pengembangan hingga pemeliharaan sistem. Hal ini untuk memastikan bahwa sistem benar-benar terkendali, termasuk dalam hal otorisasi pemakai sistem.
2. Kontrol Operasi. Ini dilakukan agar sistem beroperasi sesuai dengan yang diharapkan. Yang termasuk didalamnya adalah: pembatasan akses terhadap pusat data, kontrol terhadap personel pengoperasi, kontrol terhadap peralatan, kontrol terhadap penyimpan arsip dan pengendalian terhadap virus.
3. Perlindungan Fisik. Dimaksudkan untuk menjaga hal-hal yang tidak diinginkan terhadap pusat data, faktor lingkungan yang menyangkut suhu, kebersihan, kelembaban udara, bahaya banjir, dan keamanan fisik ruangan. Ini perlu diperhatikan dengan benar. Peralatan-peralatan yang berhubungan dengan faktor-faktor tersebut perlu dipantau dengan baik.
4. Kontrol Perangkat Keras. Untuk mengantisipasi kegagalan sistem komputer, terkadang organisasi menerapkan sistem komputer yang berbasis fault-tolerant (toleran terhadap kegagalan). Sistem seperti ini tetap dapat berjalan sekalipun terdapat gangguan pada komponen-komponennya. Pada sistem ini, jika komponen dalam sistem mengalami kegagalan maka komponen cadangan atau kembarannya segera mengambil alih peran komponen yang rusak dan sistem dapat melanjutkan operasinya tanpa atau dengan sedikit interupsi.
5. Kontrol Akses terhadap sistem komputer. Kontrol ini membatasi akses terhadap sistem. Setiap pemakai sistem diberi otorisasi yang berbeda-beda. Setiap pemakai dilengkapi dengan nama pemakai dan password yang bersifat rahasia sehingga diharapkan hanya pemiliknyalah yang tahu passwordnya. Dengan teknologi yang semakin berkembang untuk dapat akses terhadap sistem komputer digunakan sifat-sifat biologis manusia yang bersifat unik, seperti sidik jari dan retina mata sebagai kunci untuk mengakses sistem.
6. Kontrol terhadap akses informasi. Pada kontrol ini difungsikan untuk mengatasi kemungkinan seseorang yang tidak berhak terhadap suatu informasi berhasil membaca informasi tersebut melalui jaringan. Untuk mengantisipasi keadaan tersebut, alangkah lebih baik sekiranya informasi tersebut dikodekan dalam bentuk yang hanya bisa dibaca oleh yang berhak.
7. Kontrol terhadap bencana. Karena biasanya bencana sulit diprediksikan keberadaannya, dan dapat terjadi kapan saja serta dimana saja. Untuk mengatasinya, organisasi perlu memiliki rencana pemulihan terhadap bencana. Misalnya saja dengan membagi empat komponen dalam merencanakan pemulihan terhadap bencana yaitu rencana darurat, rencana cadangan, rencana pemulihan dan rencana pengujian.
8. Kontrol terhadap perlindungan terakhir. Dalam pengendalian Sistem Informasi, bila rencana pemulihan terhadap bencana sudah dilakukan maka langkah selanjutnya adalah asuransi. Asuransi merupakan upaya untuk mengurangi kerugian sekiranya terjadi bencana. Itulah sebabnya, biasanya organisasi mengasuransikan gedung atau aset-aset tertentu dengan tujuan kalau bencana benar-benar terjadi. Klaim asuransi dapat digunakan untuk meringankan beban organisasi.
9. Kontrol aplikasi. Kontrol tersebut diwujudkan secara spesifik dalam suatu aplikasi Sistem Informasi. Wilayah yang dicakupnya meliputi :
- Kontrol masukan, digunakan untuk menjamin keakurasian data, kelengkapan masukan, dan validasi terhadap masukan.
- Kontrol pemrosesan, kesalahan dalam pemrosesan bisa saja terjadi sekalipun program dibuat dengan hati-hati agar bebas dari kesalahan. Oleh karena itu, pemeriksaan terhadap kebenaran hasil pemrosesan kadang-kadang perlu dilakukan sehingga apabila terjadi hal-hal yang tidak sesuai bisa langsung diketahui.
- Kontrol keluaran. Dilakukan secara manual untuk memastikan bahwa hasil pemrosesan memang sesuai dengan yang diharapkan.
- Kontrol Basis Data, merupakan kontrol terhadap basis data antara lain dilakukan dengan cara menerapkan kebijakan backup dan recovery, penanganan transaksi melalui mekanisme rollback dan commit serta Otorisasi akses.
- Kontrol Telekomunikasi. Telekomunikasi merupakan komponen yang paling lemah dalam Sistem Informasi. Penyadapan informasi dapat dilakukan melalui sarana ini dengan cara menyergap gelombang radio dalam sistem tanpa kabel (wireless) atau dengan cara menyadap jalur fisik dalam jaringan. Untuk mengantisipasi keadaan seperti ini, kontrol terhadap telekomunikasi dapat dilakukan dengan cara mengenkripsi informasi sehingga penyadap tidak dapat membaca informasi yang sesungguhnya.
Cara cara lain untuk mengamankan sistem informasi dapat dilakukan dengan

Mengatur akses control
Salah satu cara yang umum digunakan untuk mengamankan informasi adalah dengan mengatur akses ke informasi melalui mekanisme “authentication” dan “access control”. Implementasi dari mekanisme ini antara lain dengan menggunakan “password”.

Merubah Properties User
Klik tombol Properties untuk melihat properties dari user. Ada 2 Pilihan utama disamping 8 pilihan anggota group yaitu :
1. Standard User (Power User)
User dapat merubah beberapa file sistem, menginstall program yang tidak berpengaruh terhadap file sistem windows
2. Restricted User (User Groups)
User dapat menggunakan komputer dan menyimpan dokumen tetapi tidak dapat menginstall program dan merubah setting sistem windows.

Pengaturan User (lanjutan)
• Passwords dan .NET Passwords digunakan sebagai fasilitas untuk mengatur data password user yang dapat menggunakan komputer dan email.
• Advanced user management digunakan untuk mengatur group dan user pemakai komputer secara lebih detail.
Kriteria pembuatan password
• Jangan menggunakan nama login, nama pertama atau akhir beserta variasinya dan nama pasangan atau anak.
• Jangan menggunakan informasi lainnya yang mudah didapat tentang anda seperti No telp, Tgl Lahir.
• Gunakan password yang merupakan kombinasi antara huruf kapital dan huruf kecil dan angka.
• Gunakan special “32 karakter ALT”, diketikkan dengan menahan tombol Alt ketika mengetik angka antara 128 and 255 pada tombol angka dengan indikator Num Lock on.
• Gunakan Pasword yang mudah diketikkan, tanpa perlu melihat pada keyboard.
Menutup servis yang tidak digunakan
• Seringkali sistem (perangkat keras dan/atau perangkat lunak) diberikan dengan beberapa servis dijalankan sebagai default. contoh, pada sistem UNIX servis-servis berikut sering dipasang dari vendornya: finger, telnet, ftp, smtp, pop, echo, dan seterusnya.
• Servis tersebut tidak semuanyadibutuhkan. Untuk mengamankan sistem, servis yang tidak diperlukan di server (komputer) tersebut sebaiknya dimatikan.
Memasang Proteksi
• Untuk lebih meningkatkan keamanan sistem informasi, proteksi dapat ditambahkan. Proteksi ini dapat berupa filter (secara umum) dan yang lebih spesifik adalah firewall. Filter dapat digunakan untuk memfilter e-mail, informasi, akses, atau bahkan dalam level packet.
• contoh, di sistem UNIX ada paket program “tcpwrapper” yang dapat digunakan untuk membatasi akses kepada servis atau aplikasi tertentu. Misalnya, servis untuk “telnet” dapat dibatasi untuk untuk sistem yang memiliki nomor IP tertentu, atau memiliki domain tertentu.
• Sementara firewall dapat digunakan untuk melakukan filter secara umum.

Keamanan Sifo (DOS)

DOS (DENIAL OF SERVICE)

INFORMASI DAN KEAMANAN SISTEM INFRORMASI

Informasi saat ini menjadi sebuah komoditi yang sangat penting. Bahkan ada yang mengatakan bahwa kita sudah berada di sebuah “information-based society”. Kemampuan untuk mengakses dan menyediakan informasi secara cepat dan akurat menjadi sangat esensial bagi pengguna informasi. Hal ini dimungkinkan dengan perkembangan pesat di bidang teknologi komputer dan telekomunikasi.
Terhubungnya LAN atau komputer ke Internet membuka potensi adanya lubang keamanan (security hole) yang tadinya bisa ditutupi dengan mekanisme keamanan secara fisik. Ini sesuai dengan pendapat bahwa kemudahan (kenyamanan) mengakses informasi berbanding terbalik dengan tingkat keamanan sistem informasi itu sendiri. Semakin tinggi tingkat keamanan, semakin sulit (tidak nyaman) untuk mengakses informasi.
Begitu pentingnya nilai sebuah informasi menyebabkan seringkali informasi hanya boleh diakses oleh orang orang tertentu, sebab jatuhnya informasi ke tangan pihak lain(misalnya lawan bisnis) dapat menimbulkan kerugian bagi pemilik informasi. Untuk itu keamanan dari sistem informasi yang digunakan harus terjamin dalam batas yang dapat diterima. Walau sering kali masalah ini kurang mendapat perhatian dari para pemilik dan pengelola sistem informasi.
Kualitas sistem informasi diukur dari beberapa aspek berikut: kerahasiaan(confidentiality), integritas(integrity), dan ketersediaan(availability). Aspek availability berhubungan dengan ketersediaan informasi ketika dibutuhkan. Sistem informasi yang diserang dapat menghambat bahkan meniadakan akses ke informasi. Contoh hambatan adalah serangan yang sering disebut dengan “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.

B. PENGERTIAN DENIAL OF SERVICE(DOS) ATTACK

“Denial of Service (DoS) attack” merupakan sebuah usaha (dalam bentuk serangan) untuk melumpuhkan sistem yang dijadikan target sehingga sistem tersebut tidak dapat menyediakan servis-servisnya (denial of service) atau tingkat servis menurun dengan drastis. Cara untuk melumpuhkan dapat bermacam-macam dan akibatnyapun dapat beragam. Sistem yang diserang dapat menjadi “bengong” (hang, crash), tidak berfungsi atau turun kinerjanya (karena beban CPU tinggi).
Serangan ini berbeda dengan kejahatan pencurian data atau kejahatan memonitor inforamasi yang lalu lalang. Dalam serangan DoS tidak ada yang dicuri, tapi hal ini dapat mengakibatkan kerugian financial. Sebagai contoh apabila sistem yang diserang merupakan server yang menangani transaksi “commerce”, maka apabila server tersebut tidak berfungsi, transaksi tidak dapat dilangsungkan. Bayangkan apabila sebuah bank diserang oleh bank saingan dengan melumpuhkan outlet ATM (Anjungan Tunai Mandiri, Automatic Teller Machine) yang dimiliki oleh bank tersebut. Atau sebuah credit card merchant server yang diserang, sehingga tidak dapat menerima pembayaran melalui credit card.
Selain itu, serangan DoS sering digunakan sebagai bagian dari serangan lainnya. Misalnya, dalam serangan IPspoofing (seolah serangan datang dari tempat lain dengan nomor IP milik orang lain), seringkali DoS digunakan untuk membungkam server yang akan dispoof.

C. KLASIFIKASI SERANGAN DOS

Denial Of Service Attack adalah serangan yang paling sering digunakan daripada serangan yang lain, hal ini dikarenakan mudahnya untuk melakukannya, exploits-nya pun banyak ditemukan di internet. Siapapun bisa men-down kan sebuah website dengan hanya menggunakan simple command prompt. Tujuan utama serangan ini adalah membuat suatu sistem crash & karena overload sehingga tidak bisa diakses atau mematikan service.


Beberapa klasifikasi serangan DoS:
1. Land Attack
Land attack merupakan serangan kepada sistem dengan menggunakan program yang bernama “land”. Program land menyerang server yang dituju dengan mengirimkan packet palsu yang seolah-olah berasal dari server yang dituju. Dengan kata lain, source dan destination dari packet dibuat seakan-akan berasal dari server yang dituju. Akibatnya server yang diserang menjadi bingung.
2. Latierra
Program latierra merupakan “perbaikan” dari program land, dimana port yang digunakan berubah-ubah sehingga menyulitkan bagi pengamanan.
3. Ping Broadcast (Smurf)
Salah satu mekanisme serangan yang baru-baru ini mulai marak digunakan adalah menggunakan ping ke alamat broadcast, ini yang sering disebut dengan smurf. Seluruh komputer (device) yang berada di alamat broadcast tersebut akan menjawab. Jika sebuah sistem memiliki banyak komputer (device) dan ping broadcast ini dilakukan terus menerus, jaringan dapat dipenuhi oleh respon-respon dari device-device tersebut. Akibatnya jaringan menjadi lambat.
4. Ping of Death (PoD)
Ping-o-death sebetulnya adalah eksploitasi program ping dengan memberikan packet yang ukurannya besar ke sistem yang dituju. Beberapa sistem UNIX ternyata menjadi hang ketika diserang dengan cara ini. Program ping umum terdapat di berbagai operating system, meskipun umumnya program ping tersebut mengirimkan packet dengan ukuran kecil (tertentu) dan tidak memiliki fasilitas untuk mengubah besarnya packet. Salah satu implementasi program ping yang dapat digunakan untuk mengubah ukuran packet adalah program ping yang ada di sistem Windows 95.

Kamis, 01 Juli 2010

asp

Contoh dari asp
Gaji.asp

(body)
(form method="post" name="FormGaji" action="Proses.Asp" >
Nama :

Golongan:

(input type="radio" name="gol" value="1">
(% if instr(gol,"1") then response.write("checked")%> 1

(input type="radio" name="gol" value="2">
(% if instr(gol,"2") then response.write("checked")%> 2

(input type="radio" name="gol" value="3">
(% if instr(gol,"3") then response.write("checked")%> 3

Status :

(input type="radio" name="Stat" value="Menikah">
(% if instr(stat,"Menikah") then response.write("checked")%> Menikah

(input type="radio" name="Stat" value="Belum Menikah">
(% if instr(stat,"Belum Menikah") then response.write("checked")%> Belum Menikah

(input type="hidden" value="New" Name="input">
(input type="submit" value="Submit">
(/form>






Proses.asp

(head>
(title>Data Karyawan
(/head>
(body>
(form method="get" name="FormGaji" action="gaji.asp">


<%
Dim GajiBer, potongan, tunjangan
if request.querystring ("gol")="1" and ("Stat")="Menikah" then
potongan=500000
tunjangan=1000000
gaji=2000000
else if request.querystring("gol")="1" and ("Stat")="Belum Menikah" then
potongan=300000
tunjangan=500000
gaji=2000000
else if request.querystring("gol")="2" and ("Stat")="Menikah" then
potongan=1000000
tunjangan=1500000
gaji=4000000
else if request.querystring("gol")="2" and ("Stat")="Belum Menikah" then
potongan=700000
tunjangan=1200000
gaji=4000000
else if request.querystring("gol")="3" and ("Stat")="Menikah" then
potongan=1300000
tunjangan=2000000
gaji=6000000
else
potongan=1000000
tunjangan=1500000
gaji=6000000
end if
end if
end if
end if
end if
gajiber=gaji+tunjangan-potongan
%>

Nama : <% Request.Querystring ("nama")%>

Golongan: <% request.Querystring("Gol")%>

Status : <% request.QueryString("Stat")%>

<%
request.write<"Gaji Bersih = " & gajiber>
%>