Artikel ini dibuat karena cerita lucu saya setelah mendapatkan 1 Point di BugCrowd (Won't Fix), karena coba-coba mereport celah CRLF Injection pada salah satu subdomain soundcloud.com.
Mungkin celah CRLF Injection ini sangat tidak penting karena suatu hal yang lumrah, seperti memasukan karakter pada umumnya namun sedikit berbeda.
Penjelasan tentang CRLF
CRLF memiliki kepanjangan dari Carriage Return (\r) dan Line Feed (\n) yaitu sebuah karakter yang digunakan untuk menuliskan sebuah garis baru/newline. CRLF Injection adalah sebuah serangan injeksi yang dapat memasukan garis baru pada sebuah konten di-website.Ini cerita saya tentang coba-coba untuk berburu point BugCrowd menggunakan celah CRLF Injection.
Saya mencoba untuk Search pada subdomain soundcloud.com, menggunakan query:
hello%22world%22 adalah HTML Encoding dari " (kutip dua), namun tidak terefleksikan menjadi kutip dua karena adanya filter. Kutip dua sendiri sering digunakan untuk mengecek website tersebut rentan XSS atau tidak. Untuk mengetahui karakter HTML Url Encoding lainnya kalian dapat kunjungi link berikut ini: http://krypted.com/utilities/html-encoding-reference/.
Ok, lalu saya mencoba menggunakan query:
hello%0D%0Aworld
- HTML URL Encoding:
- %0D = \r
- %0A = \n
Dari tampilan website hanya menampilkan "hello world", kemudian web tersebut saya view-source ternyata tampilan querynya yaitu:
helloNewline yang saya injeksi ternyata masuk.
world
Setelah itu saya iseng saja report ke BugCrowd dengan impact manipulasi konten. Saya berani report karena saya berfikir staff BugCrowd tidak seganas staff HackerOne, meskipun saya tau tidak akan mendapatkan reward apa-apa nantinya. Eh ternyata dapet 1 point (Won't Fix), lumayan deh.
Update
Bagaimana untuk testingnya?
Contoh kasus terkait CRLF Injection, kalian bisa gunakan halaman default 404 Not Found pada Apache (Versi: <= 2.4.x).Normal
Setelah dimasukan karakter CRLF
Memasukan karakter %0a (CRLF) |
Memasukan lebih dari 1 CRLF |
Gak penting banget sih?
Sebenarnya tujuan saya menulis ini karena ada satu celah yang cukup berbahaya yang setidaknya menggunakan teknik CRLF Injection yaitu HTTP Splitting Response (Server-Side Injection), tapi mungkin akan saya tulis pada artikel selanjutnya terkait vulnerability tersebut.Semoga bermanfaat.
Tags
CRLF Injection