World Wide Web (WWW ) merupakan
salah satu ‘killer Applications ’ yang
menyebabkan populernya Internet. WWW dikembangkan
oleh Tim Berners-Lee ketika bekerja di CERN (Swiss).Kehebatan Web adalah
kemudahannya untuk mengakses informasi,
yang dihubungkan satu dengan lainnya melalui konsep hypertext.
Pembaca atau peraga sistem WWW
yang lebih dikenal dengan istilah browser dapat diperoleh dengan mudah,
murah atau gratis. Contoh browser adalah Netscape, Internet Explorer, Opera, kfm
(KDE file manager di sistem Linux), dan masih banyak lainnya. Kemudahan
penggunaan program browser inilah yang memicu populernya WWW.
Berkembangnya WWW dan Internet
menyebabkan pergerakan system informasi untuk menggunakannya sebagai basis.
Banyak sistem yang tidak terhubung ke Internet tetapi tetap menggunakan basis
Web sebagai basis untuk sistem informasinya yang dipasang di jaringan Intranet.
Untuk itu, keamanan sistem informasi yang berbasis Web dan teknologi Internet bergantung
kepada keamanan sistem Web tersebut.
Arsitektur sistem Web terdiri
dari dua sisi: server dan client. Keduanya dihubungkan dengan jaringan komputer
(computer network). Selain menyajikan data-data dalam bentuk statis, sistem Web
dapat menyajikan data dalam bentuk dinamis dengan menjalankan program. Program
ini dapat dijalankan di server (misal dengan CGI, servlet) dan di client
(applet, Javascript). Sistem server dan client memiliki permasalahan yang
berbeda. Keduanya akan dibahas secara terpisah.
Ada asumsi dari sistem Web ini.
Dilihat dari sisi pengguna:
·
Server
dimiliki dan dikendalikan oleh organisasi yang mengaku memiliki server
tersebut. Maksudnya, jika sebuah server memiliki domain www.bni.co.id dan
tulisan di layar menunjukkan bahwa situs itu merupakan milik Bank BNI maka kita
percaya bahwa server tersebut memang benar milik Bank BNI.
·
Dokumen
yang ditampilkan bebas dari virus, trojan horse, atau itikad jahat lainnya.
Bisa saja seorang yang nakal memasang virus di web nya. Akan tetapi ini
merupakan anomali.
·
Server
tidak mendistribusikan informasi mengenai pengunjung (user yang melakukan
browsing) kepada pihak lain. Hal ini disebabkan ketika kita mengunjungi sebuah
web site, data-data tentang kita (nomor IP, operating system, browser yang
digunakan, dll.) dapat dicatat. Pelanggaran terhadap asumsi ini sebetulnya
melanggar privacy. Jika hal ini dilakukan maka pengunjung tidak akan kembali ke
situs ini.
Asumsi dari penyedia jasa
(webmaster) antara lain:
·
Pengguna
tidak beritikad untuk merusak server atau mengubah isinya (tanpa ijin).
·
Pengguna
hanya mengakses dokumen-dokumen atau informasi yang diijinkan diakses. Seorang pengguna
tidak mencoba-coba masuk ke direktori yang tidak diperkenankan (istilah yang
umum digunakan adalah “directory traversal”).
·
Identitas
pengguna benar. Banyak situs web yang membatasi akses kepada user-user
tertentu. Dalam hal ini, jika seorang pengguna “login” ke web, maka dia
adalah pengguna yang benar.
Asumsi kedua belah pihak:
·
Jaringan
komputer (network) dan komputer bebas dari penyadapan pihak ketiga.
·
Informasi
yang disampaikan dari server ke pengguna (dan sebaliknya) terjamin keutuhannya
dan tidak dimodifikasi oleh pihak ketiga yang tidak berhak.
Asumsi-asumsi di atas bisa
dilanggar sehingga mengakibatkan adanya
masalah
keamanan.
Keamanan Server WWW
Keamanan server WWW biasanya
merupakan masalah dari seorang administrator. Dengan memasang server WWW di
sistem anda, maka anda membuka akses (meskipun secara terbatas) kepada orang
luar. Apabila server anda terhubung ke Internet dan memang server WWW anda disiapkan
untuk publik, maka anda harus lebih berhati-hati sebab anda membuka pintu akses
ke seluruh dunia!
Server WWW menyediakan fasilitas
agar client dari tempat lain dapat mengambil informasi dalam bentuk berkas
(file), atau mengeksekusi perintah (menjalankan program) di server. Fasilitas
pengambilan berkas
dilakukan dengan perintah “GET”,
sementara mekanisme untuk mengeksekusi perintah di server dapat dilakukan
dengan “CGI” (Common Gateway Interface), Server Side Include (SSI), Active Server
Page (ASP).
Adanya lubang keamanan di sistem
WWW dapat dieksploitasi dalam bentuk yang beragam, antara lain:
·
informasi
yang ditampilkan di server diubah sehingga dapat mempermalukan perusahaan atau
organisasi anda .
·
informasi
yang semestinya dikonsumsi untuk kalangan terbatas (misalnya laporan keuangan,
strategi perusahaan anda, atau database client anda) ternyata berhasil disadap
oleh saingan anda (ini mungkin disebabkan salah setup server, salah setup
router / firewall, atau salah setup authentication);
·
informasi
dapat disadap (seperti misalnya pengiriman nomor kartu kredit untuk membeli
melalui WWW, atau orang yang memonitor kemana saja anda melakukan web
surfing);
·
server
anda diserang (misalnya dengan memberikan request secara bertubi-tubi)
sehingga tidak bisa memberikan layanan ketika dibutuhkan (denial of service
attack);
·
untuk
server web yang berada di belakang firewall, lubang keamanan di server web yang
dieksploitasi dapat melemahkan atau bahkan menghilangkan fungsi dari firewall
(dengan mekanisme tunneling).
Membatasi akses melalui Kontrol
Akses
Sebagai penyedia informasi (dalam
bentuk berkas-berkas), sering diinginkan pembatasan akses. Misalnya, diinginkan
agar hanya orang-orang tertentu yang dapat mengakses berkas (informasi)
tertentu. Pada prinsipnya ini adalah masalah kontrol akses. Pembatasan akses
dapat dilakukan
dengan:
• membatasi domain atau nomor IP
yang dapat mengakses;
• menggunakan pasangan userid &
password;
• mengenkripsi data sehingga hanya
dapat dibuka (dekripsi) oleh orang
yang
memiliki kunci pembuka.
Secure Socket Layer
Salah satu cara untuk
meningkatkan keamanan server WWW adalah dengan menggunakan enkripsi pada
komunikasi pada tingkat socket. Dengan menggunakan enkripsi, orang tidak bisa
menyadap data-data (transaksi)
yang dikirimkan dari/ke server
WWW. Salah satu mekanisme yang cukup populer adalah dengan menggunakan Secure
Socket Layer (SSL) yang mulanya dikembangkan oleh Netscape.Selain
server WWW dari Netscape, beberapa server lain juga memilikifasilitas SSL juga.
Mengetahui Jenis Server
Informasi tentang web server yang
digunakan dapat dimanfaatkan oleh perusak untuk melancarkan serangan sesuai
dengan tipe server dan operating system yang digunakan. Seorang penyerang akan
mencari tahu software dan versinya yang digunakan sebagai web server, kemudian mencari
informasi di Internet tentang kelemahan web server tersebut. Informasi tentang
program server yang digunakan sangat mudah diperoleh.
Cara yang paling mudah adalah
dengan menggunakan program “telnet” dengan melakukan telnet ke port 80 dari
server web tersebut, kemudian menekan tombol return dua kali. Web server akan
mengirimkan respon dengan didahuli oleh informasi tentang server yang
digunakan. Program Ogre (yang berjalan di sistem Windows) dapat
mengetahui program server web yang digunakan. Sementara itu, untuk sistem UNIX,
program lynx dapat digunakan untuk melihat jenis server dengan menekan
kunci “sama
dengan” (=).
Keamanan Program CGI
Common Gateway Interface (CGI)
digunakan untuk menghubungkan sistem WWW dengan software lain di server web.
Adanya CGI memungkinkan hubungan interaktif antara user dan server web.
CGI seringkali digunakan sebagai
mekanisme untuk mendapatkan informasi dari user melalui “fill out form”,
mengakses database, atau menghasilkan halaman yang dinamis.
Potensi lubang keamanan yang dapat terjadi
dengan CGI antara lain:
·
Seorang
pemakai yang nakal dapat memasang skrip CGI sehingga dapat mengirimkan berkas
password kepada pengunjung yang mengeksekusi CGI tersebut.
·
Program
CGI dipanggil berkali-kali sehingga server menjadi terbebani karena harus
menjalankan beberapa program CGI yang menghabiskan memori dan CPU cycle dari
web server.
·
Program
CGI yang salah konfigurasi sehingga memiliki otoritas seperti sistem
administrator sehingga ketika dijalankan dapat melakukan perintah apa saja.
Untuk sistem UNIX, ada saja administrator yang salah seting sehingga server web
(httpd) dijalankan oleh root.
·
CGI
guestbook yang secara otomatis menambahkan informasi ke dalam halaman web
seringkali disalahgunakan oleh orang yang nakal dengan mengisikan link ke
halaman pornografi atau diisi dengan sampah (junk text) sehingga memenuhi disk
pemilik web.
·
Teks
(informasi) yang dikirimkan ke CGI diisi dengan karakter tertentu dengan tujuan
untuk merusak sistem. Sebagai contoh, banyak search engine yang tidak melakukan
proses “sanitasi” terhadap karakter yang dituliskan oleh user.
Keamanan client WWW
Keamanan di sisi client biasanya
berhubungan dengan masalah privacy dan penyisipan virus atau trojan
horse.
Pelanggaran Privacy
Ketika kita mengunjungi sebuah
situs web, browser kita dapat dititipi sebuah “cookie” yang fungsinya
adalah untuk menandai kita. Ketika kita berkunjung ke server itu kembali, maka
server dapat mengetahui bahwa kita kembali dan server dapat memberikan setup
sesuai dengan keinginan (preference) kita. Ini merupakan servis yang
baik. Namun data-data yang sama juga dapat digunakan untuk melakukan tracking
kemana saja kita pergi.
Ada juga situs web yang
mengirimkan script (misal Javascript) yang melakukan interogasi terhadap server
kita (melalui browser) dan mengirimkan informasi ini ke server. Bayangkan jika
di dalam computer kita terdapat data-data yang bersifat rahasia dan informasi
ini dikirimkan ke server milik orang lain.
Penyisipan Trojan Horse
Cara penyerangan terhadap client
yang lain adalah dengan menyisipkan virus atau trojan horse. Bayangkan apabila
yang anda download adalah virus atau trojan horse yang dapat menghapus isi
harddisk anda. Salah satu contoh yang sudah terjadi adalah adanya web yang
menyisipkan Trojan horse Back Orifice (BO) atau Netbus sehingga komputer anda
dapat dikendalikan dari jarak jauh.
Tidak ada komentar:
Posting Komentar