Django 的安全
1.xss跨站脚本攻击 - 恶意攻击者将代码通过网站注入到其他用户浏览器中的 攻击方式:
1.攻击者会把恶意 JavaScript 代码作为普通数据放入
到网站数据库中;
2.其他用户在获取和展示数据的过程中,运行
JavaScript 代码;
3.JavaScript 代码执行恶意代码(调用恶意请求,发送
数据到攻击者等等)。
#参考:https://i.cnblogs.com/posts/edit
规避方法:不要直接返回html内容,要return render(request,'jobdetail.html',context)
2.SQL 注入攻击
攻击者直接对网站数据库执行任意 SQL语句,在无需 用户权限的情况下即可实现对数据的访问、修改甚至是删除
Django 的 ORM 系统自动规避了 SQL 注入攻击
3.CSRF 跨站请求伪造: 恶意攻击者在用户不知情的情况下,使用用户的身份来操作
1. 黑客创建一个 请求网站 A 类的 URL 的 Web 页面,放在恶意网站 B 中 ,这个文件包含了一个创建
用户的表单。这个表单加载完毕就会立即进行提交。
2. 黑客把这个恶意 Web 页面的 URL 发送至超级管理员,诱导超级管理员打开这个 Web 页面。
解决办法:
1.把@csrf_exempt 去掉
2.在表单模板中添加 {% csrf_token %}
用一个例子来演示会更加清晰