本文转自乌云知识库

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:
  1. HTTP(S)业务流量录制与重放扫描
  2. 手工修改业务数据流
  3. 对手机APP也适用

检测逻辑漏洞:  •水平权限绕过  •订单修改  •隐藏域修改

2. 方法二: 手工记录


• 从日志中获取url记录

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

2.获取Apache、Nginx、Tomcat的access日志

  • 360-日志宝
  • Splunk
  • 各种日志审计系统
  1. 从旁路镜像中提取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应用安全测试方法的更多相关文章

  1. web前后端分离漏洞分析防御

    web前后端分离漏洞分析防御 漏洞分析,主要漏洞有 一.跨站脚本攻击XSS 程序 + 数据 = 结果:攻击后,数据夹杂一部分程序(执行代码),导致结果改变: 1.XSS攻击注入点 (a):HTML节点 ...

  2. Web 漏洞分析与防御之点击劫持(三)

    原文地址:Web 漏洞分析与防御之点击劫持(三) 博客地址:http://www.extlight.com 一.全称 点击劫持,顾名思义,用户点击某个按钮,却触发了不是用户真正意愿的事件. 二.原理 ...

  3. Web 漏洞分析与防御之 CSRF(二)

    原文地址:Web 漏洞分析与防御之 CSRF(二) 博客地址:http://www.extlight.com 一.全称 跨站请求伪造(Cross-site Request Forgery) 二.原理 ...

  4. Web 漏洞分析与防御之 XSS(一)

    原文地址:Web 漏洞分析与防御之 XSS(一) 博客地址:http://www.extlight.com 一.全称 跨站脚本攻击(Cross Site Scripting) 二.原理 通过在网站中的 ...

  5. 安全学习概览——恶意软件分析、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 ...

  6. [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_ ...

  7. Java反序列化漏洞分析

    相关学习资料 http://www.freebuf.com/vuls/90840.html https://security.tencent.com/index.php/blog/msg/97 htt ...

  8. FFmpeg任意文件读取漏洞分析

    这次的漏洞实际上与之前曝出的一个 CVE 非常之类似,可以说是旧瓶装新酒,老树开新花. 之前漏洞的一篇分析文章: SSRF 和本地文件泄露(CVE-2016-1897/8)http://static. ...

  9. 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或以上版本 ...

随机推荐

  1. tcpdump学习(1):安装

    目前学习mysql,其中,提到使用tcpdump来进行query的抓包日志,那么,首先就要安装tcpdump. 在ubuntu中,tcpdump是缺省安装的,如果没有,则按照以下步骤做: 1)安装li ...

  2. Android6.0获取运行时权限

    照着<第一行代码>打代码,然并卵,感叹技术进步的神速.最后提醒一点:IT类的书籍一定要注意出版时间!出版时间!出版时间!重要的事情说三遍 问题出在android6.0的权限获取问题上,以前 ...

  3. 【hdoj_1051】WoodenSticks

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=1051 题意可以理解为:给定若干个二元数对,要将这些数对分为不同的组,同一组中的若干个二元数对可以排列成一个 ...

  4. Python 解释器中方向键无法使用的解决方法

    如下: SyntaxError: invalid syntax >>> ^[[A File "<stdin>", line 1 ^ SyntaxErr ...

  5. MySQL阅读笔记

    左连接:包含所有的左边表中的记录甚至是右边表中没有和它匹配的记录.右连接:包含所有的右边表中的记录甚至是左边表中没有和它匹配的记录. select ename,deptname from emp le ...

  6. JAVA的线程学习、并发线程的学习

    http://blog.csdn.net/column/details/multithreading.html http://blog.csdn.net/fhd001/article/details/ ...

  7. EasyUI中combobox的代码实例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. scrapy 工作流程

    Scrapy的整个数据处理流程由Scrapy引擎进行控制,其主要的运行方式为: 引擎打开一个域名,蜘蛛处理这个域名,然后获取第一个待爬取的URL. 引擎从蜘蛛那获取第一个需要爬取的URL,然后作为请求 ...

  9. HDU 4355.Party All the Time-三分

    Party All the Time Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  10. HDU 变形课 1181【DFS/BFS】

    变形课 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others) Total Submissi ...