Begin some simple fuzzing with pathod.
Finally doing what I started writing pathod for in the first place...
This commit is contained in:
parent
e608d10f45
commit
7835e0c2c7
|
@ -3,6 +3,7 @@ MANIFEST
|
|||
/dist
|
||||
/tmp
|
||||
/doc
|
||||
/venv
|
||||
*.py[cdo]
|
||||
*.swp
|
||||
*.swo
|
||||
|
|
|
@ -463,7 +463,7 @@ class Request(HTTPMsg):
|
|||
"""
|
||||
Returns a URL string, constructed from the Request's URL compnents.
|
||||
"""
|
||||
return utils.unparse_url(self.scheme, self.host.decode("idna"), self.port, self.path).encode('ascii')
|
||||
return utils.unparse_url(self.scheme, self.host.encode("idna"), self.port, self.path).encode('ascii')
|
||||
|
||||
def set_url(self, url):
|
||||
"""
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
#!/bin/sh
|
||||
# Assuming:
|
||||
# mitmproxy/mitmdump is running on port 8080 in straight proxy mode.
|
||||
# pathod is running on port 9999
|
||||
|
||||
BASE="/Users/aldo/git/public/pathod/venv/bin/pathoc -eo -I 200,400,502 -p 8080 localhost "
|
||||
$BASE -n 1000 "get:'http://localhost:9999':ir,@1"
|
||||
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
import tservers
|
||||
|
||||
"""
|
||||
A collection of errors turned up by fuzzing.
|
||||
"""
|
||||
|
||||
class TestFuzzy(tservers.HTTPProxTest):
|
||||
def test_idna_err(self):
|
||||
req = r'get:"http://localhost:%s":i10,"\xc6"'
|
||||
p = self.pathoc()
|
||||
assert p.request(req%self.server.port).status_code == 400
|
||||
|
Loading…
Reference in New Issue