@app.route("/", methods = ["GET", "POST"])
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='?')
구성 코드이다.
간단하게 re.match 함수에 있는 정규표현식을 만족하도록 input_val을 입력하면 되는 문제이다.
정규 표현식을 분석해보면
1. dr로 시작해야 한다.
2. dr 다음에는 5~7개의 알파벳 또는 숫자가 와야 한다.
3. 그 다음에 e가 와야 한다.
4. e 다음에는 하나 이상의 숫자(\d+)가 와야 한다.
5. am@이 그 다음에 온다.
6. 그 다음에는 3~7개의 소문자 알파벳이 와야 하며, 이어서 점(.)이 온다.
7. 마지막으로, 점 뒤에는 하나 이상의 알파벳 또는 숫자가 와야 한다.
이 조건들을 만족시키는 예시로 draaaaae123am@example.com를 입력해주면 된다.
'웹해킹' 카테고리의 다른 글
드림핵 session 롸업 (1) | 2023.12.20 |
---|---|
드림핵 simple-web-request 롸업 (0) | 2023.12.20 |
드림핵 Flying Chars 롸업 (0) | 2023.12.20 |
드림핵 phpreg 롸업 (0) | 2023.12.19 |
드림핵 File Vulnerability Advanced for linux 롸업 (0) | 2023.12.03 |