picoCTF 2017 – Master Challenge level 2

Đây là bài tốn gần 2 tuần mới tìm ra cách giải. Nói như thế không có nghĩa là nó khó, mà là… dốt dở quá, không tìm ra hướng giải =))))

Bài này làm trên nền Windows. Đầu tiên, ta đọc xem đề yêu cầu gì.

Missing Identity

Turns out, some of the files back from Master Challenge 1 were corrupted. Restore this one file and find the flag. Update 16:26 EST 1 Apr If you feel that you are close, make a private piazza post with what you have, and an admin will help out. The flag starts with the character z.

? HINTS
? What file is this?
? What do you expect to find in the file structure?
? All characters in the file are lower case or numberical. There will not be any zeros.

Ok, ta tải về file trong đề đưa ra. Nó là một tập tin không định dạng. Luôn luôn là vậy. Sau một vài bài thi của picoCTF, ta sẽ hiểu ra phải làm gì nếu gặp dạng file như vầy. Chính xác! Bỏ vào một cái Hex Editor nào đó và view thử. Vì lười bật máy ảo chạy Linux (Ubuntu distro) nên dùng cái HxD chạy trên Windows.

hex.pngKhông thể đẹp hơn được nữa =))) Nói thật là lúc đầu tải về và view lên, ngồi ngắm nó miệt mài 1 tuần vẫn không hiểu phải làm gì tiếp theo. Rất là nản. Nhưng nếu nhìn kĩ hơn 1 tí, ta sẽ thấy có một vài thông tin bổ ích trong mớ string rối nùi đó. Đầu tiên, ở đầu file có một vài string có nghĩa là flag.png, còn ở cuối đuôi thì có một số thông tin bổ ích sau:

hex111.png

Liên tục có những string nottheflag<number>.pngPK xuất hiện. Nếu nhạy bén thì người thông minh đã nhìn ra ngay đây là một file dạng như container chứa các file con bên trong nó. Và định dạng làm được điều đó, không gì khác hơn là file nén. Nhưng buồn thay, mình không thuộc nhóm người thông minh đó :”)

Sau khi vật vã suy luận, đây có thể là một file hình chẳng hạn, thử các format hình ảnh từ png tới jpg rồi bla bla… nhưng dĩ nhiên là thất bại hoàn toàn hahaha…

Sau đó mới bắt đầu để ý cái chữ PK xuất hiện lặp đi lặp lại sau mỗi cái “nottheflag<number>.pngPK“. Thử tra cái chuỗi hex của nó xem rốt cuộc nó là cái gì.

Không thể hạnh phúc hơn!

pk zip.PNG

Lập tức quay ra và tìm tới file, thêm cái đuôi .zip vào cho nó. Yosh! Unzip nó ra thôi rồi hốt flag.

Nhưng dĩ nhiên, đời không đẹp như vậy được.

winrar.PNG

Có một file hình ảnh tên là flag.png, chắc chắn nó là đáp án rồi. Nhưng giải nén bằng bất kỳ phần mềm nào, cũng đều trả về kết quả là thiếu mất một file flag.png cần thiết.

Thử quay lại Hex Editor (viết hoa là để dễ đọc, chứ ko phải cái phần mềm nó tên là Hex Editor mà tên là HxD hoặc là tên gì đó khác tùy nhà sản xuất). Sau khi nhìn thật kĩ, ta nhận ra ta đã vội vàng lướt qua nhau….vài mươi lần mà không nhận ra :V :V haha. Ngay ở đầu file, đã có một chuỗi dài 6 chữ X nối đuôi nhau. Một sai sót không thể chấp nhận được.

Chính nó gây ra lỗi Headers error: flag.png khi ta cố tìm cách giải nén. Tới đây, mọi việc trở nên đơn giản hơn. Ta chỉ việc thay thế chuỗi XXXXXX đó bằng header của zip file là được. Cách thay thế? Gõ thay thế trực tiếp vào trong HxD luôn rồi save lại là được.

zip 8 bytes.PNG

results.PNG

Cuối cùng, giải nén ra và lấy flag. yeye ><

flag.png

Flag: zippidydooda49688958

VÕ TÌNH THƯƠNG

votinhthuong9@gmail.com

Advertisements

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 )

Google+ photo

You are commenting using your Google+ 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 )

Connecting to %s