Rickrolling Django中间件惹恼潜在黑客
django-rickroll的Python项目详细描述
在django应用程序中处理恶意请求的新方法。
安装
从PYPI安装(稳定):
pip install django-rickroll
或github(dev):
pip install -e git://github.com/codeinthehole/django-rickroll.git#egg=django-rickroll
将'rickroll'添加到INSTALLED_APPS中,并将以下内容添加到 MIDDLEWARE_CLASSES:
'rickroll.middleware.HackingAttemptMiddleware'
用法
无论在何处检测到黑客企图,都会引发HackingAttempt异常 而中间件将使违规用户摇摇晃晃。
例如,在您的views.py:
from rickroll.exceptions import HackingAttempt def some_view(request): # ... if hacking_detected: raise HackingAttempt()
然后问题用户将被重定向到http://www.youtube.com/watch?v=dQw4w9WgXcQ。 可以使用设置RICKROLL_URL覆盖目标。
讨论
如果你的网站进行过渗透测试,测试公司很可能会操纵 向您的站点发送的每个请求中都有传递参数(查询 参数、post params、cookies等)。当你遇到一个参数 应该是一个整数,但有值../../../../../../etc/passwd,它不是 总是清楚“正确”的回答应该是什么。我觉得会很有趣 给瑞克洛尔。