1.案例流程图:

2.django防止csrf的方式:

1 ) Django中默认打开csrf中间件。settings.py文件中:

MIDDLEWARE_CLASSES = ('django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware', # django默认启用了csrf防护,只针对post提交'django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.auth.middleware.SessionAuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware','django.middleware.security.SecurityMiddleware',
)

2 ) 表单post提交数据时加上{% csrf_token %}标签。

3.防御原理:

1 ) 渲染模板文件时在页面生成一个名字叫做csrfmiddlewaretoken的隐藏域。

2 ) 服务器交给浏览器保存一个名字为csrftoken的cookie信息。
3 ) 提交表单时,两个值都会发给服务器,服务器进行比对,如果一样,则csrf验证通过,否则失败。

Django项目--csrf攻击相关推荐

  1. 第三百九十二节,Django+Xadmin打造上线标准的在线教育平台—sql注入攻击,xss攻击,csrf攻击...

    第三百九十二节,Django+Xadmin打造上线标准的在线教育平台-sql注入攻击,xss攻击,csrf攻击 sql注入攻击 也就是黑客通过表单提交的地方,在表单里输入了sql语句,就是通过SQL语 ...

  2. 利用django中间件CsrfViewMiddleware防止csrf攻击

    一.在django后台处理 1.将django的setting中的加入django.contrib.messages.middleware.MessageMiddleware,一般新建的django项 ...

  3. python middleware模块_详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击...

    一.在django后台处理 1.将django的setting中的加入django.contrib.messages.middleware.MessageMiddleware,一般新建的django项 ...

  4. django防止csrf跨域伪造攻击

    Csrf跨域伪造攻击:使用当前浏览器还在生效状态的cookie对指定网站进行操作.最初针对的是银行网站的转账. Django本身会对csrf进行校验,在django的1.4版本之前,csrf默认关闭, ...

  5. Django从理论到实战(part53)--CSRF攻击

    学习笔记,仅供参考,有错必纠 摘自:某网课笔记 文章目录 CSRF攻击 CSRF攻击概述 CSRF攻击原理 防御CSRF攻击 CSRF攻击 CSRF攻击概述 CSRF(Cross Site Reque ...

  6. Django项目出现: 禁止访问(403),CSRF验证失败,相应中断

    CSRF验证失败,相应中断  错误信息为: 查看错误信息,不难发现,我们在上面问题中有一个{% csrf_token %},这是一个网络漏洞,在所有表单提交中,都需要添加并且必须放在format的后面 ...

  7. 第九章 Django框架——csrf请求伪造和csrf_token使用

    第九章 Django框架--csrf请求伪造和csrf_token使用 一.csrf请求伪造 二.csrf_token使用 三.简单的csrf_token应用 四.Ajax使用csrf_token 一 ...

  8. django项目学习之QQ登录

    最近在用django框架写一个商城项目(前后端分离),里面用到的一些技术其他项目也可以借鉴,于是就想写一些博客记录,以防自己忘记,今天先写一个关于登录接口中引入QQ登录接口的流程. 关于QQ登录接口的 ...

  9. Django与CSRF 、AJAX

    CSRF(Cross-site request forgery)跨站请求伪造,是一种常见的网络攻击手段,具体内容和含义请大家自行百度. Django为我们提供了防范CSRF攻击的机制. 一.基本使用 ...

最新文章

  1. idea怎么配置spring
  2. .net 5.0 中的 JsonConsole
  3. Flowable 数据库表结构 ACT_ID_USER
  4. PHP框架有没有前途?是否适用于复杂的web开发框架
  5. VB版双语对照制作助手的设计与实现
  6. linux 实验指导书,linux操作系统实验指导书新 - 图文
  7. 堆排序(php实现)
  8. java manualbuffer_FlatBuffer Java Bean自由转换
  9. c++之按距离某点的距离排序
  10. Spring Cloud微服务实战:手把手带你整合eurekazuulfeignhystrix(附源码)
  11. 关于数组增减Array 和list的区别
  12. windows网络编程头文件注意事项
  13. 授狗l输入法linux,[最好]狗狗输入法下载→狗狗输入法下载
  14. java中uri与url的区别_URL和URI的区别与总结
  15. 日均5亿查询量,京东到家订单中心的ES架构演进
  16. Python开发图形可视化界面程序(一)
  17. matlab stem函数坐标轴_在MATLAB中可以设置坐标轴的函数详解
  18. 期刊论文和会议论文的区分与识别
  19. 计算机考研复试---中文自我介绍模板+英文自我介绍模板+项目毕设介绍模板( 干货满满!!!)
  20. 2021-2027全球与中国城市空中交通市场现状及未来发展趋势

热门文章

  1. boost锁机制中Semaphores的介绍
  2. Android Glide图片加载框架(四)回调与监听
  3. 264,avs重要的变量:
  4. 社会生活、工作中的著名法则
  5. Springboot 项目中过滤器的使用
  6. linux : ulimit 命令使用说明、参数解说
  7. 【Linux】Linux中常用操作命令
  8. 【重点突破】—— React实现富文本编辑器
  9. 多表连接时USING和ON的区别,USING会去掉重复列,ON显示重复列。
  10. 在单文档中显示我的第一个对话框