6 Tips Untuk Mengamankan Situs Web Anda

Kebanyakan orang di internet adalah orang yang baik dan jujur. Namun, ada beberapa orang yang menjelajah internet yang mendapatkan kesenangan dari mengaduk-aduk situs web dan menemukan celah keamanan. Beberapa tip sederhana dapat membantu Anda mengamankan situs web Anda dengan cara dasar. Sekarang, tentu saja, subjek keamanan data adalah topik yang rumit dan jauh di luar cakupan kolom ini. Namun, saya akan membahas dasar-dasar yang harus dilakukan yang akan meringankan banyak masalah potensial yang memungkinkan orang melihat hal-hal yang tidak seharusnya mereka lihat.


Direktori Pelindung Kata Sandi

Jika Anda memiliki direktori di server Anda yang harus tetap pribadi, jangan bergantung pada orang untuk tidak menebak nama direktori. Lebih baik untuk melindungi kata sandi folder di tingkat server. Lebih dari 50% situs web di luar sana didukung oleh server Apache, jadi mari kita lihat cara melindungi direktori dengan kata sandi di Apache.


Apache mengambil perintah konfigurasi melalui file bernama .htaccess yang berada di direktori. Perintah di .htaccess memiliki efek pada folder itu dan sub-folder mana pun, kecuali sub-folder tertentu memiliki file .htaccess sendiri di dalamnya. Untuk melindungi folder dengan kata sandi, Apache juga menggunakan file bernama .htpasswd . File ini berisi nama dan kata sandi pengguna yang diberi akses. Kata sandi dienkripsi, jadi Anda harus menggunakan program htpasswd untuk membuat kata sandi. Untuk mengaksesnya, buka baris perintah server Anda dan ketik htpasswd. Jika Anda menerima kesalahan "perintah tidak ditemukan" maka Anda perlu menghubungi admin sistem Anda. Juga, ingatlah bahwa banyak web host menyediakan cara berbasis web untuk mengamankan direktori, sehingga mereka mungkin mengatur sesuatu untuk Anda lakukan seperti itu daripada Anda sendiri. Kecuali ini, mari kita lanjutkan.


Ketik "htpasswd -c .htpasswd myusername" di mana "myusername" adalah nama pengguna yang Anda inginkan. Anda kemudian akan dimintai kata sandi. Konfirmasikan dan file akan dibuat. Anda dapat memeriksa ulang ini melalui FTP. Juga, jika file berada di dalam folder web Anda, Anda harus memindahkannya sehingga tidak dapat diakses oleh publik. Sekarang, buka atau buat file .htaccess Anda. Di dalam, termasuk yang berikut:


AuthUserFile /home/www/passwd/.htpasswd

AuthGroupFile /dev/null

AuthName "Folder Aman"

AuthType Dasar


membutuhkan pengguna yang valid

Pada baris pertama, sesuaikan jalur direktori ke mana pun file .htpasswd Anda berada. Setelah ini diatur, Anda akan mendapatkan dialog popup saat mengunjungi folder itu di situs web Anda. Anda akan diminta untuk masuk untuk melihatnya.


Matikan Daftar Direktori

Secara default, direktori apa pun di situs web Anda yang tidak memiliki file beranda yang dikenali (index.htm, index.php, default.htm, dll.) akan menampilkan daftar semua file di folder itu. Anda mungkin tidak ingin orang melihat semua yang Anda miliki di sana. Cara termudah untuk melindunginya adalah dengan membuat file kosong, beri nama index.htm, lalu unggah ke folder itu. Pilihan kedua Anda adalah, sekali lagi, menggunakan file .htaccess untuk menonaktifkan daftar direktori. Untuk melakukannya, cukup sertakan baris "Options -Indexes" dalam file. Sekarang, pengguna akan mendapatkan kesalahan 403 daripada daftar file.


Hapus File Instal

Jika Anda menginstal perangkat lunak dan skrip ke situs web Anda, seringkali mereka datang dengan skrip instalasi dan/atau peningkatan. Membiarkan ini di server Anda membuka masalah keamanan besar karena jika orang lain akrab dengan perangkat lunak itu, mereka dapat menemukan dan menjalankan skrip instalasi/peningkatan Anda dan dengan demikian mengatur ulang seluruh basis data Anda, file konfigurasi, dll. Paket perangkat lunak yang ditulis dengan baik akan memperingatkan Anda untuk menghapus item ini sebelum mengizinkan Anda menggunakan perangkat lunak. Namun, pastikan ini telah dilakukan. Hapus saja file dari server Anda.


Ikuti terus Pembaruan Keamanan

Mereka yang menjalankan paket perangkat lunak di situs web mereka harus tetap berhubungan dengan pembaruan dan peringatan keamanan yang berkaitan dengan perangkat lunak tersebut. Tidak melakukannya dapat membuat Anda terbuka lebar untuk peretas. Faktanya, sering kali lubang keamanan yang mencolok ditemukan dan dilaporkan dan ada jeda sebelum pembuat perangkat lunak dapat merilis tambalan untuk itu. Siapa pun yang cenderung dapat menemukan situs Anda menjalankan perangkat lunak dan mengeksploitasi kerentanan jika Anda tidak memutakhirkan. Saya sendiri telah dibakar oleh ini beberapa kali, seluruh forum dihancurkan dan harus memulihkan dari cadangan. Itu terjadi.


Kurangi Tingkat Pelaporan Kesalahan Anda

Berbicara terutama untuk PHP di sini karena itulah yang saya kerjakan, kesalahan dan peringatan yang dihasilkan oleh PHP, secara default, dicetak dengan informasi lengkap ke browser Anda. Masalahnya adalah kesalahan ini biasanya berisi jalur direktori lengkap ke skrip yang dimaksud. Ini memberikan terlalu banyak informasi. Untuk mengatasi hal ini, kurangi tingkat pelaporan kesalahan PHP. Anda dapat melakukan ini dengan dua cara. Salah satunya adalah menyesuaikan file php.ini Anda. Ini adalah konfigurasi utama untuk PHP di server Anda. Cari arahan error_reporting dan display_errors. Namun, jika Anda tidak memiliki akses ke file ini (banyak di shared hosting tidak), Anda juga dapat mengurangi tingkat pelaporan kesalahan menggunakan fungsi error_reporting() dari PHP. Sertakan ini dalam file global skrip Anda dengan cara itupekerjaan yang buruk di seluruh papan.


Amankan Formulir Anda

Formulir membuka lubang lebar ke server Anda untuk peretas jika Anda tidak mengkodekannya dengan benar. Karena formulir ini biasanya dikirimkan ke beberapa skrip di server Anda, terkadang dengan akses ke database Anda, formulir yang tidak memberikan perlindungan dapat menawarkan akses langsung ke semua jenis hal kepada peretas. Perlu diingat...hanya karena Anda memiliki bidang alamat dan tertulis "Alamat" di depannya tidak berarti Anda dapat mempercayai orang untuk memasukkan alamat mereka di bidang itu. Bayangkan formulir Anda tidak dikodekan dengan benar dan skrip yang dikirimkannya juga tidak. Apa yang menghentikan peretas memasukkan kueri SQL atau kode skrip ke bidang alamat itu? Dengan mengingat hal itu, berikut adalah beberapa hal yang harus dilakukan dan dicari:


Gunakan MaxLength. Bidang input dalam formulir dapat menggunakan atribut maxlength dalam HTML untuk membatasi panjang input pada formulir. Gunakan ini untuk mencegah orang memasukkan terlalu banyak data. Ini akan menghentikan kebanyakan orang. Seorang peretas dapat melewatinya, jadi Anda juga harus melindungi dari informasi yang berlebihan di tingkat skrip.


Sembunyikan Email Jika menggunakan skrip form-to-mail, jangan sertakan alamat email ke dalam formulir itu sendiri. Ini mengalahkan titik dan laba-laba spam masih dapat menemukan alamat email Anda.


Gunakan Validasi Formulir. Saya tidak akan masuk ke pelajaran pemrograman di sini, tetapi skrip apa pun yang dikirimkan formulir harus memvalidasi input yang diterima. Pastikan bahwa bidang yang diterima adalah bidang yang diharapkan. Periksa apakah data yang masuk memiliki panjang yang wajar dan diharapkan dan dalam format yang tepat (dalam hal email, telepon, ritsleting, dll.).


Hindari Injeksi SQL. Pelajaran lengkap tentang injeksi SQL dapat dicadangkan untuk artikel lain, namun dasarnya adalah bahwa input formulir diizinkan untuk dimasukkan langsung ke kueri SQL tanpa validasi dan, dengan demikian, memberi peretas kemampuan untuk mengeksekusi kueri SQL melalui formulir web Anda. Untuk menghindari hal ini, selalu periksa tipe data dari data yang masuk (angka, string, dll.), Jalankan validasi formulir yang memadai per di atas, dan tulis kueri sedemikian rupa sehingga peretas tidak dapat memasukkan apa pun ke dalam formulir yang akan membuat kueri melakukan sesuatu selain yang Anda niatkan.


Kesimpulan

Keamanan situs web adalah subjek yang agak terlibat dan jauh lebih teknis daripada ini. Namun, saya telah memberi Anda panduan dasar tentang beberapa hal mudah yang dapat Anda lakukan di situs web Anda untuk mengurangi sebagian besar ancaman terhadap situs web Anda.

Komentar

Postingan Populer