Kamu ingin SOFTWARE penting dan gratis?. Dapatkan 50+ software windows dan Android kamu !
Kamu Di Bayar Hanya Untuk Nonton Video? Segera CEK DI SINI !

10 Tips Melindungi Situs Web Dari Hacker

بِسْــــــــــــــــمِ اﷲِالرَّحْمَنِ الرَّحِيم

Anda mungkin tidak berpikir dan sadar situs Anda memiliki sesuatu yang layak menjadi target hacked,tetapi website yang dikompromikan sepanjang waktu. Secara mayoritas pelanggaran keamanan bukanlah untuk mencuri data atau deface website Anda,melainkan hanya mencoba untuk menggunakan server Anda sebagai relay email untuk spam,atau untuk men-setup web server sementara,biasanya untuk layanan file yang bersifat ilegal. Hacking secara teratur dilakukan oleh skrip otomatis yang ditulis untuk menjelajahi Internet dalam upaya untuk mengeksploitasi masalah keamanan yang dikenal dalam perangkat lunak. Berikut adalah 10 tips untuk membantu menjaga Anda dan situs Anda online yang aman: 


1. Tetap update software Teratur
Ini mungkin terlihat bisa dipastikan untuk tetap update software Teratur,tetapi memastikan Anda menyimpan semua software up to date sangat penting dalam menjaga situs Anda agar aman. Hal ini berlaku untuk kedua sistem operasi server dan perangkat lunak apapun yang Anda mungkin berjalan di situs Web Anda seperti CMS atau forum. Ketika ada lubang keamanan yang ditemukan pada perangkat lunak,hacker yang tanggap dengan cepat untuk mencoba mengambil kesempatan tersebut dan merusak mereka. 

Jika Anda menggunakan solusi dengan layanan hosting,maka Anda tidak perlu khawatir begitu banyak tentang bagaimana menerapkan update keamanan untuk sistem operasi,karena sebagai perusahaan hosting telah berhati-hati dalam hal ini. 

Jika Anda menggunakan perangkat lunak pihak ketiga di website Anda seperti CMS atau forum,Anda harus memastikan untuk cepat menerapkan patch keamanan. Kebanyakan vendor memiliki milis atau pakan RSS yang merinci masalah keamanan. WordPress,Umbraco dan banyak CMSes lain akan memberitahukan pembaruan sistem yang tersedia ketika Anda log in. 

2. SQL injection 
Serangan injeksi SQL adalah ketika penyerang menggunakan web bentuk lapangan atau parameter URL untuk mendapatkan akses ke atau memanipulasi database Anda. Bila Anda menggunakan SQL Transact standar untuk disadari karena mudah masuknya kode jahat ke permintaan Anda yang dapat digunakan untuk mengubah tabel,dapatkan informasi dan menghapus data. Anda dapat dengan mudah mencegah hal ini dengan selalu menggunakan parameterised query,kebanyakan bahasa web memiliki fitur ini dan mudah untuk menerapkan. 

Pertimbangkan query ini: 

1. "SELECT * FROM tabel WHERE kolom = '" + parameter + "';" 

Jika penyerang mengubah parameter URL untuk lulus dalam 'or'1' = '1 ini akan menyebabkan permintaan untuk terlihat seperti ini: 

1. "SELECT * FROM tabel WHERE kolom ='' OR '1 '= '1';" 

Awal '1 'adalah sama dengan '1' ini akan memungkinkan penyerang untuk menambahkan permintaan tambahan untuk akhir pernyataan SQL yang juga akan dieksekusi. 

3. XSS 
Scripting lintas situs adalah ketika seorang penyerang mencoba untuk lolos melewati JavaScript atau kode scripting lainnya ke dalam bentuk web untuk mencoba menjalankan kode berbahaya bagi pengunjung situs Anda. Ketika membuat formulir selalulah memastikan bahwa Anda memeriksa data yang disampaikan dan encode atau menghapus HTML semua. 

4. Pesan kesalahan 
Hati-hati dengan berapa banyak informasi yang Anda berikan dalam pesan kesalahan Anda. Sebagai contoh jika Anda memiliki form login di website Anda, Anda harus berpikir tentang bahasa yang Anda gunakan untuk memberitahukan adanya kegagalan ketika mencoba login. Anda harus menggunakan pesan generik seperti "Salah username atau password " tidak ditentukan bila pengguna mendapat setengah dari hak query. Jika seorang penyerang mencoba membuat serangan brute force untuk mendapatkan username dan password dan pesan kesalahan memberikan kesempatan untuk beraksi ketika salah satu bidang itu benar maka penyerang tahu bahwa ia memiliki salah satu bidang dan dapat berkonsentrasi pada bidang lain untuk menemukan kesempurnaan pencarian. 

5. Validasi sisi server/validasi form 
Validasi harus selalu dilakukan baik di browser dan sisi server. Browser dapat menangkap kegagalan sederhana seperti bidang wajib yang kosong dan ketika Anda memasukkan teks ke dalam area angka saja. Namun ini dapat dilewati,dan Anda harus dapat memastikan bahwa Anda memeriksa untuk validasi ini dan validasi sisi server lebih,gagal untuk melakukannya dapat menyebabkan kode berbahaya atau kode scripting yang dimasukkan ke dalam database atau dapat menyebabkan hasil yang tidak diinginkan dalam situs web Anda. 

6. Sandi 
Semua orang tahu mereka harus menggunakan password yang kompleks,tapi itu tidak berarti mereka selalu lakukan. Itu sangat penting untuk menggunakan password yang kuat ke server Anda dan situs admin area,tapi sama juga penting untuk menuntut praktik/penggunaan password yang baik bagi pengguna Anda untuk melindungi keamanan account mereka. 

Kanyakan pengguna mungkin tidak melakukan seperti itu,menegaskan persyaratan password seperti minimal sekitar delapan karakter,termasuk huruf besar dan nomor akan membantu untuk melindungi informasi mereka dalam jangka panjang. Password harus selalu disimpan sebagai nilai terenkripsi. Sebaiknya menggunakan cara algoritma hashing satu seperti SHA. Dengan menggunakan metode ini berarti saat Anda mengotentikasi pengguna Anda hanya tinggal membandingkan nilai terenkripsi. Untuk keamanan tambahan itu adalah merupakan ide yang baik untuk pelengkap password,menggunakan tambahan baru per sandi. 

Dalam hal seseorang melakukan hacking dan mencuri password Anda,menggunakan password hash bisa membantu pembatasan kerusakan,sepertinya untuk mendekripsi mereka adalah tidak mungkin. Yang terbaik yang dapat dilakukan Seseorang dengan serangan kamus atau brute force attack,yang pada dasarnya adalah menebak setiap kombinasi sampai menemukan kecocokan. Bila menggunakan password tambahan maka proses cracking sejumlah besar password adalah akan lebih lambat karena setiap menebak harus hashed secara terpisah untuk setiap password + tambahan keamanan komputasi sangat bernilai. 

Untungnya,banyak CMSes yang menyediakan manajemen pengguna keluar dari kotak dengan banyak keamanan fitur built in,meskipun beberapa modul konfigurasi atau tambahan mungkin diperlukan untuk menggunakan password tambahan (pra Drupal 7) atau untuk mengatur kekuatan password minimum. Jika Anda menggunakan .NET maka layak menggunakan penyedia keanggotaan karena mereka sangat dapat dikonfigurasi,memberikan keamanan inbuilt dan termasuk kontrol readymade untuk login dan password reset. 

7. Upload file 
Memungkinkan pengguna untuk meng-upload file ke situs web Anda dapat menjadi resiko keamanan besar,bahkan jika itu hanya untuk mengubah avatar mereka. Risikonya adalah bahwa setiap file upload betapapun sederhananya mungkin terlihat,bisa berisi script yang ketika dijalankan pada server Anda benar-benar membuka website Anda. 

Jika Anda memiliki file upload berbentuk maka Anda harus memperlakukan semua file dengan kewaspadaan tinggi. Jika Anda juga memungkinkan pengguna untuk meng-upload gambar,maka Anda tidak dapat mengandalkan pada ekstensi file atau jenis mime untuk memverifikasi bahwa file tersebut adalah gambar,yang seperti ini dapat dengan mudah dipalsukan. Bahkan membuka file dan membaca header,atau dengan menggunakan fungsi untuk memeriksa ukuran gambar tidak membuktikan secara penuh. Kebanyakan format gambar memungkinkan menyimpan bagian komentar yang dapat berisi kode PHP yang dapat dieksekusi oleh server. 

Jadi apa yang dapat Anda lakukan untuk mencegah hal ini? Pada akhirnya Anda ingin menghentikan pengguna dari kemampuan untuk mengeksekusi file yang mereka upload. Oleh server web secara default tidak akan mencoba untuk menjalankan file dengan ekstensi gambar,tetapi tidak dianjurkan untuk hanya mengandalkan pemeriksaan ekstensi file sebagai file dengan nama image.jpg.php yang telah dikenal bisa untuk mendapatkan jalan melaluinya. 

Beberapa opsi untuk mengubah nama file yang di upload untuk memastikan ekstensi file yang benar,atau mengubah hak akses file,misalnya,chmod 0666 sehingga tidak dapat dijalankan. Jika menggunakan *nix Anda bisa membuat file. htaccess (lihat di bawah) yang hanya akan memungkinkan akses untuk mengatur file mencegah serangan ekstensi ganda disebutkan sebelumnya. 

1. deny from all 
2. <Files ~ "^\w+\.(gif|jpe?g|png)$"> 
3. memesan menyangkal, memungkinkan 
4. memungkinkan dari semua 
5. </Files> 

Pada akhirnya,solusi yang disarankan adalah untuk mencegah akses langsung ke file upload semua bersama-sama. Dengan cara ini,file upload ke situs web Anda yang disimpan dalam folder di luar webroot atau dalam database sebagai gumpalan. Jika file Anda tidak langsung dapat diakses Anda akan perlu untuk membuat script untuk mengambil file dari folder pribadi (atau handler HTTP dalam .NET) Dan mengirim mereka ke browser. Gambar tag mendukung atribut src yang bukan URL langsung ke gambar,sehingga atribut src Anda dapat menunjukkan skrip pengiriman file Anda memberikan Anda mengatur jenis konten yang benar di header HTTP. Sebagai contoh: 

1. <img src="/imageDelivery.php?id=1234" /> 
2. 
3. <? Php 
4. // ImageDelivery.php 
5. 
6. // Ambil nama file gambar dari database berdasarkan $ _GET ["id"] 
7. ... 
8. 
9. // Memberikan gambar ke browser 
10. Header ('Content-Type: image / gif'); 
11. readfile ('images /' $ nama file.); 
12. 
13. ?> 

8. Keamanan server 
Kebanyakan penyedia layanan hosting berurusan dengan konfigurasi server untuk Anda,tetapi jika hosting website Anda pada server Anda sendiri maka ada beberapa hal yang akan Anda harus tahu. 

Pastikan bahwa Anda memiliki setup firewall,dan memblokir semua port non esensial. Jika mungkin mendirikan DMZ (Zona Demiliterisasi) hanya memungkinkan akses ke port 80 dan 443 dari dunia luar. Meskipun hal ini barangkali tidak mungkin jika Anda tidak memiliki akses ke server Anda dari jaringan internal Anda maka akan perlu untuk membuka port untuk memungkinkan meng-upload file dan remote login ke server Anda melalui SSH atau RDP. 

Jika Anda sedang mengizinkan file yang akan diupload dari Internet hanya menggunakan metode transportasi yang aman ke server Anda seperti SFTP atau SSH. 

Jika mungkin telah database Anda berjalan pada server yang berbeda dengan server web Anda. Melakukan hal ini berarti server database tidak dapat diakses langsung dari dunia luar,hanya server web Anda dapat mengaksesnya,meminimalkan risiko data Anda yang terkena. 
Akhirnya,jangan lupa tentang membatasi akses fisik ke server Anda. 

9.SSL 
SSL adalah protokol yang digunakan untuk memberikan keamanan di Internet. Ini adalah cara yang baik untuk menggunakan sertifikat keamanan setiap kali Anda melewati informasi pribadi antara website dan server web atau database. Penyerang bisa mengendus informasi ini dan jika media komunikasi tidak aman dapat menangkap dan menggunakan informasi ini untuk mendapatkan akses ke akun pengguna dan data pribadi. 

10. Alat keamanan 
Setelah Anda pikir Anda telah melakukan semua yang Anda bisa untuk mengamankan situs web Anda maka saatnya untuk menguji keamanan. Cara yang paling efektif untuk melakukan ini adalah melalui penggunaan beberapa alat keamanan,yang sering disebut sebagai pengujian penetrasi atau pengujian pena pendek. 

Ada banyak produk komersial dan gratis untuk membantu Anda dengan ini.  Kerja Mereka pada dasarnya mirip untuk script hacker dalam menggunakan bahwa mereka tahu akan diuji menggunakan eksploitasi dan berusaha untuk mengkompromi situs Anda menggunakan beberapa metode yang disebutkan sebelumnya seperti SQL injection. 

Beberapa alat gratis yang layak : 
Netsparker (edisi komunitas gratis dan tersedia versi trial). Baik untuk pengujian SQL injeksi dan OpenVAS XSS. Mengklaim sebagai yang open source paling canggih pemindai keamanan. Baik untuk pengujian mengetahui kerentanan,saat memindai lebih dari 25.000. Tapi itu bisa sulit untuk setup dan memerlukan server OpenVAS yang akan diinstal yang hanya berjalan di *nix. OpenVAS adalah garpu dari Nessus sebelum menjadi produk komersial sumber tertutup. 

Hasil dari tes otomatis dapat menjadi sesuatu yang membingungkan,karena mereka menyajikan kekayaan potensial masalah. Yang penting adalah untuk fokus pada isu-isu penting pertama. Setiap masalah yang dilaporkan biasanya datang dengan penjelasan yang baik dari potensi kerentanan. Anda mungkin akan menemukan bahwa beberapa isu menengah/rendah tidak menjadi perhatian bagi situs Anda. 

Jika Anda ingin mengambil sesuatu langkah lebih lanjut maka ada beberapa langkah lebih lanjut dapat Anda ambil untukmencoba cara  manual untuk mengkompromi situs Anda dengan mengubah POST/GET nilai. Sebuah proxy debugging dapat membantu Anda di sini karena memungkinkan Anda untuk mencegat nilai-nilai permintaan HTTP antara Browser anda dan server. Sebuah aplikasi freeware populer disebut Fiddler adalah titik awal yang baik. 

Jadi apa yang harus Anda mencoba untuk mengubah atas permintaan itu? Jika Anda memiliki halaman yang hanya harus terlihat dengan login pengguna maka baiknya mencoba mengubah parameter URL seperti user id,atau nilai cookie dalam upaya untuk melihat rincian dari user lain. Bagia lain yang layak diuji bentuk,mengubah POST nilai untuk mencoba untuk mengirimkan kode untuk melakukan XSS atau untuk meng-upload Server side script. 

Semoga tips ini akan membantu menjaga situs Anda dan informasi aman. Untungnya sebagian CMSes memiliki banyak fitur keamanan built-in,tapi itu adalah masih merupakan ide yang baik untuk memiliki pengetahuan tentang eksploitasi keamanan yang paling umum sehingga Anda dapat memastikan Anda tertutup. 

Ada juga beberapa modul yang tersedia untuk membantu CMSes untuk memeriksa instalasi untuk kelemahan keamanan umum seperti Security Review untuk Drupal dan WP Security Scan untuk WordPress. Ini saya ambil dari sumber ; http://www.netmagazine.com/features/10-essential-security-tips-protect-your-site-hackers

ٱلْحَمْدُ لِلَّهِ رَبِّ ٱلْعَاٰلَمِين
Jika anda merasa artikel ini manfaat,silahkan sempatkan waktu sebentar untuk berbagi.

Dapatkan Dengan Gratis Artikel Baru Dari ArsipFank Langsung ke email anda,Silahkan masukkan Email Valid dan klik Setuju:


Powered by Blogger.