Держите сессию в urllib - PullRequest
       25

Держите сессию в urllib

0 голосов
/ 17 апреля 2020

При выполнении вызова CTF нас просят ввести MD5 га sh определенной 'ключа' в течение нескольких миллисекунд, поэтому я пытаюсь автоматизировать задачу, подобную этой, в Python3 :

import re
import urllib.request
import urllib.parse
import hashlib

url = 'http://random.page'

page = urllib.request.urlopen(url)
header = {}
header['Set-Cookie'] = page.info()['Set-Cookie']
html = page.read().decode('utf-8')
key = re.search("<h3 align='center'>+.*</h3>", html).group(0)[19:-5]
md5 = hashlib.md5(key.encode()).hexdigest()

data = {'hash':md5}
post_data = urllib.parse.urlencode(data).encode('ascii')
request = urllib.request.Request(url, data=post_data, headers=header)
response = urllib.request.urlopen(request)
print(response.read().decode('utf-8'))

Я хочу, чтобы тот же сеанс, что и , 'ключ' менялся при каждом запросе, поэтому я пытаюсь использовать один и тот же повар ie. Но это не работает, и он отправляет MD5 ha sh старого ключа, пока генерируется новый ключ. В чем проблема?

...