Melindungi Situs dari Clickjacking attack di Nginx

Dapatkan update terbaru Linuxku.com di kanal Telegram https://telegram.me/linuxkudotcom.
Clickjacking attact atau dikenal juga dengan sebutan “UI redress attact” adalah serangan yang memanfaatkan lapisan transparan yang mana bertujuan mengelabui agar ketika pengguna mengklik tombol atau tautan pada situs lain seakan seperti situs asli. Dengan demikian, penyerang bermaksud membajak situs tersebut dengan routing mereka ke situs lain, kemungkinan besar dimiliki oleh aplikasi lain, domain, atau keduanya. Teknik umum yang mereka lakukan adalah dengan teknik iframe.

Tulisan kali ini penulis akan memberikan sedikit tips dan trik tentang pengamanan situs bagi Anda pengguna Nginx. Dengan memanfaatkan fungsi X-Frame-Options di header suatu situs.

Persiapan

Pastikan Anda telah memasang Nginx di Server Anda, berikut ini artikel mengenai pemasangan Nginx:

  1. http://www.linuxku.com/2016/05/install-nginx-di-centos-7.html

  2. http://www.linuxku.com/2016/06/install-lamp-linux-apache-mysql-dan-php.html

Pengaturan

Masuk ke pengaturan Nginx Anda di:

Pengguna Debian/Ubuntu:

$ sudo nano /etc/nginx/sites-availables/default

Pengguna Fedora/Centos/RHEL:

$ sudo vi /etc/nginx/nginx.conf

Lalu tambahkan

server {
...
add_header X-Frame-Options "SAMEORIGIN";
...
}

Berikut ini ada tiga opsi dalam menetapkan pada X-frame-options:

  1. SAMEORIGIN
    Pengaturan ini hanya membolehkan pada halaman dirinya sendiri atau halaman original
  2. DENY
    Pengaturan ini akan menolak suatu halaman yang menampilkan situs Anda dalam suatau frame atau iframe.
  3. ALLOW-FROM URI
    Pengaturan ini hanya membolehkan mempilkan dari tautan spesifik halaman original.

Jika sudah langsung saja Anda restart atau reload Nginx Anda.

$ sudo service nginx restart
atau
$ sudo systemctl restart nginx

Pengecekan

Coba buat berkas HTML dengan kode di bawah ini:

<DOCTYPE html>
<head>
<title>Test</title>
</head>
<frameset rows="100%,*" border="0">
<frame src="http://situsAnda.com" frameborder="0" />
</frameset>
</html>

Jika hanya menampilkan whitescreen (halaman putih) artinya Anda telah sukses.

Semoga bermanfaat 🙂

Komentar Pembaca . . .

Yakin Ngga Mau Diskusi ?

Yuk diskusi cerdas. Gunakan nama asli agar komentar Anda disetujui.