[OverTheWire] Natas – Level 12

http://natas12.natas.labs.overthewire.org/

Choose a JPEG to upload (max 1KB)…

Xem source:

Đọc hiểu cơ bản, ta thấy quá trình upload ảnh không có gì đặc biệt, quan trọng nhất là ở đường dẫn của file sau khi được upload:

Có những điểm quan trọng như sau:

  • Tên file (không bao gồm phần mở rộng) được tạo ngẫu nhiên.
  • Phần mở rộng lấy từ thuộc tính filename của form upload.
  • Thuộc tính filename có phần mở rộng cố định là .jpg:

Vì mọi thuộc tính của form (name và value) đều có thể thay đổi được, nên ta hoàn toàn có thể upload 1 file .php lên web để thực thi tác vụ mình muốn (code trên server theo như ta thấy thì nó không xử lý định dạng file) emo_popo_smile

Tạo file 12.php có nội dung:

Tại form upload, sửa thuộc tính filename thành *.php:

Chọn file 12.php và tiến hành upload:

The file ... has been uploaded

Nhấn vào link:

jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY

→ flag = jmLTY0qiPZBbaKc9341cqPQZBJv7MQbY.

 

Leave a Reply

Your email address will not be published. Required fields are marked *