Kamis, 15 Desember 2011

Cara menjaga keamanan web

Cara-cara apa saja yang dilakukan dalam upaya menjaga keamanan situs web dari ancaman atau serangan? Jelaskan.

Jawab :
Sebenarnya keamanan dalam teknologi informasi atau secara lebih spesifik lagi web di internet yang menjadi penyebab ancman dan serangan adalah :
1) Hacking
2) Cyber Theft
3) Unauthorized Use at work
4) Computer Viruses
5) Piracy

Di bawah ini berbagai kasus keamanan situs web yang saya ambil dari beberapa pengalaman dan informasi serta referensi :

1) Celah-celah keamanan pada apliaksi web seperti SQL Injection, XSS, RFI, LFI, Arbitary File Upload/Download, masih saja saya jumpai hingga kini. Diantaranya ada yang hingga kini masih dijadikan newbie sebagai bahan latihan. Kesalahan dalam scripting pembuatan web adalah hal terbanyak yang dimanfaatkan oleh para attacker, sehingga rata-rata web yang berhasil diserang melalui lubang ini. Kelemahan-kelemahan scripting yang ditemukan pada proses vulnerabilities scanning misalnya, XSS, SQL Injection, PHP Injection, HTML Injection, dan lain sebagainya. Begitu pula pada CMS semisal Mambo, Joomla, WordPress, dan lainnya. Dan ini memungkinkan tindakan hacking terjadi.

2) Password Salah satu hal yang sepertinya paling tidak dipedulikan keamanannya. hampir pada semua situs pemerintah masih terdapat account dengan password-password yang tidak secure: 123456, admin, administrator, depkominfo, password menggunakan kode SKPD, dan masih banyak lagi. Sepertinya kesadaran tentang keamanan masih perlu ditingkatkan. kalau tidak, maka jangan protes jika ada script kiddie yang bermain-main di area Admin dan berbuat kekacauan Banyak sekali account dengan password yang sangat tidak secure

3) Banyak developer yang lalai meninggalkan Sql Dump di directory terbuka yang mudah di crawling oleh mesin pencari sehingga Attacker dengan mudah memanfaatkan Google untuk menemukan file-file yang berisi info sensitif tersebut (username, password, etc..). Sudah semestinya file-file yang tidak dibutuhkan dihapus dari server sebelum web dipublikasikan.

Dalam upaya menjaga keamanan situs web di internet kita hendaknya melakukan hal sebagai berikut :
1) Manajemen Keamanan Situs Web

Melakukan manajemen keamanan situs web adalah serangkaian tindakan pengamanan tidak terbatas pada pembuatan atau penetapan prosedur-prosedur penggunaan/akses bagi staf atau kontraktor dalam rangka meminimalkan resiko keamanan, antara lain:

· Menjamin keutuhan dan ketersediaan konten dan infrastruktur

· Menjamin pengoperasian yang benar dan aman atas Situs Web, seperti kendali/kontrol atas server dan tidak meninggalkan sistem manajemen konten dalam keadaan tidak terjaga;

· Menjamin perlindungan keutuhan informasi elektronik dan program komputer yang digunakan;

· Mencegah kerusakan aset dan terhentinya aktifitas bisnis dan manajemen organisasi;

· Melindungi keutuhan dan kerahasiaan data/informasi baik yang dikirimkan via situs maupun yang tersimpan dalam infrastruktur Situs Web.

2) Standar Sistem Keamanan

a. Keberadaan sistem keamanan setidaknya memperhatikan beberapa aspek antara lain sebagai berikut;

a) Aspek Fisik dan Lingkungan Keamanan, yang mencakup proteksi perangkat dan informasi dari kerusakan fisik dengan cara mengontrol akses terhadap informasi dan perangkat, termasuk penentuan lokasi dan pengenalan siapa saja yang terkoneksi kedalam sistem.
b) Aspek Manajemen Operasi dan Komunikasi serta Manajemen Keberlanjutan Bisnis yang meliputi antara lain:

· manajemen/tata kelola yang semestinya dan pengoperasian yang aman terhadap fasilitas pengolahan informasi selama dilakukannya kegiatan harian dan menjaga sedapat mungkin agar aktivitas bisnis atau penyelenggaraan layanan publik tidak terhenti sekiranya terjadinya gangguan atau kerusakan terhadap sistem.

· Pembagian dan/atau pemisahan tugas dan kewenangan, dan

· Pemantau ketersediaan baik performa maupun kapasitasnya, serta keakuratan dan kemutakhiran data, dan kerahasiaannya.

c) Aspek Teknis: Standar teknis keamanan paling tidak memperhatikan 3 tingkatan pertahanan yakni:

· Tingkatan Sistem Operasi (OS Level);

· Tingkatan Web Server,

· Tingkatan Aplikasi Web (Web Aplication Level).

d) Aspek Legal: Desain dan Penyelenggaraan Situs Web serta pengadaan komponen-komponen dari Situs Web harus diperoleh dan diselenggarakan secara sah.. Para Administrator atau Penyelenggara Situs Web diharapkan berkonsultasi dan/atau berkoordinasi dengan ahli hukum baik inhouse ataupun professional untuk meminta opini hukum agar penyimpanan informasi yang sensitif dan data personal milik seseorang tidak salah secara hukum. Pada prinsipnya hukum melindungi kerahasiaan informasi yang sensitif dan informasi individual, yang mencakup tidak hanya tindakan perolehan dan penggunaan saja melainkan juga bagaimana kewajiban standar penyimpanan ataupun pengumuman informasi kepada pihak ketiga. Pada intinya, hukum akan melihat apakah perolehan informasi telah dilakukan secara sah (lawful obtained) dan penanganannya sebagaimana-mestinya (treated fairly). Terhadap perolehan dan penggunaan data personal yang tidak sebagaimana mestinya akan menuai gugatan si pemilik
informasi dan kemungkinan ancaman pidana.

b. Akses Kontrol: Mengendalikan akses kedalam informasi dan sistem informasi berdasarkan kebutuhan aktifitas bisnis dan keamanan, menentukan siapa-siapa saja yang berhak mengakses (3rd party, sys admin, content author), dan Proses Pemantauan dan Pengkajian Kembali terhadap Akses secara berkala.

c. Keamanan situs ditentukan oleh konfigurasi yang benar dan aman, antara lain sebagai berikut:

· Penentuan Aplikasi web server yang sesuai dengan interoprabilitas atau kompatibilitas sistem yang telah ada

· Penentuan Sistem operasi komputer dari web server;

· Penataan Jaringan Komputer Lokal dari web server;

· Sistem aplikasi pendukung yang berada di dalam web server

· Otorisasi nama domain dari jaringan web server;

· Kendali akses jarak jauh terhadap web-server (Remote web server) seperti penggunaan FTP dan server extensions lainnya;

· Keamanan fisik dan personel;

· Verifikasi regular terhadap kehandalan sistem.

3) Beberapa Langkah-Langkah Umum Yang Dapat Direkomendasikan dalam menjaga dan berupaya memberikan pengamanan pada web di internet

· Buat dan tetapkan kebijakan pengamanan dengan jelas (SOP)

· Sebaiknya gunakan satu komputer khusus untuk setiap fungsi server secara spesifik dan dedicated (contoh: account server, web-server, database-server, email server, dll.) dan tempatkan pada wilayah yang aman (contoh: Demilitered Zone/DMZ ).

· Lakukan konfigurasi sistem jaringan dengan benar dan aman.

· Mutakhirkan sistem operasi dan komponen-komponennya secara berkala sesuai jaminan dukungan produk (support product) dari vendor dan senantiasa melakukan instalasi program pelengkap terakhir

· Membersihkan informasi-informasi yang merupakan sampah dan/atau informasi yang sudah melampaui masa retensi

· Membuat sistem pengaman (firewall) untuk jaringan komputer, dan Intrusion Prevention Sistem (IPS), Web Application Firewall.

· Pembatasan script yang dapat ditampilkan pada program penelusur (browser)

· Lakukan pendidikan dan pelatihan kepada staf yang ditugaskan dan bertanggung jawab

· Membagi tugas-tugas pekerjaan dari beberapa server

· Membuat sistem pencatatan pengaman (log files) agar dapat mendeteksi penyusupan

· Menjaga keotentikan data

· Menjaga asset dan manajemen

· Menjaga kelancaran aktifitas layanan publik meskipun sistem tidak berfungsi (down)

· Mengingatkan pengguna untuk minimum menggunakan 6 alphanumeric sebagai password dan diubah secara berkala

· Pastikan hanya orang-orang tertentu sesuai dengan kewenangannya yang dapat mengakses server dan mereka memiliki privilege yang penting untuk menjalankan tugas-tugas mereka

· Tempatkan pengaman (firewall) diantara web server dengan Internet untuk memblokade traffic yang tidak diharapkan

· Pantau terus security bulletins yang terkait dengan Sistem Operasi yang anda gunakan

· Pastikan anda telah mengklasifikasi informasi yang sensitif untuk organisasi anda dan buatlah bahwa informasi tersebut tetap tidak akan tertampil meskipun ada kesalahan ataupun kegagalan sistem.

· Kunci nama domain untuk mencegah pembajakan nama domain oleh pihak ketiga

· Gunakan server yang terpisah dalam menjalankan HTTPS protokol dimana informasi personal ditransmisikan dan yakinkan bahwa nama server sesuai dengan sertifika SSL yang digunakan

· Implementasikan sistem pendeteksi penyusupan (intrusion detection sistem) yang secara aktif memonitor setiap tindakan penggunaan dan mengidentifikasi upaya-upaya penerobosan sistem keamanan.

· Lindungi semua potensi atau celah kelemahan sistem dengan cara meng-update paket antivirus yang anda gunakan secara berkala.

· Gunakan fitur image confirmation untuk melengkapi kode akses guna menghindari upaya penelusuran password.

4) Beberapa Langkah-langkah Pelengkap Keamanan Yang Direkomendasikan

· Pada dasarnya setiap program komputer menyimpan potensi kesalahan pemrograman (bug) yang baru akan diketahui dibelakang hari. Umumnya setiap vendor akan selalu memperbaiki sistemnya berdasarkan komentar dan/atau temuan permasalahan dari penggunanya dan mereka telah mempersiapkan paket-paket program yang menyempurnakan kelemahan tersebut (patches). Upayakan untuk selalu mengupdate paket-paket perbaikan tersebut secara berkala, ikuti cara instalasinya dan perhatikan baik-baik kelemahan apa yang telah ditutup dengan keberadaan paket tersebut dengan patch-patch.

· Pada saat melakukan konfigurasi pada web server, yakinkan bahwa pengaturan terhadap kendali akses (akses kontrols) telah disiapkan secara baik untuk semua direktori termasuk root direktori dari web, antara lain Pastikan bahwa struktur direktori web hanya dapat dimodifikasi oleh web-server administrator Akses kepada halaman web hanya diperkenankan untuk membaca informasi sebagaimana adanya, meskipun pengguna web mungkin akan meminta izin untuk memasukkan scripts atau program agar informasi yang dimintanya menjadi lebih dinamis

· Pengguna Web tidak dapat melihat daftar direktori dalam web-server

· Jangan berikan akses bagi pengguna untuk melihat konfigurasi file dalam web-server

· Tidak ada level yang lebih tinggi dari administrator dan tidak ada struktur direktori diatas root dalam struktur direktori dari web-server

· Hindarkan semua konten yang tidak perlu, dan jangan aktifkan program atau mekanisme yang tidak diperlukan

· Hapus semua halaman yang salah karena akan menampilkan informasi yang tidak patut

· Terkait dengan akses kontrol dan privilege, jangan buat akses kontrol melebihi kewenangan atau hak privilege kepada pengguna web karena akan dapat disalahgunakan.

· Terkait dengan sistem pencatatan akses (Logging), perlu diperhatikan sebagai berikut:

Aktifkan sistem pencatatan kegiatan akses (log) pada web-server yang dapat melihat aktivitas-aktivitas yang dilakukan pengguna dan melihat upaya-upaya untuk menjalan suatu script yang tidak ada pada web-server. Log harus dapat menampilkan informasi tentang koneksi yang dilakukan kepada web-server, kewenangan pengguna, tampilan pesan kesalahan, dan informasi yang lain yang dapat dipergunakan untuk melakukan penelusuran sekiranya terjadi akses illegal.

Logs harus secara otomatis menyimpan dan mengupdate datanya dan mengirimkan data tersebut kepada central management server. Hal ini dapat membuat tambahan pekerjaan bagi para penyelusup untuk menghilangkan data tersebut pada lokal log files.

Sistem pencatatan akses akan lebih baik jika dilengkapi sistem pendeteksi gangguan penyusupan (Intrusion Detection Sistem).

· Intrusion Prevention Sistem Untuk mencegah gangguan terhadap web server, dapat digunakan perangkat tambahan antara lain sebagai berikut :

a) Firewall

b) IPS (Intrusion Prevention System)

c) Web aplication firewall

d) Digital Certificate

f. Terkait dengan Scripts and fungsi ekstensi Server, perlu diperhatikan beberapa langkah berikut:

· Hapus semua contoh scripts yang terpasang pada server;

· Non-aktifkan semua fitur tambahan yang mengakibatkan suatu script dapat dijalankan kecuali apabila hal tersebut memang dibutuhkan

· Jangan menggunakan perintah level sistem operasi pada webserver ;

· Periksa semua script yang digunakan pada web-server, pastikan bahwa input hanya untuk tipe yang diharapkan dan panjang data yang sesuai, selain itu hanya menampilkan pesan error. Harus juga diperhatikan bahwa spesial karakter dan nilai kosong diperlakukan secara layak. Jangan dimungkinkan pengguna dapat keluar dari perintah dalam level sistem operasi shell.

· Sebaiknya simpan semua scripts dalam direktori yang sama dan jangan diperkenankan untuk menjalankan script yang berada di luar direktori ini.

Tidak ada komentar: