web常见漏洞基础原理

XSS

跨站脚本

盗取用户信息,钓鱼,制造蠕虫等

1. 存储型

访问网站时触发,xss脚本存储在web服务器上

2. 反射型

访问携带xss脚本链接时触发,在url上执行脚本

3. DOM型

访问携带xss脚本链接时触发,脚本通过JavaScript写入hash

三种类型区分

这里写图片描述

CSRF

跨站请求劫持

利用用户已登录的身份,在用户毫不知情的情况下,,以用户的名义完成非法操作

造成原因:

对关键操作缺少确认机制

利用效果:

被转账,被发垃圾评论,被投票等,制造蠕虫

原理分析:

这里写图片描述
这里写图片描述

黑客将写有下面攻击代码的恶意网页嵌入iframe,再将iframe放到一个看起来正常的网页,当用户点开网页时立马被自动转账,iframe隐藏了表单提交的跳转

这里写图片描述

利用条件:
  1. 被害用户已经完成身份认证
  2. 新请求的提交不需要重新身份认证
  3. 攻击者必须了解web app请求的参数构造
  4. 诱使用户触发攻击命令(社工)
防范方法:
  1. Captcha(验证码)
  2. anti-CSRF token
  3. Referrer头
  4. 降低会话超时时间

点击劫持

通过调整iframe或其他标签透明度将框架隐藏误导用户点击而产生的攻击

这里写图片描述

URL跳转

借助未验证的URL跳转,将应用程序引导到不安全的第三方区域(恶意网站)

这里写图片描述

1. Header头跳转

这里写图片描述

2. JavaScript跳转

这里写图片描述

3. META标签跳转

这里写图片描述

常见案例

这里写图片描述

SQL注入

数据当做代码来执行

获取管理员用户名,密码,手机号,身份证等数据库信息
获取服务器权限
植入webshell,后门
读取服务器敏感文件
万能密码

过程
  1. 获取用户请求参数
  2. 拼接到代码中
  3. SQL语句按照我们构造参数的语义执行成功
必备条件
  1. 可以控制输入的数据
  2. 服务器要执行的代码拼接了控制的数据
利用
  1. 万能密码(– 即杠杠空格,在SQL语句中为注释符)
    这里写图片描述
    这里写图片描述
  2. 获取数据库版本
    这里写图片描述
  3. 获取数据库当前用户
    这里写图片描述

命令注入

  1. DOS命令
  2. BASH命令
    这里写图片描述
PHP执行命令的函数
  • system
  • exec
  • shell_exec
  • eval
实例

这里写图片描述
这里写图片描述
注意 有时需要URL转义,这里的%26就是&

文件操作漏洞

常见文件操作
  • 上传头像,附件
  • 下载应用,附件
危害
  • 文件上传漏洞
    这里写图片描述
  • 任意文件下载
    • 未验证下载文件格式名
    • 未限制请求路径
  • 文件包含漏洞
    • 本地文件包含
    • 远程文件包含
      这里写图片描述
      这里写图片描述
常用文件包含函数
  • include()
  • require()
  • include_once()
  • require_once()
本地测试注意

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值