[Django+微信小程序开发]10Django常见的web攻击以及如何防范

Django常见的Web攻击以及如何防范

sql注入攻击和防范

  1. 危害

    1. 非法读取篡改删除数据库中的数据
    2. 盗取用户的各类敏感信息,获取利益
    3. 通过修改数据库来修改网页上的内容
    4. 注入木马
  2. 方法

    1. 通过在表单中注入一些sql语句,比如 OR 1=1 # 获得登陆的效果.# 在sql中是注释的意思
      代码示例
  3. Django如何做

    1. 表单验证
      1. 前端表单验证
      2. 后端进行表单验证
    2. 自定义查询用户登陆的逻辑
    3. django的orm会对特殊字符转义,orm会确保用户输入数据的安全性(最重要的地方)

xss攻击和防范

  1. xss跨站脚本攻击(Cross Site Scripting)的危害
    1. 盗取 各类用户账号,如用户网银账号,各类管理员账号
    2. 盗取企业重要的具有商业价值的资料
    3. 非法转账
    4. 控制受害者及其向其他网站发起攻击,注入木马等等
  2. 攻击流程
    在这里插入图片描述
  3. xss攻击防护
    1. 首先代码中对用户输入的地方二号变量都需要仔细检查长度和对"< > , ; ’ "等字符做过滤.
    2. 避免直接在cookie中泄露用户隐私,例如emaill,密码等通过cookie和系统ip绑定来降低cookie泄露的危险.
    3. 尽量采用post而非GET提交表单

csrf攻击和防范

  1. CSRF跨站请求伪造(Cross-site request forgery)的危害
    1. 以你的名义发邮件
    2. 盗取你的账号
    3. 购买商品
    4. 虚拟货币转账
  2. 攻击原理
    在这里插入图片描述
    在这里插入图片描述
  3. Django解决办法
    1. 提交表单的时候使用{% csrf_token %}来保证安全
发布了63 篇原创文章 · 获赞 0 · 访问量 1199

猜你喜欢

转载自blog.csdn.net/qq_37463791/article/details/104204625