三位一体的漏洞分析方法-web应用安全测试方法
本文转自乌云知识库
0x00 前言
节选自: http://www.owasp.org.cn/OWASP_Conference/owasp-20140924/02OWASPWeb20140915.pdf
- 4.1 主动式(全自动 ):Web2.0、交互式漏洞扫描
- 4.2 半自动式漏洞分析:业务重放、url镜像,实现高覆盖度
- 4.3 被动式漏洞分析:应对0Day和孤岛页面
0x01 主动式(全自动 )Web扫描
• 使用常见的漏洞扫描器 • 自动fuzz,填充各种攻击性数据 • 业务逻辑混淆,导致服务出错

• 局限: • 难以处理高交互式应用 • 只能发现暴露给用户(搜索引擎)的链接,难以覆盖100%的业务链接 • 解决方法:引入半被动式漏洞分析方法 • 在人工未参与的情况下,50%以上的Web应用系统存在高危漏洞
0x02 半自动式漏洞分析:业务重放+url镜像,实现高覆盖度
1. 方法一:业务重放
- 测试过程使用 burpsuite、fiddler:
- HTTP(S)业务流量录制与重放扫描
- 手工修改业务数据流
- 对手机APP也适用
检测逻辑漏洞: •水平权限绕过 •订单修改 •隐藏域修改

2. 方法二: 手工记录
• 从日志中获取url记录
1. Fiddler的Url日志
2. 获取Apache、Nginx、Tomcat的access日志
3. 从旁路镜像中提取url日志 (安全人员不用再被动等待应用 的上线通知)
- 从Fiddler2、 burpsuite 导出Url日志 再导入到漏洞扫描器扫描


2.获取Apache、Nginx、Tomcat的access日志
- 360-日志宝
- Splunk
- 各种日志审计系统
- 从旁路镜像中提取url日志 (安全人员不用再被动等待应用 的上线通知) 如:jnstniffer、 360鹰眼、各大IT公司等

• 从旁路镜像中获取url列表,能高效地检出大量的漏洞,不需要运维人员通知,便可以获知业务系统的上线情况并执行漏洞扫描任务。
0x03 半自动式漏洞分析:业务重放、url镜像,高覆盖度
- 局限 ① 时间滞后/token: 流量重发时,不一定能100%重现当时的业务流程及出现的bug。 ② 依然难以覆盖100%的业务链接,存在孤岛页面。(正常数据流不触发) ③ 漏洞检测(防御)技术滞后于攻击技术,无法解决0day漏洞 - 解决方法:引入全被动式漏洞分析
0x04 全被动式漏洞分析:
国外产品:Nessus PVS被动扫描

全被动式漏洞分析(不发送任何数据包)
- 全被动式扫描VS主动式漏洞扫描器 相同点:都是根据双向数据包的内容,判断漏洞是否存在 不同点: 检测方式:被动式扫描不需要联网,不会主动发出url请求,也不发出任何数据包 PVS和IDS的区别: • 更关注漏洞感知,而不是入侵,如页面出现sql错误信息,可触发pvs报警,但不会触发ids报警。 • 报警结果不一样:pvs按照漏洞的风险等级,ids按照黑客的攻击手段报警 • 双向分析数据报文 • 更关注于web应用,OWASP TOP10的攻击手段 • 按攻击影响报警(分析双向报文),而不是按攻击手段去报警(分析单向报文) Nessus的PVS只是一个思路,它专注及网络及主机漏洞,对Web应用的检测能力有限,需要重新设计一个针对web的PVS出来:WebPVS,同步接受用户提交的所有业务请求,通过扫描引擎识别请求,一旦发现恶意请求或者该请求返回数据,触发报警处理

• WebPVS的优点: • 虽然依然难以覆盖100%的业务链接,但是能覆盖100%已经发生的业务链接。 • 能与黑客同步发现各种漏洞 • 由于HTTP协议是固定,因此能够根据回包情况发现0day攻击。
三位一体的漏洞分析方法-web应用安全测试方法的更多相关文章
- web前后端分离漏洞分析防御
web前后端分离漏洞分析防御 漏洞分析,主要漏洞有 一.跨站脚本攻击XSS 程序 + 数据 = 结果:攻击后,数据夹杂一部分程序(执行代码),导致结果改变: 1.XSS攻击注入点 (a):HTML节点 ...
- Web 漏洞分析与防御之点击劫持(三)
原文地址:Web 漏洞分析与防御之点击劫持(三) 博客地址:http://www.extlight.com 一.全称 点击劫持,顾名思义,用户点击某个按钮,却触发了不是用户真正意愿的事件. 二.原理 ...
- Web 漏洞分析与防御之 CSRF(二)
原文地址:Web 漏洞分析与防御之 CSRF(二) 博客地址:http://www.extlight.com 一.全称 跨站请求伪造(Cross-site Request Forgery) 二.原理 ...
- Web 漏洞分析与防御之 XSS(一)
原文地址:Web 漏洞分析与防御之 XSS(一) 博客地址:http://www.extlight.com 一.全称 跨站脚本攻击(Cross Site Scripting) 二.原理 通过在网站中的 ...
- 安全学习概览——恶意软件分析、web渗透、漏洞利用和挖掘、内网渗透、IoT安全分析、区块链、黑灰产对抗
1 基础知识1.1 网络熟悉常见网络协议:https://www.ietf.org/standards/rfcs/1.2 操作系统1.3 编程2 恶意软件分析2.1 分类2.1.1 木马2.1.2 B ...
- [WEB安全]phpMyadmin后台任意文件包含漏洞分析(CVE-2018-12613)
0x00 简介 影响版本:4.8.0--4.8.1 本次实验采用版本:4.8.1 0x01 效果展示 payload: http://your-ip:8080/index.php?target=db_ ...
- Java反序列化漏洞分析
相关学习资料 http://www.freebuf.com/vuls/90840.html https://security.tencent.com/index.php/blog/msg/97 htt ...
- FFmpeg任意文件读取漏洞分析
这次的漏洞实际上与之前曝出的一个 CVE 非常之类似,可以说是旧瓶装新酒,老树开新花. 之前漏洞的一篇分析文章: SSRF 和本地文件泄露(CVE-2016-1897/8)http://static. ...
- SpringBoot SpEL表达式注入漏洞-分析与复现
目录 0x00前言 0x01触发原因 0x02调试分析 0x03补丁分析 0x04参考文章 影响版本: 1.1.0-1.1.12 1.2.0-1.2.7 1.3.0 修复方案:升至1.3.1或以上版本 ...
随机推荐
- 《Java编程思想》笔记 第十九章 枚举类型
1.基本enum特征 所有创建的枚举类都继承自抽象类 java.lang.Enum; 一个枚举类,所有实例都要在第一句写出以 ,隔开. 如果只有实例最后可以不加 : 枚举类因为继承了Enum,所以再不 ...
- HDU-3555
Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submi ...
- facets学习(1):什么是facets
ML 数据集可以包含数亿个数据点,每个数据点由数百(甚至数千)的特征组成,几乎不可能以直观的方式了解整个数据集.为帮助理解.分析和调试 ML 数据集,谷歌开源了 Facets,一款可视化工具. Fac ...
- hdu 1068(最大独立集)
Girls and Boys Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- 统计mysql库中每张表的行数据
修改数据库配置文件:vim /etc/my.cnf [client] user=username password=password 使用shell脚本统计表中的行数据:count.sh #!/bin ...
- mongodb复制集搭建
注:mongodb当前版本是3.4.3 1.准备三个虚拟机做服务器 192.168.168.129:27017 192.168.168.130:27017 192.168.168.131:27017 ...
- Dart类
Dart中没有访问控制符,无论类还是方法默认都是public 1.构造函数 构造函数可以没有方法体,并且this可以直接在传参时直接对实例赋值 Bicycle(this.cadence, this.s ...
- POJ 3126 Prime Path【从一个素数变为另一个素数的最少步数/BFS】
Prime Path Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 26475 Accepted: 14555 Descript ...
- 礼物(BFS)
礼物 时间限制: 1 Sec 内存限制: 64 MB提交: 39 解决: 4[提交][状态][讨论版] 题目描述 给出一个n行m列的点阵,“.”表示可通行格子,“#”表示不可通行格子,“K”表示国 ...
- Linux命令之fdisk
fdisk fdisk [选项] <disk> 改变分区表 fdisk [选项] –l <disk> 列出所有分区表 fdisk –s <partition(分区编号 ...