Senin, 21 Oktober 2013

Tips Tentang Pertahanan Website

Kali ini Saya akan Share tentang pertahanan Sebuah website yang ane kutip dari suatu situs.

Sebagai seorang admin diwebsite masing-masing, tentunya kita harus memiliki sedikit pengetahuan tentang pertahanan website. Ada beberapa hal yang harus dilakukan untuk melakukan "pencegahan" terhadap website kita, supaya website kita tidak dirusak oleh tangan-tangan yg tidak bertanggung jawab. Ingat! tips ini hanya pencegahan. "Lebih baik mencegah, dari pada mengobati", karena yang namanya penyakit itu pasti akan ada entah kapan datangnya, begitu juga dengan celah keamanan.

Berikut adalah berapa tips yang bisa anda lakukan :

1. Buat File .htaccess untuk pencegahan direktori sensitif yang tidak memiliki index.php Suatu website yang tidak memiliki protect terhadap direktori (folder), pastinya dapat dibuka dan dijelajahi oleh orang lain. Untuk mencegah terjadinya browsing file secara Cuma-Cuma, maka ikutilah langkah berikut.

Caranya:
- buka notepad
- isi script .htaccess berikut
Options All –Indexes
- kemudian save dengan nama .htaccess
- setelah itu taruh di folder www/htdocs website anda
Penjelasan: File .htaccess tersebut secara otomatis akan "mem-forbidden" direktori2 yg tidak memiliki index

2. Buat file .htaccess untuk pencegahan "file sensitif" seperti konfigurasi database File konfigurasi database adalah file yang sangat rentan dianiaya oleh cracker. Karena file tersebut berisi konfigurasi database seperti: username mysql, password mysql, hostname mysql, dan nama database mysql yang digunakan diwebsite kita. Maka untuk mencegah orang yang tidak berwenang dapat melakukan akses langsung ke suatu file terutama file konfigurasi database, diperlukan pemrotect kan terhadap file tersebut. Salah satunya dengan cara memberikan perintah deny access didalam file .htaccess

Caranya:
- Buka Notepad
- Isi script .htaccess berikut:
<files filekonfigurasidatabase.php>
Order deny,allow
deny from all
</files>
- save dengan nama .htaccess
- kemudian taruh didalam folder tempat anda menyimpan file konfigurasi database anda.

Penjelasan: Script diatas berguna untuk melakukan forbidden access terhadap file filekonfigurasidatabase.php, filekonfigurasidatabase.php adalah "contoh" file konfigurasi database. Misalnya jika file konfigurasi database anda bernama wp-config.php, maka gantilah filekonfigurasidatabase.php dengan wp-config.php. Mudeng? Atau Mumet? =)) wkwkwk

3. Ubah CHMOD file yang kalian anggap sensitif menjadi 400

Jika kalian memiliki file yg dianggap sensitif untuk website seperti file konfigurasi database, maka diwajibkan untuk mengubah permission file tersebut menjadi 400. Artinya user hanya berhak "read" atau membaca dan tidak bisa write atau excecute

Caranya:
- masuk ke cpanel anda
- masuk ke document root website anda contoh: www/htdocs
- ubah CHMOD pada file yg kalian anggap sensitif menjadi 400

NB: Tidak semua web server mendukung penggunaan CHMOD 400, maka dari itu, jika setelah kalian melakukan pengubahan CHMOD menjadi 400, disarankan mengubahnya kembali ke 644 atau 755 agar web server dapat membaca

4. Ubah nama direktori halaman admin menjadi nama yang unik
Halaman admin adalah halaman yg digunakan untuk memanajemen konten website, untuk itu jika ada orang yang nakal dan berniat jahat masuk ke halaman itu dan berhasil membobolnya, maka ya suram =))
Maka dari itu berilah nama yang unik seperti:
- w4ria-ke5a5ar
- m@ho333
- z41k1nn3h
- dll,

NB: Biasanya para cracker yang telah berhasil mendapatkan username dan password untuk login admin, mereka akan melakukan pencarian halaman admin dengan cara bruteforce (maen tebakan).Makanya, bagi yang memiliki halaman admin dengan nama yg default seperti: admin, admincp, user, login, member, webadmin, adminpanel, dll disarankan untuk mengubahnya sebelum dijamah orang yang tidak bertanggung jawab :))

5. Berikan password login admin yang kuat Berikan password yang kuat untuk login ke halaman admin, minimal 10 karakter, atau 6 karakter dengan perpaduan angka, huruf, dan karakter seperti: @^%* dll Dan jangan lupa ubah password default anda seperti: admin, admin123, qwerty, dll. karena biasanya, para bruteforcer yang suka menebak2 password, akan membabi buta jika sudah berhasil membobolnya.

6. Khusus website yang dicoding sendiri, berikan encryption yang kuat untuk password login.
Jika kalian memiliki website yang dibuat murni hasil tangan sendiri, buatlah encryption yang kuat untuk login ke administrator website. Jika tidak, maka sudah pasti password kalian bisa di decrypt oleh sang biskuit cracker.

Contoh peng-enkripsian :
- menggunakan random encryption, mysql_escape_string, dan perpaduan antara md5, sha1.
- isi script berikut dengan nama buatpassword.php
- kemudian jalankan di localhost, dan coba decrypt di http://hashchecker.de
<?php
 // Isi username dan password biasa
$user_admin = "zayikin";
$pass_admin = "guegantengsekali";
// Random encryption
$random = "ASDFGHJKL:ZXCVBNMQWERTYUIOP123:32OFISD0SDGSDHX0X0BKXLBN0B9KLWE
G09S:DJVKXLXVPNWLFLDSCPOX:KNVEWGT3029023WKF";

// buat encrypt dengan perpaduan md5 dan sha1
 $hell = md5(sha1($random));
 $sha1 = sha1($oass_admin);
$md5 = md5($pass_admin);
// gabungkan
$user_admin2 = mysql_real_escape_string($user_admin);
$pass_admin2 = mysql_real_escape_string(md5(sha1($random . $md5 . $hell. $sha1 . $random)));
// tampilkan
echo " username anda: <b> $user_admin2</b><br />
password anda: <b>$pass_admin2</b> ";
?>

Kemudian coba anda jalankan di localhost, lalu coba decrypt passwordnya di hashchecker.de. jika not found, berarti anda telah berhasil mengelabuhi dan menyurami situs decryptor tersebut :)) Oke, sekian dulu yak.. semoga bermanfaat. Kalo ada kata2 yang kurang berkenan, ane mohon ngapuro yang sedalam2nya Sesungguhnya tips yang saya berikan hanya untuk himbauan semata.

Sumber : http://miniw0rm.us

6 komentar:

  1. Hal-hal seperti ini kadang di luar pemikiran kita.
    Trus ujung-ujungnya website jadi dibajak deh..
    Keren infonya :)
    Tapi kalau web nya pake j2ee ada langkah-langkah kayak gitu juga gag yah..

    Berkunjung ke blog saya yah..

    BalasHapus
    Balasan
    1. wah klo untuk menggunakan J2ee yang blom coba :D


      terima kasih sudah berkunjung :D

      Hapus
  2. Wah, penting nih untuk diketahui oleh seorang admin website.
    tapi itu hanya berlaku di php sendiri doang kah?
    di .net berlaku juga gak mas bro? :)

    Thanks.

    BalasHapus
  3. mantap nih info nya... lumayan membantu klo kita mau lebih protect terhadap website kita :)
    mau tanya donk, diatas itu kan tips untuk mencegah.. tp kalo misalnya web kita udah terlanjur di hack, cara yang sebaiknya kita lakukan apa ya mas?

    BalasHapus
  4. silakan berkunjung ke
    http://rinnie-yanita.blogspot.com/2012/03/cara-memperbaiki-web-yang-telah-di-hack.html
    di situ di jelasin bagai mana cara mengatasi nya :D

    terima kasih sudah berkunjung

    BalasHapus

jangan lupa tinggal kan jejak .. :D