我目前正在为一个应用程序(Burp套件)构建一个扩展,我似乎无法使请求库和Jython之间的交互工作。你知道吗
让我解释一下我的情况:
endpoints = ['a','b','c','d','e']
#I have a list of str urls
for URL in urlList:
for endpoint in endpoints
newURL = URL + endpoint
getResponse = requests.get(newURL)
postResponse = requests.post(newURL)
getResponseText = getResponse.text
postResponseText = postResponse.text
if ("Very specific error" in getResponseText):
getEndpointFound = True
if ("Very specific error" in postResponseText):
postEndpointFound = True
URL来自burp扩展,为URL格式(Java)。然后我将其转换为字符串并将其传递给requests.get
或requests.post
。你知道吗
这部分工作很好,我基本上是这样做的。你知道吗
urlList.append(str(initialUrl)) #Initial URL comes from requestInfo.getUrl() from Burp API
正如我所说,这是可行的。添加端点的请求可以正常工作。你知道吗
当我想用“手工制作的url”发送请求时,问题就来了
splitURL = str(initialUrl).split("/")
urlList.append((splitURL[0] + "/" + splitURL[1] + "/" + splitURL[2] + "/"))
上面的代码基本上将“source”URL添加到urlList
。例如,如果我们有www.example.com/index
,那行将www.example.com
添加到urlList
。你知道吗
当我用这个URL发出请求时,我得到以下错误。你知道吗
File "C:\Users\User\Desktop\BurpExtender\BurpExtension-master\manuTest.py", line 111, in searchEndpoint
getResponse = requests.get(newURL)
File "C:\Python27\Lib\site-packages\requests\api.py", line 75, in get
return request('get', url, params=params, **kwargs)
File "C:\Python27\Lib\site-packages\requests\api.py", line 60, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Python27\Lib\site-packages\requests\sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "C:\Python27\Lib\site-packages\requests\sessions.py", line 686, in send
r.content
File "C:\Python27\Lib\site-packages\requests\models.py", line 828, in content
self._content = b''.join(self.iter_content(CONTENT_CHUNK_SIZE)) or b''
File "C:\Python27\Lib\site-packages\requests\models.py", line 750, in generate
for chunk in self.raw.stream(chunk_size, decode_content=True):
File "C:\Python27\Lib\site-packages\requests\models.py", line 750, in generate
for chunk in self.raw.stream(chunk_size, decode_content=True):
File "C:\Python27\Lib\site-packages\urllib3\response.py", line 560, in stream
for line in self.read_chunked(amt, decode_content=decode_content):
File "C:\Python27\Lib\site-packages\urllib3\response.py", line 766, in read_chunked
decoded = self._flush_decoder()
File "C:\Python27\Lib\site-packages\urllib3\response.py", line 408, in _flush_decoder
return buf + self._decoder.flush()
File "C:\Users\User\Desktop\BurpExtender\jython-standalone-2.7.1.jar\Lib\zlib.py", line 244, in flush
File "C:\Users\User\Desktop\BurpExtender\jython-standalone-2.7.1.jar\Lib\zlib.py", line 281, in _get_inflate_data
zlib.error: java.util.zip.DataFormatException: invalid distance too far back
你知道怎么回事吗?我无法区分初始url(str(requestInfo.getUrl())
)和我使用split然后添加创建的url
目前没有回答
相关问题 更多 >
编程相关推荐