mirror of
https://github.com/vee1e/mitmproxy.git
synced 2026-09-03 03:07:18 +00:00
fix tnetstread crash found via fuzzing
This commit is contained in:
parent
ca1229d60f
commit
fcec63eebc
2 changed files with 2 additions and 1 deletions
|
|
@ -46,7 +46,7 @@ class FlowReader:
|
|||
if mdata["type"] not in FLOW_TYPES:
|
||||
raise exceptions.FlowReadException("Unknown flow type: {}".format(mdata["type"]))
|
||||
yield FLOW_TYPES[mdata["type"]].from_state(mdata)
|
||||
except (ValueError, TypeError) as e:
|
||||
except (ValueError, TypeError, IndexError) as e:
|
||||
if str(e) == "not a tnetstring: empty file":
|
||||
return # Error is due to EOF
|
||||
raise exceptions.FlowReadException("Invalid data format.")
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ from mitmproxy.io import FlowReader, tnetstring
|
|||
class TestFlowReader:
|
||||
@given(binary())
|
||||
@example(b'51:11:12345678901#4:this,8:true!0:~,4:true!0:]4:\\x00,~}')
|
||||
@example(b'0:')
|
||||
def test_fuzz(self, data):
|
||||
f = io.BytesIO(data)
|
||||
reader = FlowReader(f)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue