> For the complete documentation index, see [llms.txt](https://twentysick.gitbook.io/twentysick/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://twentysick.gitbook.io/twentysick/writeup/flare-on/flare-on-2025/3-pretty_devilish_file.md).

# 3 - pretty\_devilish\_file

somehow bài này khá abc...xyz

### Description

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2FjLBVj7aUZ3HMnnlZVnFo%2F3.png?alt=media&amp;token=d158d934-aaa4-4cf2-ab26-1dcd4edf497f" alt=""><figcaption></figcaption></figure>

### Solution

Sau khi giải nén, mình có thấy file `pretty_devilish_file.pdf`

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2FouVjCwe5OeJiC6KOeoDk%2Fimage.png?alt=media&amp;token=b1c3b38d-c3bd-42a9-b622-7a711466bc72" alt=""><figcaption></figcaption></figure>

Mình đã sử dụng `pdfinfo` với file này và nhận được kết quả

```bash
Syntax Warning: No valid XRef size in trailer
Custom Metadata: no
Metadata Stream: no
Tagged:          no
UserProperties:  no
Suspects:        no
Form:            none
JavaScript:      no
Pages:           1
Encrypted:       yes (print:yes copy:yes change:yes addNotes:yes algorithm:AES-256)
Page size:       612 x 130 pts
Page rot:        0
File size:       1485 bytes
Optimized:       no
PDF version:     2.0
```

Hmmm, chả có gì đặc sắc NHƯNG cái dòng này thu hút sự chú ý của mình

```
Encrypted:       yes (print:yes copy:yes change:yes addNotes:yes algorithm:AES-256)
```

Sử dụng lệnh `cat` với file, thì đây rồi cái obj *Encrypt*

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2FfqfhwcoIW3cPOCm7Zlj5%2Fimage.png?alt=media&amp;token=19a22bb7-bac7-4646-b31e-1c81413d4240" alt=""><figcaption></figcaption></figure>

Mình đã dành kha khá thời gian để móc nối cái *Encrypt* này với "dịch ngược" để rồi nhận ra đây là 1 bài **Steganography** (tôi là 1 thằng :clown:)

Ok, mình tìm thấy tool [`qpdf` ](https://github.com/qpdf/qpdf)và sử dụng với file bên trên bằng lệnh

```bash
qpdf --qdf --object-streams=disable pretty_devilish_file.pdf pretty_devilish_file_edited.pdf
```

Sau đó sử dụng `strings` với file `pretty_devilish_file_edited.pdf` và...

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2F8AuHgMRPcrbfgvDTZHQR%2Fimage.png?alt=media&amp;token=cfa12e40-e2f8-4d9a-98e0-c3b6c066b403" alt=""><figcaption></figcaption></figure>

Ok, mình thú nhận là trước khi chơi Reverse Engineering thì mình chuyên chơi Forensics nên nhìn cái là mình nhận ra đây là các bytes của 1 bức ảnh JPG... (Wiki đi nếu muốn biết tại sao mình biết là file JPG)

Mình đã tạo 1 file jpg với nội dung là các byte đó và... trông nó không đẹp lắm....

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2Fu18vnJ9tRduzM3wMgFAj%2Fimage.png?alt=media&amp;token=562d03bb-6100-43e1-ba75-e2d95da2bc73" alt=""><figcaption></figcaption></figure>

Tiếp theo, mình up ảnh lên trang <https://georgeom.net/StegOnline/> và Extract Data, chọn 1 màu bất kỳ và tích đủ các ô trong cột đó rồi có flaggggggg

<figure><img src="https://3579869334-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fqj23826F0xExp2MNexN5%2Fuploads%2FWwMrvkpe6Q1X2sAY97IB%2Fimage.png?alt=media&amp;token=ec6346b7-e428-4bd0-8019-91554c6fb78c" alt=""><figcaption></figcaption></figure>

&#x20;***Flag:*** `Puzzl1ng-D3vilish-F0rmat@flare-on.com`
