SECURITY NEWS

Mengenal Serangan Clickjacking

Apa itu Serangan Clickjacking ?

 

Clickjacking merupakan semua jenis serangan pada aplikasi web yang membuat korbannya secara tidak sengaja mengklik elemen halaman web yang sebenarnya tidak ingin diklik. Hal ini paling sering diterapkan pada halaman web dengan menumpangkan konten berbahaya pada halaman tepercaya. Contohnya pada sebuah website terdapat pilihan tombol “Klik Di Sini” untuk mendapatkan hadiah. Selanjutnya korban akan penasaran dan ingin klik tombol tersebut. Namun ketika diklik ternyata memicu fungsi jahat yang telah dibuat oleh penyerang, mulai dari memalsukan atau mengikuti di media sosial hingga mengambil uang dari akun bank pengguna.

Sekilas tentang Serangan Clickjacking
Saat ini pendekatan yang paling umum sering dilakukan penyerang untuk clickjacking yaitu dengan memanipulasi halaman web, sehingga halaman tersebut memiliki beberapa layer. Misalnya di layer paling bawah ada tombol “Klik Di Sini” untuk mendapatkan hadiah. Namun tepat diatasnya telah dibuat layer tidak terlihat. Maka ketika ingin klik tombol hadiah gratis, sesungguhnya yang di klik adalah layer yang ada diatasnya. Dalam kata lain penyerang membajak tombol yang ingin di klik dan diganti dengan tombol lain yang memicu aktifitas jahat. Itulah mengapa disebut sebagai Clickjacking. Clickjacking bukan merupakan satu jenis serangan secara spesifik, tetapi seluruh serangan yang menggunakan teknik dan attack vector seperti itu.

Jenis-jenis Serangan Clickjacking

  1. Content Overlay
    Bentuk serangan clackjacking yang paling umum yaitu memanipulasi halaman terpercaya dengan melapisi konten berbahaya, kategori ini memiliki beberapa macam serangan, yaitu:
    a. Transparent Overlay
    Penyerang akan membuat halaman jahat secara transparan, kemudian akan ditaruh diatas konten yang ingin di klik oleh pengguna. Ini menyebabkan pengguna percaya bahwa mereka mengklik konten yang diposisikan di bawah halaman manipulasi. Dalam hal ini, sistem akan membaca klik pada halaman jahat karena itu adalah konten yang sesungguhnya pengguna klik.


    b. Cropping
    Penyerang hanya membuat sebagian halaman atau konten jahat, kem sehingga tidak secara utuh satu halaman web jahat, kemudian menaruhnya diatas konten yang asli. Misalnya terdapat tombol pilihan “Setuju” dan “Tidak Setuju” pada halaman asli, kemudian penyerang akan melapisi dengan konten palsu yang menutupi tombol pilihan tersebut atau mengganti deskripsi pertanyaan dengan yang penyerang buat. Sehingga, penyerang akan dapat mengarahkan pengguna untuk menekan tombol pilihan yang diinginkan oleh penyerang.

    c. Hidden Overlay
    Penyerang membuat halaman jahat sebesar 1x1 piksel yang berisi konten berbahaya dan menempatkannya tepat di bawah kursor mouse. Posisi seperti ini tentu tersembunyi dan tidak akan disadari oleh pengguna. Sehingga ketika pengguna menggunakan mouse untuk klik apapun, itu akan tetap menekan halaman jahat.

    d. Click Event Dropping
    Pada pendekatan ini, halaman yang dapat dipercaya pengguna akan ditampilkan di latar depan dan sepenuhnya melapisi halaman jahat yang berada di belakangnya. Penyerang akan mengatur CSS pointer events diatasnya menjadi tidak ada. Ketika pengguna klik halaman yang dipercaya, maka akan langsung menembus halaman tersebut dan langsung menekan halaman jahat di bawahnya.


    e. Rapid Content Replacement
    Penyerang akan menutupi tombol jahat dengan konten manipulasi lainnya. Ketika pengguna akan menekan konten manipulasi, maka penyerang akan menghilangkan konten tersebut sepersekian detik dan membuat pengguna menekan tombol jahat. Setelah pengguna menekan tombol jahat, secara otomatis konten akan kembali menutupi tombol jahat tersebut. Pendekatan ini membutuhkan prediksi yang tepat dari seorang penyerang, tetapi dengan sedikit pengetahuan tentang kebiasaan pengguna komputer dan psikologi, itu lebih mudah dari kedengarannya.
     
  2. Scrolling
    Penyerang akan menyembunyikan kotak dialog yang asli dengan menggulirkan kebagian atas atau bawah suatu halaman web yang membuat pengguna hanya akan melihat beberapa tombol kontrol yang disediakan kotak dialog. Misalnya, pada halaman web muncul kotak dialog dengan pilihan tombol “Ok” dan “Batal”, kemudian penyerang akan menggulirkan kotak dialog tersebut untuk menyembunyikan deskripsi yang ada dan hanya menampilkan pilihan tombol tersebut. Selanjutnya, penyerang akan membuat deskripsi lain yang muncul disamping tombol pilihan, sehingga pengguna akan berpikir bahwa deskripsi dan tombol saling berkaitan. Serangan ini berbeda dengan jenis sebelumnya karena tidak membutuhkan lapisan untuk memanipulasi, cukup dengan menggulirkan kotak dialog ke bagian tertentu dari sebuah halaman web.
     
  3. Repositioning
    Pendekatan ini dilakukan dengan mengganti posisi kotak dialog yang asli dengan yang palsu. Pergantian tersebut hanya berganti selama beberapa detik ketika pengguna akan menekan tombol yang dituju. Setelah di klik kotak dialog yang palsu maka kotak dialog yang asli akan kembali berpindah posisi seperti semula.

Bagaimana Cara Menghindari Serangan Clickjacking 

Mayoritas serangan clickjacking menggunakan proses manipulasi halaman web yang ditargetkan. Maka semua metode pencegahan bertujuan untuk melarang adanya framing. Solusi lawas menggunakan skrip dari sisi klien untuk memecah halaman dari frame, sementara pendekatan yang lebih modern dan aman bergantung pada pengaturan HTTP security header untuk menentukan kebijakan framing. Berikut beberapa cara yang dapat dilakukan untuk menghindari serangan clickjacking:

  1. Framebusting atau Framebreaking
    Framebusting merupakan teknik untuk mencegah agar halaman tidak tertanam di halaman lain. Dalam visual clickjacking, halaman yang rentan tertanam di halaman penyerang untuk menipu korban. Pada pendekatan ini, suatu kode sederhana (biasanya ditulis dalam JavaScript) tertanam di halaman asli. Jika ada upaya untuk menyematkan halaman asli dalam halaman palsu, maka kode framebusting akan mengarahkan browser ke situs asli sehingga para korban tetap dapat melihat halaman asli. Kebijakan framebusting ini diberlakukan untuk semua tombol, tautan, dan formulir pada satu halaman web, sehingga tidak bias apabila suatu halaman asli disematkan di halaman palsu.
     
  2. X Frame Options
    X Frame Options merupakan teknik yang dapat menunjukkan apakah browser boleh atau tidak menampilkan halaman dalam bingkai atau iframe. Ini dapat digunakan untuk menghindari visual clickjacking karena halaman di mana X Frame Options diatur tidak dapat disematkan di halaman lain. Terdapat tiga atribut yang diterapkan pada teknik ini, diantaranya sebagai berikut:

    a. Deny
    Perintah ini sepenuhnya menonaktifkan loading halaman dalam bingkai, telepas dari situs apapun itu. Ini mungkin jalan terbaik untuk mengunci situs, namun juga akan menghentikan banyak fungsi. Beberapa situs yang menggunakan perintah deny adalah facebook dan github.

    b. Sameorigin
    Perintah ini memungkinkan untuk sebuah halaman meloading bingkai dalam halaman, sesuai dengan halaman asli. Beberapa situs yang menggunakan perintah Sameorigin antara lain twitter, Amazon, eBay, dan LinkedIn. Berikut tampilan untuk manampilkan perintah Sameorigin:


    c. Allow from

    Perintah ini memungkinkan halaman hanya akan meloading pada domain yang telah ditentukan. Namun harus hati-hati jika menggukan perintah ini. Apabila browser tak mendukung perintah ini, maka situs webmu tak akan memiliki pertahanan dari clickjacking.
     
  3. Content Security Policy with Frame Ancestors
    Header HTTP Content Security Policy (CSP) awalnya dikembangkan untuk melindungi terhadap XSS dan serangan injeksi data lainnya. Namun, ini juga memberikan Frame Ancestors untuk menentukan sumber yang diizinkan untuk menyematkan halaman. Teknik ini menggunakan sintaks yang sederhana:
    Content-Security-Policy: frame-ancestors <source1> <source2> ... <sourceN>;
  4. Evaluasi Perlindungan Email
    Memasang dan memeriksa filter email spam merupakan salah satu cara mendeteksi serangan apa pun secara efektif. Serangan clickjacking biasanya dimulai dengan menipu pengguna melalui email untuk mengunjungi situs jahat. Ini dilakukan dengan menerapkan email palsu atau khusus yang dibuat yang terlihat asli. Memblokir email tidak sah mengurangi serangan potensial untuk clickjacking dan banyak serangan lainnya juga.
     
  5. Menggunakan Firewall Aplikasi Web
    Aplikasi Web Firewall merupakan aspek keamanan yang penting dalam kasus bisnis yang memiliki sebagian besar datanya di Internet. Beberapa dari perusahaan-perusahaan ini cenderung mengabaikan kebutuhan satu dan akhirnya diserang dengan insiden clickjacking besar-besaran. Data terbaru menunjukkan bahwa hampir 70 persen dari semua UKM diretas dalam beberapa kapasitas dalam dekade terakhir atau lebih.
     
  6. Dari sisi user
    Pengamanan dari sisi user merupakan titik penting adanya pengamanan dari clickjacking. Dengan meningkatkan pengamanan diri (baik melalui self education atau melalui sosialisasi keamanan), dengan melakukan cek link apakah valid atau tidak, legit atau tidak, dapat mengurangi resiko terjadinya clickjacking.


Referensi
[1] https://www.netsparker.com/blog/web-security/clickjacking-attacks/ (diakses tanggal 4 Maret 2020 pukul 13.05 WIB).
[2] https://www.w3.org/Security/wiki/Clickjacking_Threats (diakses tanggal 5 Maret 2020 pukul 08.02 WIB).
[3] https://owasp.org/www-community/Clickjacking (diakses tanggal 5 Maret 2020 pukul 10.30 WIB).
[4] https://websetnet.net/id/tips-pencegahan-serangan-clickjacking-serangan/ (diakses tanggal 6 Maret 2020 pukul 15.00 WIB).

 

  • Senin, 09 Mar 2020
  • Penulis: Pusopskamsinas

Pemantauan Trafik Internet Nasional

Laporan pemantauan trafik internet nasional dengan menampilkan laporan trafik mingguan, trafik bulanan dan trafik tahunan.

Peringatan Ancaman Keamanan & Kerentanan Sistem

Kumpulan arikel tentang peringatan dini ancaman keamanan dan kerentanan sistem.

Security News

Kumpulan berita tentang keamanan siber atau IT.

Laporan Insiden

Id-SIRTII/CC menerima pelaporan insiden dari publik untuk kemudian dilakukan koordinasi kepada pihak-pihak yang berkepentingan.