Thứ Tư, 29 tháng 11, 2017

[Phần 2] Sử dụng công cụ Binwalk để phân tích Firmware


Binwalk là một công cụ cho phép chúng ta phân tích một hoặc nhiều tập tin. Nó cho phép chúng ta nhận dạng tập tin hoặc những đoạn code được nhúng vào trong Firmware. Binwalk sử dụng thư viện libmagic, vì vậy nó tương thích với các Magic Signature được tạo ra cho tiện ích tập tin  Unix.

Mình chỉ mới làm quen với chương trình nàyđược khoảng thời gian rất ngắn nhưng mình thấy nó thật sự hữu ích cho ai muốn tìm hiểu phân tích Firmware.
Thông tin chi tiết về nó các bạn có thể truy cập vào:
Trang chủ:  http://binwalk.org
Git: https://github.com/ReFirmLabs/binwalk
Cài đặt: https://github.com/ReFirmLabs/binwalk/blob/master/INSTALL.md


Trích xuất các tập tin từ Kernel của Box FPT

Đầu tiên các bạn tải Kernel về bằng cách truy cập vào địa chỉ sau đây:
http://fbox-fw.fpt.vn/rom8675B00//v2.3.41/FPT-KERNEL.bin (phiên bản này hình như hơi cũ thì phải,,, nhưng mình nghĩ FPT nó không update cái Kernel này làm gì,,, có thì nó chỉ update Apps thôi.)

Sau khi tải về và lưu ở đâu đó, của mình thì lưu tại /Downloads, các bạn thử dùng Binwalk phân tích xem thế nào, mình thử phân tích thì nó như hình dưới.


Như vậy tập tin FPT-KERNEL.bin thực chất là một file ảnh (romfs dạng một phân vùng có tên là MIPSLINUX_XLOAD). Để chắc ăn mình thử mở bằng 010 Editor xem thế nào và hình dưới cũng cho mình kết quả y chang như Binwalk phân tích.


Oái,,, hình như phân vùng này còn chứa một file gì đó với định dạng .zbf (vmlinux_xload.zbf). Chắc ăn nhất là thử mount vào /tmp để xem thôi.

Rồi,, y rằng. Mở sao đây? Binwalk chứ sao.
Như vậy nhìn vào những gì Binwalk phân tích thì ta thấy file này chứa ZBOOT và tại offset 0x768 có chứa dữ liệu bị nén bằng gzip. Chúng ta không quan tâm tới offset chứa ZBOOT mà chỉ quan tâm tới phần data gzip kia thôi. Trích xuất nó ra xem thế nào.

Nếu như may mắn thì chúng ta có thể giải nén được data này ra và xem trong đó là cái gì.
Có vẻ giải nén ra được rồi nhưng không có gì cả,, chỉ là 1 file không tên tuổi.
Mình thử dump string xem có gì không thì thấy khá nhiều thông tin thú vị (cái này các bạn tự tìm hiểu nhé....)
Binwalk tiếp xem sao.

Lại thấy một data bị nén nữa,,, nhưng lần này file 1896 có vẻ cho chúng ta nhiều thông tin hơn nữa.
dd phát nữa xem sao.
Tiếp tục giải nén ra xem thế nào.

 XONG,,, lần này thì đã có dữ liệu để xem rồi.










Không có nhận xét nào:

Đăng nhận xét

Cám ơn bạn đã để lại nhận xét

Cài OwnCloud lên ChainedBox L1 Pro

OwnCloud là gì? Giới thiệu (copy) Grank Karlitschek, một chuyên gia phát triển phần mềm KDE người Đức, đã bắt đầu phát triển OwnCloud vào th...

Popular Posts