728x90
Description
STEP 1~2를 거쳐 FLAG 페이지에 도달하면 플래그가 출력됩니다.
모든 단계를 통과하여 플래그를 획득하세요. 플래그는 flag.txt 파일과 FLAG 변수에 있습니다.
풀이
step 1. 접속 정보 사이트로 접속
→ 처음 접속 시 STEP 2나 FLAG에 들어가려 하면 'Not Yet'라고 메시지가 나온다. STEP 1부터 차례대로 해결하야 하는 것 같다.
→ STEP 1에 들어가 보면 이렇게 나온다.
step 2. 문제 파일 확인
if request.method == "GET":
prm1 = request.args.get("param", "")
prm2 = request.args.get("param2", "")
step1_text = "param : " + prm1 + "\nparam2 : " + prm2 + "\n"
if prm1 == "getget" and prm2 == "rerequest":
return redirect(url_for("step2", prev_step_num = step1_num))
return render_template("step1.html", text = step1_text)
else:
return render_template("step1.html", text = "Not POST")
→ app.py 코드를 살펴보았다. 이 코드를 통해 STEP1을 해결할 수 있을 것 같다.
이렇게 작성하고 제출하면 STEP 2로 넘어가진다.
prev_step_num = request.form.get("check", "")
try:
if prev_step_num == str(step2_num):
####
prm1 = request.form.get("param", "")
prm2 = request.form.get("param2", "")
if prm1 == "pooost" and prm2 == "requeeest":
return render_template("flag.html", flag_txt=FLAG)
else:
return redirect(url_for("step2", prev_step_num = str(step1_num)))
return render_template("flag.html", flag_txt="Not yet")
except:
return render_template("flag.html", flag_txt="Not yet")
→ param에는 pooost를, param2에는 requeeest를 입력하고 제출하면 FLAG가 나온다.
728x90
'dreamhack' 카테고리의 다른 글
[Dreamhack] ex-reg-ex (Beginner) (0) | 2023.11.08 |
---|---|
[Dreamhack] baby-linux (Beginner) (0) | 2023.11.07 |
[Dreamhack] proxy-1 (LEVEL 1) (0) | 2023.10.05 |
[Dreamhack] Carve Party (Beginner) (0) | 2023.10.05 |
[Dreamhack] devtools-sources (Beginner) (0) | 2023.10.03 |