Eksploitasi Kesalahan Konfigurasi Cross Origin Resource Sharing

Eksploitasi Kesalahan Konfigurasi Cross Origin Resource Sharing (CORS) –  Cross-Origin Resource Sharing (CORS) adalah mekanisme yang memungkinkan browser web untuk melakukan permintaan lintas-domain menggunakan API XMLHttpRequest secara terkendali. Permintaan lintas asal ini memiliki header Asal, yang mengidentifikasi domain yang memulai permintaan. Ini mendefinisikan protokol untuk digunakan antara browser web dan server untuk menentukan apakah permintaan lintas asal diizinkan.

Namun kesalahan konfigurasi menyebabkan pencurian data oleh attacker dengan memodifikasi header dari situs yang rentan.

Key:

  • Access-Control-Allow-Origin menentukan domain mana yang dapat mengakses sumber daya domain. Misalnya, jika requester.com ingin mengakses sumber daya provider.com, maka pengembang dapat menggunakan tajuk ini untuk secara aman memberikan akses requester.com ke sumber daya provider.com.
  • Access-Control-Allow-Credentials menentukan apakah browser akan mengirim cookie dengan permintaan atau tidak. Cookie hanya akan dikirim jika header allow-credentials true.
  • Access-Control-Allow-Methods menentukan metode permintaan HTTP mana (GET, PUT, DELETE, dll.) Yang dapat digunakan untuk mengakses sumber daya. Header ini memungkinkan pengembang lebih meningkatkan keamanan dengan menentukan metode apa yang valid ketika requester.com meminta akses ke sumber daya provider.com.

Contoh Kasus:

Situs jual beli online memiliki kesalahan pada cors dengan detail berikut:

Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, POST

Selanjutnya attacker membuat sebuat script yang digunakan untuk mengeksploitasi CORS di situs jual beli tersebut dan menyimpan log atau data yang ter-capture. Script tersebut diletakkan pada situs lain yang memiliki banyak pengunjung dan ketika korban mengakses situs milik attacker, data seperti email, alamat, dan informasi login toko online milik si korban akan tersimpan di situs milik attacker. Ya tentu saja skenario eksploitasi seperti ini hanya akan bekerja dengan catatan korban sudah login di situs yang memiliki kesalahan konfigurasi CORS.

Writeup

Berikut adalah writeup tentang pencurian data karena kesalahan konfigurasi CORS pada beberapa marketplace populer Indonesia.

  • https://www.ekasyahwan.com/2018/12/perburuan-bug-bounty-ku-dengan-metode.html
  • https://medium.com/@arifmukhlis/mencuri-data-pengguna-tokopedia-bug-bounty-52e86fa4c44e

Oke mungkin sekian artikel kali ini, jika ada yang kurang paham silahkan ditanyakan.

Shares

Leave a Reply