我在web.py utils.safeunicode函數中發現了一個錯誤。該版本是0.36web.py safeunicode函數錯誤?
>>> import web
>>> app=web.application(('/hello','hello'),locals())
>>> class hello:
... def GET(self):
... return 'hello world'
#it's the normal request
>>> app.request('/hello').data
'hello world'
#the Error request
>>> app.request('hello\xbf').data
...
UnicodeDecodeError: 'utf8' codec can't decode byte 0xbf in position 6: unexpected code byte
我嘗試了一些web.py網站,如「http://web.site/index%bf」,他們都響應狀態500或例外。那麼這是一個錯誤還是脆弱性?
我固定utils.py線342
elif t is str:
ooxxxxoo=obj.decode(encoding,'ignore')
return ooxxxxoo
那麼它去好了。但真的有安全嗎?