[原创]解读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年,微服务技术得以迅猛普及,和容器技术一起成为这两年中最吸引眼球的技术热 ...
随机推荐
- maven安装之后,或者升级之后遇到的问题:could not find or load main class org.codehaus.plexus.class.....
从maven2升级到maven3或者从maven3降级到maven2,M2_HOME环境变量改变后,在终端执行mvn -v,出现如下错误: Exception in thread "main ...
- Linux下定时切割Mongodb数据库日志并删除指定天数前的日志记录
此为在网络上找来的,觉得很好! 实现目的: 对Mongodb数据库日志按天保存,并且只保留最近7天的日志记录. 具体操作: 使用Mongodb数据库自带的命令来切割日志 ps -def | grep ...
- C#.NET股票历史数据采集,【附18年历史数据和源代码】
阅读目录 1.数据采集需求 2.股市数据接口 3.数据库设计 4.关键信息采集 5.源代码和数据库 如果用知乎,可以关注专栏:.NET开源项目和PowerBI社区 重点重点:我没有买股票,没有买股票, ...
- Spring bean作用域
全当知识要点记录了,大家随意踩踩. spring的作用域有以下几种singleton作用域prototype作用域request作用域session作用域global-session作用域 1. si ...
- 【python】FTP客户端
Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于上传或下载文件,函数列举如下 ftp登陆连接 from ftplib import FTP #加 ...
- [持续更新]一些zyys的题的集合
Luogu P1119 灾后重建 Sol:对于每个中转点K,需且仅需以此松弛一次 Key words:Floyd,本质活用 考题 路径数 题目描述: Euphemia到一个N*N的药草田里采药,她从左 ...
- HDU King (非连通图的差分约束,经典好题)
King Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...
- [Android] 开发第五天
布之前开发的 Android 电话拨号器 Android-Studio 已经带了发布菜单, Build -> Generate Signed APK 进入发布界面 我们新增一个证书,或者使用已有 ...
- [C#][Log4Net] 配置
<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSe ...
- CentOS–root密码忘记的解决办法
一.重启系统,如图:GRUB: 在引导装载程序菜单上,用上下方向键选择你忘记密码的那个系统键入“e” 来进入编辑模式. 2.接下来你可以看到如下图所示的画面,然后你再用上下键选择最新的内核(这里 ...