Keamanan web merupakan suatu yang mesti di usahakan ada untuk zaman sekarang, karena begitu banyak nya yindak kejahatan di dunia cyber yang tidak bisa di berantas 100%, nah sebelum masuk ke dalam pembahasan saya akan menganalogikan sedikiti tentang pembahasan kali ini.
Apakah Anda sudah menonton film “I Am Legend” di tahun 2007 lalu, yang dibintangi oleh Will Smith? Di akhir film, sang jagoan yang bernama Robert Neville terperangkap dalam sebuah ruangan tertutup. Joko Nurjadi
Sementara itu di luar ruangan, sekumpulan zombie ganas berusaha mendobrak masuk. Apakah Anda mengetahui bagaimana akhirnya?
Situasi yang dialami Robert Neville, mungkin bisa dijadikan analogi sebuah website, yang bisa jadi menghadapi serangan zombie berupa upaya-upaya pembobolan dari pihak luar. Seperti Robert Neville juga, website tersebut tidak bisa ke mana-mana, pilihan satu-satunya adalah mempertahankan diri.
KEAMANAN WEBSITE
Secara garis besar serangan terhadap website terbagi dua yakni serangan terhadap server dan serangan terhadap aplikasi web itu sendiri, untuk aplikasi web biasanya serangan terjadi jika ada bug dan kelemahan dalam pemrogramannya. Untuk menghadapi serangan pada web server anda memerlukan network/web administrator untuk konfigurasinya, mengupdate webserver atau monitor secara berkala, hal ini pernah terjadi pada teman sekampus saya, dimana website nya tidak bisa di buka, ketika di ketikan alamat websitenya yang muncul malah website ini dijual, ternyata setelah di selidiki kesalahan terjadi di webservernya, si penyerang mengubah DNS nya sehingga ownernya tidak bisa mengakses website nya, mungkin itu sekilas pengalaman tentang keamanan web yang pernah saya jumpai.
Untuk serangan yang di tujukan ke aplikasi web, ini merupakan tanggung jawab programmernya Banyak istilah hacking dan turunannya telah dihasilkan dari serangan yang terjadi pada aplikasi web, antara lain Script Injection, Cross Site Scripting (XSS), SQL Injection, Buffer Overfl ows, dan masih banyak lagi.
Disini saya akan membahas beberapa contoh serangan yang dapat terjadi pada aplikasi web dan bagaimana penanggulangannya agar dapat memaksimalkan keamanan aplikasi web.
Tentu saja, isu keamanan tidak akan beres dengan sekali kerja, seperti halnya siskamling, keamanan terus dilakukan dan tidak akan pernah berhenti.
LOGIN, JAGA USERNAME DAN PASSWORD !
Dimulai dari hal yang sederhana, tapi faktanya banyak terjadi kebobolan pada sisi ini, yakni halaman login yang mengandalkan username dan password sebagai pagar utama, kita mungkin telah banyak membaca atau mendengar tentang password yang baik, yakni terdiri dari kombinasi huruf, angka, dan karakter yang tidak mudah di tebak. Atau secara berkala mengganti passwordnya.
Tetapi tidak banyak yang menyinggung tentang username, padahal username ini merupakan pagar 1 yang yang mesti dilewati. Nah bagi oknum yang ingin masuk tanpa izin ke sebuah akun tp di telah mengetahui usernamenya maka ia telah melewati pagar keamanan 1 tadi, dan ini mempermudah dia untuk masuk ke tahap berikutnya, sebaliknya hal itu akan lebih sulit jika ia tidak mengetahui usernamenya, banyak saat ini pelaku industry keamanan menggunakan berbagai teknologi untuk security lapis pertama ini, contohny saja di website libertyreserve.com di sana telah diterapkan keyboard virtual dan penggunaan fitur Optical Character Recognition (OCR) dengan berakuisisi dengan reCAPTCHA dan akan menerapkan teknologi tersebut pada situsnya.
Jangankan halaman login untuk masuk sebagai administrator website tertentu, halaman login untuk e-mail saja disarankan tidak memberikan informasi yang dapat mengarahkan pada kesimpulan username atau password telah diisi benar. Contohnya, coba login pada website Yahoo! Mail atau Google Gmail untuk membaca e-mail , anggaplah kita memiliki username “usernamekita”, tetapi kita salah mengetikkan password. Perhatikan bahwa kita tidak mendapatkan pesan “Invalid password”, atau “Invalid username”, pesan yang diterima adalah “Invalid ID or Password” (pada Yahoo!), atau “Username and password do not match” (pada Google).
Pesan tersebut tidak menyebutkan secara tepat bagian mana yang salah ketik, apakah username (ID), atau password? “Wah... perusahaan sebesar Yahoo! dan Google tidak bisa membuatscript untuk mendeteksi apakah kesalahan terjadi pada username atau password?” Mungkin demikian yang terbsit di pikiran kita dan tentu saja hal tersebut tidak mungkin, dengan kata lain Yahoo!, Google, dan rata-rata e-mail provider lain umumnya memang sengaja menyamarkan informasi tersebut. Mungkin nagi orang awam tersebut bukan sesuatu yang krusial, tetapi kenyataannya kombinasi username dan password telah menjadi hal yang cukup serius, beberapa e-mail provider juga tidak mengizinkan kita memilih password yang sama atau mengandung kata yang terdapat pada username.
Pencegahannya cukup mudah, tidak perlu membuat script untuk mencari kesalahan login terletak pada username atau password, juga hindari penggunaan username yang umum dan mudah ditebak seperti admin, administrator, dan seterusnya.
BAHAYA INPUT KOMENTAR
Sebuah website biasanya mencoba untuk berinteraksi dengan pengunjung dengan jalan menyediakan fasilitas agar pengguna dapat mengisikan sesuatu, misalnya saja komentar, atau guest-book, atau yang lebih modern lagi, yaitu shoutbox. Sayangnya, jika website dikunjungi oleh seseorang yang iseng, maka bisa jadi sebuah script jahat dapat turut menjadi “komentar” dan ini bukan berita baik bagi admin website.
Ilustrasinya adalah sebagai berikut, saat mengisikan guest-book katakanlah pada alamat http://domainsaya.com/guestbook.php dengan komentar berikut:
Website yang aman...
Perhatikan bahwa terdapat JavaScript pada komentar tersebut. Jika komentar tersebut dapat diterima dan dieksekusi oleh website, maka setiap kali ada pengunjung yang mengaksesnya, akan tampil sebuah pesan bertuliskan “tapi bohonggg...”.
Cukup mengganggu, bukan? Tidak hanya sampai di sana, jika sebuah website telah dapat disusupi dengan cara seperti ini, maka banyak sekali kemungkinan script berbahaya yang dapat ditanamkan.
Misalkan script untuk mengalihkan website domainsaya.com ke website lain, script untuk menampilkan gambar porno (yang dapat dilakukan dengan HTML biasa) atau script untuk mengambil informasi seperti cookie. Cukup berbahaya, bukan?
Langkah pencegahannya, antara lain dengan tidak langsung mengizinkan komentar yang masuk tampil pada browser, harus melalui proses approve. Hal ini membutuhkan kerja seorang administrator yang bertugas melakukan filter komentar yang masuk dan berhak menolak komentar yang tidak diinginkan.
Walaupun tidak berarti semua website yang memberlakukan filter seperti ini berarti menyadari akan bahaya kebobolan melalui script injection ini. Karena bisa saja hal ini dilakukan dengan alasan menghindari penggunaan kata-kata tertentu.
Cara pencegahan yang lain adalah dengan menolak penulisan script atau tag HTML, dengan risiko tampilan komentar menjadi datar tanpa aksesoris karena tag-tag HTML untuk melakukan variasi huruf (bold, italic, dan lain-lain) tidak dapat digunakan.
Tetapi jika membutuhkannya, Kita dapat membuat sendiri aturan dan penulisan tag, misalnya [:bold] untuk membuat huruf menjadi bold, dan seterusnya. Tag buatan tersebut akan disubsitusikan secara otomatis dengan tag HTML sehingga tampilannya sesuai seperti yang diinginkan. Beberapa engine forum telah menggunakan metode ini.
Sekian dulu artikelnya,,capek nih mau makan dulu,,,semoga bermanfaat….
Read More......