ex-req-ex

FWWKCS·2023년 12월 31일
0

Dreamhack

목록 보기
3/10
post-thumbnail

https://dreamhack.io/wargame/challenges/834

진행

생성된 웹 서버에 접속하면 다음 웹이 나온다

여기서 어떤 텍스트를 입력해야 Flag를 주는것 같은데 다음으로 문제 파일을 살펴보자

입력받은 문자열을 input_val에 저장하고 그것을 정규식과 매치한 결과 m값이 True이면 플래그를 반환하고, 옳지않으면 ?를 반환해 출력시키는 코드임을 볼 수 있다



정규식 표현

이제 저 매치시킬 정규식을 해석해 매치할 때 참이 되게하는 문자열을 작성해야한다

\w: 임의의 문자 영문 대소문자 또는 언더스코어(_) 와 매치한다

{5,7}: 앞에 나온 문자가 5회 이상, 7회 이하 개수만큼 있으면 매치한다

\d: 임의의 숫자 (0-9)와 매치한다

+: 앞에 나온 문자나 숫자가 1개 이상 존재하면 매치한다

[a-z]: 영소문자와 매치한다

\.: .은 모든 문자와 매치하는 기호를 의미하는데 이런 기호 앞에 \를 추가하면 escape의 의미로 '.' 이라는 문자열을 사용하겠다는 의미이다.


위의 정보를 토대로 모두 매치할 수 있는 문자열을 생성해보면

drOOOOOe9am@hack.c 와 같이 작성할 수 있고, 이것을 웹의 입력으로 주면 플래그가 나오게 된다!

profile
Memory Archive

0개의 댓글

관련 채용 정보