728x90
Description
문제에서 요구하는 형식의 문자열을 입력하여 플래그를 획득하세요. 플래그는 flag.txt 파일과 FLAG 변수에 있습니다.
플래그 형식은 DH{…} 입니다.
풀이
step 1. 문제 파일 다운로드 후 코드 확인
def index():
input_val = ""
if request.method == "POST":
input_val = request.form.get("input_val", "")
m = re.match(r'dr\w{5,7}e\d+am@[a-z]{3,7}\.\w+', input_val)
if m:
return render_template("index.html", pre_txt=input_val, flag=FLAG)
return render_template("index.html", pre_txt=input_val, flag='?')
이 코드 중 m = re.match(r'dr\w{5,7}e\d+am@[a-z]{3,7}\.\w+', input_val) 이부분을 풀어야 FLAG가 나오는 것 같다.
- `dr`: 패턴의 이 부분은 문자 그대로 "dr" 문자와 일치
- `\w{5,7}`: 이 부분은 5~7개의 단어 문자(문자, 숫자 또는 밑줄)와 일치
- `e\d+am`: 이 부분은 "e" 문자와 하나 이상의 숫자, "am" 문자가 차례로 나오는 부분과 일치
- `@`: "@" 기호
- `[a-z]{3,7}`: 3~7자의 소문자와 일치합니다.
- `\.`: 마침표(.) 문자
- `\w+`: 하나 이상의 단어 문자와 일치
=> 위의 조건대로 문자열을 조합해 보면 draaaaae1am@mail.com 이 만들어진다.
728x90
'dreamhack' 카테고리의 다른 글
[Dreamhack] ssp_001 (LEVEL 2) (1) | 2023.11.15 |
---|---|
[Dreamhack] image-storage (LEVEL 1) (0) | 2023.11.08 |
[Dreamhack] baby-linux (Beginner) (0) | 2023.11.07 |
[Dreamhack] 🌱 simple-web-request (Beginner) (0) | 2023.11.07 |
[Dreamhack] proxy-1 (LEVEL 1) (0) | 2023.10.05 |