[原创]解读2017 OWASP Top10漏洞体系(含接口安全)
2017年4月初,OWASP发布了关于Top10的征求意见版。 争议最大的是A7攻击检测与防范不足。 但我主要是按照日常的渗透漏洞进行解读分析的。
解读完毕后,首发t00ls原创文章。
https://www.t00ls.net/viewthread.php?from=notice&tid=39385
0x00 Top 10
OWASP Top10漏洞体系长期以来作为Web攻防白帽子既基础又核心的一个标准。漏洞标准变化如下:

变化内容:
- 合并了2013-A4“不安全的直接对象引用”和2013-A7“功能级访问控制功能缺失”到2017-A4“无效的访问控制”。
- 增加了2017-A7:攻击检测与防范不足
- 增加了 2017-A10: 未受保护的API
- 去掉了: 2013-A10:未验证的重定向和转发
- 根据增删内容,标准中多次提到了API安全的关键字
- 根据解说内容,标准逐渐向抽象性漏洞过渡和延伸,包括登录体系、会话权限等系列的逻辑漏洞
0x02 漏洞关联
官方提到 T10围绕主要风险区域进行整理,而不是密封,不重叠或严格的分类。 其中一些是围绕着攻击者整理的,一些是脆弱性,一些是防御,一些是资产。 组织应考虑制定措施,以消除这些问题。Top10 与日常渗透的实际的漏洞点结合起来,关联如下:


当然硬性的把某个漏洞直接归类到An类型,也不是很友好,比如上传漏洞归到A4 – 失效的访问控制略显牵强,因为从数据包上面理解更像是注入,但文件包含、任意下载删除这基本和权限是有关的,所以暂时把文件操作类漏洞归纳为A4。虽然硬性归纳和漏洞堆叠 部分略显牵强,但这种类型的关联能够体现线性拓展以便进一步建模分析,用以滚雪球式充当产品漏报和误报的理论基础。
0x02 接口安全
本次更新,API关键字上镜率特别高,SO尝试单独对接口安全进行汇总分析。 科普到关于API的定义和范围,简单理解就是接口,连接两部分代码的粘合剂。我们可以在APIStore搜索到关于N多产品分类的接口,但这些API对于已有漏洞挖掘经验来分析,规律统一,所以我们按照日常漏洞挖掘的思维去分类,如下:

回想Web安全漏洞挖掘主要集结在输入输出、登录体系、会话权限三大类(包含了常见的WEB漏洞以及逻辑漏洞),当然依据目前移动互联网的趋势还有多种文件及数据类型XML JSON RPC GWT 的接口,所以有必要针对接口安全进行细分及挖掘。渗透过程中经常会遇到手机APP、小程序、微信公众号类等,好多都是基于WebService,所以仍然可以找到类似Web一样的服务端漏洞。
Tips:对APP进行反编译,在内部根据域名和IP进行正则匹配,往往也是个薄弱出发点。

我们再回看一个关于支付接口的漏洞分类,以便进一步佐证接口安全在渗透的地位。当然如果考虑防御的话,更多考虑的是机制是协同。

另外关于接口数据的关联整合,这个一直想表达的,但碍于案例,目前尚未发布。举例说明通过登录接口部分不健全机制,可以获得用户名对应的隐藏几位的手机号,根据手机号可获得用户名。还可以根据用户名能够对应论坛的个人属性。这样经过大量数据爬虫后,可以对应“用户名---手机号---个人属性”的关联信息。这部分可能在房产、金融等领域会有突出的效果。
0x03 信息参考
OWASP Top 10 - 2017 RC1-English.pdf
OWASP Top 10 - 2017 RC1-chinese.pdf (DSRC翻译)
OWASP top10 全局关联图个人归纳总结
链接:http://pan.baidu.com/s/1nuCOMmd 密码:hrup

[原创]解读2017 OWASP Top10漏洞体系(含接口安全)的更多相关文章
- 【OWASP TOP10】2021年常见web安全漏洞TOP10排行
[2021]常见web安全漏洞TOP10排行 应用程序安全风险 攻击者可以通过应用程序中许多的不同的路径方式去危害企业业务.每种路径方法都代表了一种风险,这些风险都值得关注. 什么是 OWASP TO ...
- Android系列之Fragment(三)----Fragment和Activity之间的通信(含接口回调)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- OWASP TOP10(2017)
原文链接:https://www.t00ls.net/viewthread.php?from=notice&tid=39385
- 解读IEEE 7417的软件体系架构描述的概念模型
本文将解读标准IEEE Std 1471-2000(密集型软件的体系结构描述推荐实施规程)的概念模型图部分,从中一窥作为软件架构师的进行架构设计的思考角度与策略.如果我们把世界当做一场游戏,现在要玩的 ...
- 原创QQ影音DLL劫持漏洞+动画实战教程
1.什么是DLL DLL(Dynamic Link Library)文件为动态链接库文件,又称“应用程序拓展”,是软件文件类型.在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成 ...
- OWASP top10
PhishTank 是互联网上免费提供恶意网址黑名单的组织之一,它的黑名单由世界各地的志愿者提供,且更新频繁. 1.XSS 1.1. XSS简介 跨站脚本攻击,英文全称是Cross Site Scri ...
- Win95+IE3 – Win10+IE11全版本执行漏洞(含POC)
微软本月安全更新修复了一个潜藏了18年的IE远程代码执行漏洞(CVE-2014-6332),可以说是给windows吃了一颗大补丸.缺陷出现在VBScript的代码中,自Windows 95首次发布( ...
- 为你解读2017年Java开发前景如何
社会上普遍认为程序员是一份高薪职业,确实,相较于其他行业,大多数工作1-3年的程序员年收入都在10-20万.据权威机构统计,在所有的软件开发类人才中对Java开发人才的需求量最大,达到了60%-70% ...
- 解读2017之Service Mesh:群雄逐鹿烽烟起
https://mp.weixin.qq.com/s/ur3PmLZ6VjP5L5FatIYYmg 在过去的2016年和2017年,微服务技术得以迅猛普及,和容器技术一起成为这两年中最吸引眼球的技术热 ...
随机推荐
- mysql中的隐式转换
在mysql查询中,当查询条件左右两侧类型不匹配的时候会发生隐式转换,可能导致查询无法使用索引.下面分析两种隐式转换的情况 看表结构 phone为 int类型,name为 varchar EXPLAI ...
- StreamSets Data Collector Edge 说明
Data Collector Edge 是不包含界面的agent 安装 下载包 https://streamsets.com/opensource tar xf streamsets-datacoll ...
- MySql登陆密码忘记了 怎么办?
MySql登陆密码忘记了 怎么办?root密码:连root密码忘记没用root进修改mysql数据库user表咯 root密码: 方法一:MySQL提供跳访问控制命令行参数通命令行命令启MySQL服务 ...
- centos6.5下tomcat安装
1.安装JDK 安装:rpm –ivh jdk-7u5-linux-i586.rpm2.配置Tomcat 解压:tar -zxvf apache-tomcat-8.0.11.tar.gz 移动到/us ...
- phpstorm 光标设置
1.是否允许光标定位在行尾之后的任意位置Allow placement of caret after end of line 这个设置是上下换行的时候,光标可以定位在任意位置,只能通过方向键移动光标, ...
- 众安尊享e生·新全保通2017成人精选版60岁以后续保的保费清单
尊享e生·新全保通2017成人精选版--有社保的费用 https://www.zhongan.com/p/83881372?channelEnName=health 61-65男性 13028女性 8 ...
- 模板引擎文档 - layui.laytpl 介绍
<!DOCTYPE html> <html class="ui-page-login"> <head> <meta charset=&qu ...
- Django ORM-02
6.ForeignKey 相关操作 1.正向查找 正向查找:那么什么是正向查找,我们知道对于一对多或者多对一的情况,我们一般将ForeignKey设置在多的一边,比如我们的书籍与出版社一般是多对一的, ...
- OpenFeign使用笔记
是什么 Feign是一个声明式Web Service客户端.使用Feign能让编写Web Service客户端更加简单, 它的使用方法是定义一个接口,然后在上面添加注解,同时也支持JAX-RS标准的注 ...
- linux上安装oracle
Linux上安装Oracle 10g: http://69520.blog.51cto.com/59520/91156