해당 문제는 input 박스에 올바른 input이 들어왔을 경우 플래그값을 반환하는 문제이다.
소스 코드
풀이
위의 소스코드에서 중요하게 봐야 할 것은 이 부분이다.
해당 코드는 input_val변수에 form.get을 통해 input박스의 값을 가져와 저장하고 저장된 값이 미리 정해둔 정규표현식과 매치가 될 경우 flag를 리턴하는 코드이다.
해당 정규표현식의 의미는 이러하다.
정규 표현식 | 의미 |
dr | 문자열 "dr"이 포함되어야 한다. |
\w{5,7} | 문자,숫자,언더바('_')의 값이 5~7개 포함되어야 한다. |
e | 문자열"e"가 포함되어야 한다. |
\d+ | 숫자가 하나 이상 포함되어야 한다. |
am@ | 문자열"am@"가 포함되어야 한다. |
[a-z]{3,7} | a~z까지의 문자가 3~7개 포함되어야 한다. |
\. | 문자열'.'이 포함되어야 한다. |
\w+ | 문자,숫자,언더바의 값이 하나 이상 포함되어야 한다. |
위의 정규표현식 의미에 맞는 문자열을 생성 후 입력을 하게 되면
플래그를 확인할 수 있다.
'Hacking > DreamHack' 카테고리의 다른 글
[DreamHack] 드림핵 random-test (1) | 2023.11.17 |
---|---|
[DreamHack] 드림핵 Type c-j (0) | 2023.11.14 |
[DreamHack] 드림핵 baby-union (1) | 2023.11.14 |
[DreamHack] 드림핵 phpreg (0) | 2023.11.14 |
[DreamHack] 드림핵 Carve Party (0) | 2023.11.13 |