World Wide Web merupakan sekumpulan dokumen multimedia yang saling terkoneksi,
yang memudahkan perpindahan dari dokumen satu ke dokumen lainnya. Pada dasarnya
suatu web, situs, atau homepage adalah bagian dari www. Untuk menampilkan WWW,
kita membutuhkan web browser seperti internet explorer atau mozzilla firefox.
WWW bekerja dengan menggunakan teknologi yang disebut hypertext. Teknologi ini
kemudian dikembangkan menjadi protokol aplikasi bernama hypertext transfer
protocol (HTTP). Hypertext ini akan menggabungkan beberapa jenis representasi
dan metode pengaksesan informasi dan menyajikan dalam beragam bentuk informasi
seperti teks, suara, animasi, video dan lain sebagainya.
KEAMANAN SISTEM WORLD WIDE WEB
Keamanan server WWW biasanya merupakan masalah dari seorang administrator.
Dengan memasang server WWW di system kita, maka kita membuka akses (meskipun
secara terbatas) kepada orang luar. Apabila server kita terhubung ke Internet
dan memang server WWW kita disiapkan untuk publik, maka anda harus lebih
berhati-hati sebab anda membuka pintu akses ke seluruh dunia.
Sebagai penyedia informasi (dalam bentuk berkas-berkas), sering diinginkan
pembatasan akses. Misalnya, diinginkan agar hanya orang-orang tertentu yang
dapat mengakses berkas (informasi). Berikut adalah beberapa cara menjaga
keamanan World Wide Web(WWW):
1.
MEMBATASI AKSES (Access Control)
a. Hanya
IP tertentu yang dapat mengakses server
(konfigurasi web server atau firewall)
b.
Via userid & password (htaccess)
c.
Menggunakan enkripsi untuk menyandikan data-data
2.Secure Socket Layer (SSL)
SSL merupakan salah satu metode
enkripsi dalam komunikasi data yang dibuat oleh Netscape Communication
Corporation. Sebagaimana yang dijelaskan dalam SSL Protocol Internet Draft (The
SSL Protocol, Version 3.0 oleh ALAN O. FREIER dan PAUL C. KOCHER, dapat Anda
buka di http://home.netscape.com/eng/ssl3/ssl-toc.html.
SSL adalah Protokol berlapis. Dalam tiap lapisannya, sebuah data terdiri dari
panjang, deskripsi dan isi. SSL mengambil data untuk dikirimkan, dipecahkan
kedalam blok-blok yang teratur, kemudian dikompres jika perlu, menerapkan MAC,
dienkripsi, dan hasilnya dikirimkan. Di tempat tujuan, data didekripsi,
verifikasi, dekompres, dan disusun kembali. Hasilnya dikirimkan ke klien di
atasnya. (terjemahan bebas).
SSL hanya mengenkripsikan data yang dikirim lewat http. Bagaimana SSL berjalan
dapat digambarkan sebagai berikut :
• Pada saat koneksi mulai berjalan, klien dan server membuat dan mempertukarkan
kunci rahasia, yang dipergunakan untuk mengenkripsi data yang akan
dikomunikasikan. Meskipun sesi antara klien dan server diintip pihak lain,
namun data yang terlihat sulit untuk dibaca karena sudah dienkripsi.
• SSL mendukung kriptografi public key, sehingga server dapat melakukan
autentikasi dengan metode yang sudah dikenal umum seperti RSA dan Digital
Signature Standard (DSS).
• SSL dapat melakukan verifikasi integritas sesi yang sedang berjalan dengan
menggunakan algoritma digest seperti MD5 dan SHA. Hal ini menghindarkan
pembajakan suatu sesi.
3.Sistem Keamanan Firewall
Sistem keamanan firewall banyak diaplikasikan. Firewall dirancang untuk menjaga
sistem dari akses luar Firewall dapat diimplementasikan dalam hardware,
software, atau gabungan keduanya. Firewall khususnya banyak dipakai dalam jaringan
Internet, yaitu akses jaringan pribadi yang terhubung Internet, khususnya
Intranet.Sebuah perusahaan dengan Intranet dan akses Internet biasanya
menginstal firewall untuk menjaga data dari penyalahgunaan pihak luar. Semua
pesan yang masuk dan keluar intranet melewati firewall akan memeriksa setiap
pesan yang tidak sesuai dengan criteria keamanan sistem. Adapun beberapa teknik
firewall :
• Packet Filter
Setiap paket yang masuk dan keluar jaringan akan diterima atau ditolak berdasar
aturan yang telah dibuat. Penyaringan paket ini cukup efektif dan transparan,
tetapi susunannya sangatlah kompleks
• Application Gateway
Menggunakan mekanisme keamanan untuk aplikasi tertentu seperti FTP dan Telnet
server. Teknik ini sangat efektif, tetapi dapat menurunan kinerja jaringan atau
komputer
• Cirucuit Level Gateway
Menggunakan mekanisme keamanan ketika koneksi Transmission Control Protocol
(TCP) atau
User Datagram Protocol (UDP) dilakukan. Begitu tersambung, paket melewati host
tanpa pengecekan lebih lanjut.
• Proxy Server
Teknik ini menangkap semua pesan yang keluar dan masuk jaringan. Proxy server
menyembunyikan alamat jaringan sebenarnya. Dalam prakteknya, firewall
diimplementasikan menggunakan beberapa teknik sekaligus.
• Sales and E-commerce/ E-business
Merupakan kegiatan perdagangan, mulai dari pemasaran, penjualan, promosi,
transfer uang, yang dilakukan via Internet. Namun masalah keamanan dalam
melakukan transaksi di Internet harus diperhatikan. Metode pembayaran yang
lebih aman saat ini sedang dikembangkan untuk menghindari kerugian yang lebih
besar.
• Montly Phyton and Privasi
Monthy Phyton fans atau lebih dikenal dengan spamming. Spam merupakan praktek
pengiriman pesan komersial atau iklan kepada sejumlah group atau email yang
bisa dibilang tidak sah. Spamming mengkibatkan terhambatnya arus informasi, dan
masalah ini telah mendorong pengembangan program cancelbots. Program ini
berfungsi menghapus pesan spam secara otomatis.Isu privasi juga menjadi
perhatian utama dalam sistem internet, sebab tiap orang bebas mengunjungi situs
di internet dan dapat mendeteksi kegiatan kita. Dengan spyware misalnya,tiap
situs yang kita kunjungi dapat dideteksi oleh sipengirim spyware itu.Program
privasi seperti anonymous browser, yang dapat memilih pilihan membajak sesuai keinginan
kita. Anonymous memungkinkan seseorang untuk mendownload file dari server.
Pengguna tanpa account dapat mengakses file-file dengan tanpa memasukan
username dan memakai alamat e-mail sebagai password. Karena setiap orang dapat
mengakses file yang diset untuk anonymous, maka webmaster harus selalu
berhati-hati menaruh file untuk konsumsi umum.
4. CGI
Arti istilah Common Gateway Interface (CGI) dianggap berkaitan erat dengan
pengertian berikut :
Disingkat CGI. Penghubung berbagai aplikasi ke halalaman web. Teknologi ini
sangat berjasa terciptanya interaktifitas di dalam sebuah website saat itu.
Perl dan C adalah script pemrograman yang dipakai para ilmuwan dan
mahasiswa-mahasiswa muda yang terlibat dalam web programming untuk membangun
CGI. Sekumpulan aturan yang mengarahkan bagaimana sebuah server web
berkomunikasi dengan sebagian software dalam mesin yang sama dan bagaimana
sebagian dari software (CGI Program) berkomunikasi dengan server web. Setiap
software dapat menjadi sebuah program CGI apabila software tersebut dapat
menangani input dan output berdasarkan standar CGI.
Contoh penggunaan CGI antara lain:
• Memroses formulir (FORM)
• Interface antara WWW dengan program lain (seperti finger, who dan servis lain
di sistem UNIX).
• Menjalankan atau mengaktifkan program di server WWW
• Membuat keluaran (halaman HTML) secara dinamik (on-the fly)
Bahasa pemrograman yang digunakan untuk CGI bisa bermacam-macam (semua bahasa
pemrograman), mulai dari perl, sh, C, C++, tcl, Python, Java, dan masih banyak
lainnya. Bahasa perl, dalam bentuk perl-script, memang paling sering digunakan
karena kemampuannya dalam memroses teks (string). Karena CGI sering
diimplementasikan dalam bentk script, sering kali CGI yang dibuat disebut
CGI-script.
Keamanan pada CGI
CGI dapat menimbulkan lubang keamanan, karena program CGI dapat dijalankan di
server lokal dari luar sistem (remote) oleh siapa saja. Apabila program CGI
tidak didisain dan dikonfigurasi dengan baik, maka akan terjadi lubang
keamanan. Kesalahan yang dapat terjadi antara lain:
• program CGI mengakses berkas (file) yang seharusnya tidak boleh di akses.
Misalnya pernah terjadi kesalahan dalam program phf sehingga digunakan oleh
orang untuk mengakses berkas password dari server WW.
• runaway CGI-script, yaitu program berjalan di luar kontrol sehingga
mengabiskan CPU cycle dari server WWW
Lubang Keamanan CGI
Beberapa contoh lubang keamanan pada CGI
-CGI dipasang oleh orang yang tidak berhak
-CGI dijalankan berulang-ulang untuk menghabiskan resources (CPU, disk): DoS
-Masalah setuid CGI di sistem UNIX, dimana CGI dijalankan oleh userid web
server
-Penyisipan karakter khusus untuk shell expansion
-Kelemahan ASP di sistem Windows
-Guestbook abuse dengan informasi sampah (pornografi)
-Akses ke database melalui perintah SQL (SQL injection).
5.Keamanan Client WWW
Pada bagian terdahulu dibahas masalah yang berhubungan dengan server WWW. Dalam
bagian ini akan dibahas masalah-masalah yang berhubungan dengan keamanan client
WWW, yaitu pemakai (pengunjung) biasa. Keamanan di sisi client biasanya
berhubungan dengan masalah privasi dan penyisipan virus atau Trojan.
Pelanggaran Privasi. 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, server dapat mengetahui bahwa kita
kembali dan server dapat memberikan layanan 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 (missal Javascript) yang melakukan interogasi
terhadap server kita (melalui browser) dan mengirimkan informasi ini ke server.
Bayangkan jika di dalam komputer kita terdapat data-data yang bersifat rahasia
dan informasi ini dikirimkan ke server milik orang lain.
Penyisipan Trojan Horse. Cara ini merupakan penyerangan terhadap client yang
lain dengan menyisipkan virus atau Trojan horse. Bayangkan apabila yang Anda
download adalah virus atau Trojan yang dapat menghapus isi harddisk Anda. Salah
satu contoh yang sudah terjadi adalah adanya web yang menyisipkan Trojan
BackOrifice (BO) atau Netbus sehingga komputer Anda dapat dikendalikan dari
jarak jauh. Dari jarak jauh orang dapat menyadap apa yang Anda ketikkan,
melihat isi direktori, melakukan reboot, bahkan memformat harddisk. Untuk
menghadapi sebagaian besar bahaya di Internet, paling tidak komputer kita harus
dilengkapi oleh dua hal berikut dan hal ketiga sebagai opsi untk melindungi
komputer kita serta untuk menyimpan bukti adanya serangan.
Antivirus yang diupdate secara berkala. Dapat dipilih antivirus keluaran
McAfee, Norton, Panda AntiVirus, freeware AVG Antivirus, dan AntiVir serta
masih banyak pilihan lain. Banyak sekali pertanyaan-pertanyaan yang ada yang
menanyakan manakah yang terbaik di antara antivirus yang ada di pasaran. Perlu
ditekankan bahwa semua antivirus mempunyai cara dan deteksi yang berbeda-beda,
terutama dalam mempelajari pola dari suatu varian virus baru. Saat ini banyak virus
yang dapat mengelabui antivirus dan menyembunyikan dirinya. Hal yang penting
diperhatikan dalam pemilihan dan penggunaan suatu antivirus adalah fasilitas
Update database engine dan dukungan patch. Update-lah secara berkala dari situs
antivirus yang kita gunakan. Personal Firewall yang banyak digunakan adalah
versi freeware Zone Alarm. Zone Alarm amat mudah digunakan dan cukup efektif
memonitor dan mencegah akses dari Internet ke komputer kita dan sebaliknya.
Penggunaan firewall di jaringan LAN tidak dapat menjamin amannya sistem dari
serangan, terutama serangan yang berasal dari dalam jaringan. Penggunaan
Personal Firewall saat ini menjadi keharusan
untuk dapat menyaring lebih detail paket-paket data yang akan masuk dan keluar
dari komputer kita. IDS (Intrusion Detection Sistems) merupakan software yang
mencatat (logging) penyerangan ke komputer Anda. Hal ini dapat dilakukan dengan
IDS seperti Salus, Snort, atau Black Ice Defender. Akan tetapi dalam skala
jaringan yang lebih luas penggunaan IDS biasanya menggunakan device khusus yang
berfungsi juga sebagai firewall. IDS dapat berfungsi sebagai sensor, director,
dan communication service. IDS akan memberikan peringatan secara dini jika ada
yang mencoba menyerang atau hanya sekedar men-scan port jaringan. Pada IDS
terdapat Network Security Database, Remote Monitoring and Management Sensor
(IDSMs) serta akan mengirimkan email peringatan kepada administrator jika
bahaya mengancam. IDs juga melayani komunikasi antara backbone device lain yang
semuanya menggunakan komunikasi point- to-point. Sensor akan diitempatkan di
belakang firewall. Posisi ini menguntungkan dan akan mengambarkan serangan
tersebut. Dengan ditempatkan di posisi ini maka firewall akan memonitor lalu
lintas paket yang masuk dan keluar.
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. Orang dari jarak jauh dapat menyadap apa yang
anda ketikkan, melihat isi direktori, melakukan reboot, bahkan memformat harddisk!
6. 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” (=).
Sebagai contoh serangan dengan mengubah isi halaman web,
beberapa server Web milik pemerintah Indonesia sempat menjadi target serangan
dari beberapa pengacau (dari Portugal) yang tidak suka dengan kebijaksanaan
pemerintah Indonesia dalam masalah Timor Timur. Mereka mengganti halaman muka
dari beberapa server Web milik pemerintah Indonesia dengan tulisan-tulisan anti
pemerintah Indonesia. Selain itu, beberapa server yang dapat mereka serang
diporakporandakan dan dihapus isi disknya. Beberapa server yang sempat dijebol
antara lain: server Departemen Luar Negeri, Hankam, Ipteknet, dan BPPT. Penjebolan
ini masih berlangsung terus oleh crackers yang berbeda-beda. 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.
Mekanisme untuk kontrol akses ini bergantung
kepada program yang digunakan sebagai server. Salah satu caranya akan diuraikan
pada bagian berikut.
Proteksi halaman dengan menggunakan password Salah
satu mekanisme mengatur akses adalah dengan menggunakan pasangan userid (user
identification) dan password. Untuk server Web yang berbasis Apache1, akses ke
sebuah halaman (atau sekumpulan berkas yang terletak di sebuah directory di sistem
Unix) dapat diatur dengan menggunakan berkas “.htaccess”. Sebagai contoh, isi
dari berkas tersebut dapat berupa:
AuthUserFile /home/adi/.passme
AuthGroupFile /dev/null
AuthName “Khusus untuk Tamu Adi”
AuthType Basic
require user tamu
Dalam contoh di atas, untuk mengakses direktori
tersebut dibutuhkan userid “tamu” dan password yang sama dengan entry userid
adi di berkas “/home/adi/.passme”. Ketika direktori tersebut diakses, akan
muncul sebuah pop-up window yang menanyakan userid dan password. Password di
dalam berkas “/home/adi/.passme” dapat dibuat dengan menggunakan program
“htpasswd”.
unix% htpasswd -c /home/adi/.passme budi
New password: *****