Dalam pembuatan sebuah website kita perlu diperhatikan apa saja ancaman maupun serangan yang bisa terjadi. Hal ini penting di lakukan untuk menjaga kerahasiaan data dan kenyamanan pengguna. Pada artikel ini, penulis akan memberikan informasi tentang keamanan dasar dalam membuat web yang wajib untuk diketahui.

Berikut ini  merupakan bentuk keamanan dasar yang bisa dilakukan pada dalam proses pembuatan website :

1. Membuat password terenskripsi

Password merupakan sesuatu wajib dirahasiakan dalam setiap kegiatan di Internet, bahkan admin website pun tidak boleh mengetahui password dari pengguna website tersebut. Oleh sebab itu programmer harus mengenskripsi password tersebut. Enskripsi password yang popular di kalangan programmer adalah password terenskripsi MD5 dan password_hash. 

MD5 (Message-Diggest algorithm 5)  adalah sebuah fungsi untuk hash kriptografik yang digunakan secara luas dengan hash value 128-bit. MD5 telah digunakan pada berbagai macam aplikasi keamanan. Password_hash adalah suatu fungsi yang dimiliki PHP untuk melakukan hashing menggunakan algoritma satu arah maka data yang sudah terhash tidak akan bisa dikembalikan menjadi data asli. Berikut adalah bentuk enskripsi dari MD5 dan password_hash.

2. Menggunakan function mysqli_real_escape_string

Mysql_real_escape_string adalah fungsi PHP yang dipakai guna memberikan backslash dalam beberapa kode yang nantinya akan ditampilkan pada halaman web, ketika menyimpan menuju sql, kode ini akan tetap normal tanpa adanya backslash sama sekali. Hal ini pula yang menjadi alasan mengapa fungsi PHP yang satu ini dipergunakan untuk memberikan perlindungan dan juga mencegah sql injection. Function PHP ini biasa digunakan untuk melindungi username dan password pada form login

Berikut adalah penggunaan function mysqli_real_escape_string 

3. Menggunakan function htmlspecialchars pada setiap form input

htmlspecialshars adalah merupakan fungsi yang digunakan untuk mengubah fungsi tag HMTL ke dalam bentuk karakter – karakter tertentu yang akan menjadi kode HTML yang baru.

Ada beberapa kelebihan dari fungsi yang satu ini, salah satunya adalah menjadikan tampilan website tetap rapi sesuai dengan peraturan pada website atau blog. Ada beberapa karakter yang digunakan dalam fungsi ini, antara lain :

HtmlHasil Konversi
& (dan)& (mencetak tanda & pada browser)
” (petik ganda)” (mencetak tanda petik pada browser)
‘ (petik tunggal)‘ (mencetak tanda petik tunggal pada browser)
< (lebih kecil)< (mencetak tanda lebih kecil pada browser)
> (lebih besar)> (mencetak tanda lebih besar pada browser)

Berikut ini perbedaan jika menggunakan atau tidak menggunakan function ini pada setiap form input.

a. Contoh script input action simpan.php

Disini saya mencontohkan variabel keterangan tidak menggunakan function htmlspecialchars

b. Form input di halaman web

Disini penulis  membuat script html/css sederhana sebagai contoh.

c. Hasil dari perbedaan penggunaan function htmlspecialchars

Disini bisa kita lihat hasilnya pada nama lain kabupaten yang menggunakan htmlspecialchars bisa mengkonversi text html menjadi sebuah text biasa, berbeda dengan keterangan yang tidak menggunakan htmslpecialchars.

4. Membuat file .htaccess

File .htaccess termasuk dalam kategori file sederhana yang formatnya adalah ASCII. Biasanya, file ini dipakai untuk merubah beberapa bentuk konfigurasi yang akan mengarahkan web server jenis Apache. 

Ada beberapa hal yang dapat Anda lakukan dengan file yang satu ini, antara lain :

  • Dapat dipakai untuk mencegah pengunjung melakukan brosing pada direktori.
  • Memungkinkan untuk men-redirect pengunjung dalam satu halaman dan menuju pada halaman lain.
  • Memberikan proteksi terhadap password yang ada di bagian direktori.
  • Dapat mengubah atau mengganti default halaman index untuk folder tertentu, dan
  • Memungkinkan untuk mencegah adanya hot-linking of images dalam website.

File .htaccess menawarkan beberapa fungsi yang bermanfaat bagi wesbite, salah satunya adalah dapat menciptakan halaman baru yang berisikan pesan kesalahan.  peletakan file .htaccess bisa di taruh di paling luar dan sejajar dengan file index.php

Berikut adalah contoh script dalam file .htaccess yang dapat dibuat 

Contoh pesan kesalahan yang muncul jika ada user yang mencoba listing direktori

Itulah tadi beberapa upaya yang dapat dilakukan untuk membangun keamanan dasar halaman web yang perlu diketahui setiap web developer. Semoga informasi ini bermanfaat dan menambah wawasan kita bersama, ya!

REFERENSI

  1. https://id.wikipedia.org/wiki/MD5 dikases pada tanggal 05 maret 2021
  2. https://masrud.com/post/password-hash-password-verify dikases pada tanggal 05 maret 2021
  3. https://idcloudhost.com/mengenal-apa-itu-htaccess-fungsi-dan-cara-kerjanya/#:~:text=htaccess%20adalah%20%3A,proteksi%20pada%20password%20bagian%20direktori diakses pada tanggal 05 maret 2021
  4. http://putriaisyahlarasatiansori.blogspot.com/2012/11/htmlspecialchars-dan-htmlentities_1.html diakses pada tanggal 05 maret 2021
  5. https://www.rajaputramedia.com/artikel/fungsi-mysql-real-escape-string-pada-php.php#:~:text=Dari%20pengertian%20mysql_real_escape_string()%20itu,tetap%20normal%20tanpa%20ada%20backslash diakses pada tanggal 05 maret 2021

Sumber Gambar

Created by : Ahmad Harun, Suryani