Supaya Server Real tidak terlalu terbebani biasanya file yang familiar seperti .jpg
, .png
, .js
, .css
, dan lain-lain akan dimasukan kedalam Server Cache.
Web Cache Deception adalah kerentanan pada sebuah Server Cache yang digunakan untuk menampung data dari Web Server (Server-Side Cache). Arti dari “Deception” yaitu “Penipuan”, dimana kerentanan ini Attacker akan memanfaatkan Misconfiguration dari Server-Side Cache.
Technical Explanation
Kita analisis terlebih dahulu, setelah kita analisis ternyata Web Server milik https://target.com/
tersebut melakukan Caching terhadap file .js
.
Kita cari tahu Endpoint mana yang menyimpan data krusial milik User. Misalnya, pada https://target.com/profile.php
tersimpan data User seperti:
1
2
3
<p>Juned</p>
<p>email@mail.com</p>
<p>+62 812-3456-7890</p>
Menipu Server Cache
Karena https://target.com/
melakukan Caching pada file .js
maka kita sebut saja pada https://target.com/profile.php/apasaja.js
sebagai Vulnerable Cache-able Link.
Selanjutnya akan dijelaskan pada gambar di bawah ini:
Attacker mengirimkan link tersebut ke User untuk mencuri isi profile.php
pada https://target.com
milik User.
First Request
Kita anggap saja User sudah terotentikasi dan sudah memiliki Session pada https://target.com/
, sehingga saat User mengakses https://target.com/profile.php/apasaja.js
akan muncul data miliknya dan akan tersimpan pada Server Cache.
Second Request
Kemudian saat Attacker melakukan Second Request pada https://target.com/profile.php/apasaja.js
akan mendapatkan data milik User, karena Request kedua mengambil dari Server Cache yang dianggap sebagai file .js
.
Ini adalah murni kerentanan dari sebuah Web Server bilamana tidak bisa artinya tidak rentan.
Begitulah kira-kira penjelasan singkatnya, semoga bermanfaat.