Hallo kawan, udah lama ngga ngepost lagi nih karena sibuk kegiatan program disini. Oh iya kemarin jadi ceritanya lagi iseng2 ngoprek2 router (ONT) yang udah locked by vendor (ISP) baik fitur2 management ataupun security nya, akan tapi sebetulnya bukan ini yang pengen saya bahas. Sebelum kita mengetahui struktur keamanan dan hal2 rahasia daripada sistem router, kita harus tahu dulu asal mula firmware router tsb, akan tetapi tidak semua router menyediakan firmware binary yang bisa di download langsung di internet, hanya beberapa router yang menyediakan untuk update firmware terbaru apalagi yang sudah dipatch karena alasan patching vulnerabilties. Disini saya akan mengambil salah satu fimware binary yang bisa saya download dan sudah ada contoh vulnerabity yaitu root backdoor, namun tenang saja firmware ini sudah jarang digunakan di router (ONT) yang mana firmware tersebut sudah di patch oleh pihak vendor ISP.
We’re start from the scratch,
1. Pastikan tools binwalk sudah terinstall
Debian likes :
$ sudo apt install binwalk
2. Kemudian unsquashfs
Debian likes :
$ sudo apt install unsquashfs
3. Terakhir tools yang juga penting yaitu Jefferson
$ git clone https://github.com/sviehb/jefferson
$ cd jefferson
$ sudo python2 setup.py install
**note: saya menggunakan python2 untuk running script ini karena script ini yang saya lihat masih menggunakan function2 yang ada di python2, sudah saya coba untuk running di python3 dan saya rubah beberapa function python2 ke python3 alhasil .. running but CRASH, trashback wkwk, untuk memudahkan maka dari itu saya gunakan python2.
Setelah kita setup tools ini ke environment kita, eitss sebetentar dulu masih ada beberapa dependencies yang diperlukan tools ini.
cstruct
pyliblzma
$ sudo pip install cstruct
$ sudo apt install liblzma-dev
$ sudo pip install pyliblzma
$ jefferson -h
oke langsung aja kita coba reverse bin file nya
$ binwalk -B 100AAPP7D0.bin
disini bisa kita lihat deskripsi filesystem yaitu JFFS2 maka nanti nya kita akan reverse menggunakan jefferson, sebelumnya kita extract file tersebut menggunakan binwalk.
$ binwalk --extract -v 100AAPP7D0.bin
$ cd _100AAPP7D0.bin.extracted/
$ ls -la
akan terlihat 1 file dengan extension jffs2
dari sini kita coba reverse jffs2 file..
$ jefferson -v 20000.jffs2 -d _100AAPP7D0.bin
tunggu sampai proses extracting selesai..
Nah menurut CVE-2018-18754 disini kita bisa menemukan akun root backdoor yang mungkin develepor nya nggak sengaja naro terus lupa ke apus wkwk
$ cd _100AAPP7D0/fs_1/etc/
$ cat default.cfg | grep 'root\|Pass'
Yups.. kita nemu password root yaitu dFRuMytaQCFTcjBPKwA= dengan enkripsi base64, decyrpt aja
$ echo -e 'RESULT\n======='; echo dFRuMytaQCFTcjBPKwA= | base64 -d;echo;echo
Mission Complete..
Ada beberapa firmware yang saya temukan namun ketika di reverse filesystem routernya adalah squashfs contoh nya firmware ini
$ binwalk --extract -v V530ABII0C0.bin
$ cd _V530ABII0C0.bin.extracted/
disana ada file 1706DF.squashfs, extract aja
$ unsquashfs -f -d fs_squashfs 1706DF.squashfs
$ cd fs_squashfs
$ ls -la
Yups berhasil kita reverse engineering.. sekian.
comments powered by Disqus