- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
漏洞挖掘学习方法
导语:首先我会从一个较高的角度总结于我眼中何谓漏洞挖掘;然后详细讨论在软件漏洞挖掘过程中我们需要掌握的技能以及需要的知识和工具等下面由小编为大家整理的漏洞挖掘学习方法希望可以帮助到大家!
一、什么是漏洞挖掘
从某个角度来讲我们可以将漏洞挖掘工作比作玩迷宫游戏不同的是这个迷宫与我们平时所见的游戏中的迷宫略有不同:
(1)你无法立即看到它整体的外观;
(2)随着漏洞挖掘工作的深入这个迷宫的形状逐渐扩大;
(3)你将会拥有多个起点及终点但是无法确定这些点具体在里;
(4)最终这个迷宫可能永远也无法100%的完整但是却能够弄清楚A点至B点的一条完整路径
二、漏洞挖掘需要具备的知识
从事漏洞挖掘工作需要具备的知识是极其广泛的并且随着时间在不断改变也取决于你所研究的对象(web程序、桌面程序、嵌入式等等)不过万变不离其宗所需要掌握的知识领域却总可以认为是确定的我认为大致可以分为以下四个方面:
(1)程序正向开发技术这是一个开发者需要掌握的能力包括编程语言、系统内部设计、设计模式、协议、框架等拥有丰富编程经验与开发能力的人在漏洞挖掘过程中往往比那些只对安全相关领域有所了解的人员对目标应用能有更深入的理解从而有更高的产出
(2)攻防一体的理念这些知识涵盖了从基本的安全原则到不断变换的漏洞形态及漏洞缓解措施攻击和防御结合的理念能够有效帮助研究者既能够发现漏洞同时也能够快速给出有效的漏洞缓解措施和规避方法
(3)有效使用工具能够高效的使用工具能够快速将思路转化为实践这需要通过花时间去学习如何配置和使用工具将其应用于自己的任务并构建自己的工作流程来不断积累经验更进一步需要深入掌握所使用工具的原理以及如何对其进行二次开发以使得其能够更加高效的应用于当前的工作实际事实上我认为面向过程的学习方法往往比面向工具的学习方法更加高效以及有价值当自己发现一个在使用一个工具遇到瓶颈时先不要退缩尝试去改造它或者通过自己动手实践去完成能够适应当前工作的工具这往往能够帮助快速积累大量实践经验帮助我们以后更加高效的去实践漏洞挖掘工作
(4)对目标应用的理解最后也是最重要的作为一个漏洞挖掘人员对自己研究的应用程序在安全性方面必须要比这个程序的开发者或维护者有更深的理解这样你才能尽可能的发现这个程序中的漏洞并修复它
三、漏洞挖掘需要做什么
当我分析一个应用程序时我通常采用下图展示的四个“分析模型”每当我遇到障碍导致我思路受阻时我就会从其中一个模型切换到下一个模型当然这不是一个线性的切换我不知道这个方法是否对每个人都有用但是对于我的确是帮助巨大:
(1)理解有关漏洞的相关模型(2)试图假设一个场景去破坏程序(3)尝试去破坏程序
漏洞的复杂性分布非常广一方面有很多漏洞非常简单与直观并且利用代码一目了然比如说经典的sql注入另一方面在系统中有的看似并不相关并且就其自身而言并非不安全但是当这些东西以一种特定的方式结合起来的时候就有可能引发大的漏洞比如说条件竞争或者一些其他的复杂的逻辑漏洞我尝试将这些漏洞按照复杂级别分为“一级漏洞”和“二级漏洞”不过也有其他分类方法引用一局来自ProjectZero的BenHawkes说过的一句话:
ThemodernexploitisnotasingleshotvulnerabilityanymoreTheytendtobeachainofvulnerabilitiesthatadduptoafull—systempromise
如今想要完成一个完整的利用只靠单一的漏洞往往行不通很多时候我们需要靠一连串的漏洞才能完成一起完整的利用致使系统“妥协”
?
文档评论(0)