版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
渗透测试和漏洞基础知识目录/CONTENTS渗透测试漏洞简介:渗透测试并没有一个标准的定义,英国国家网络安全中心(NCSC,NationalCyberSecurityCentre)对渗透测试的定义如下:渗透测试是一种通过使用与攻击者相同的工具和技术来尝试破坏IT(InformationTechnology,信息技术)系统的部分或全部安全性,以获得该系统的安全性保证的方法。渗透测试定义目的:渗透测试旨在识别计算机系统的弱点(也称为漏洞),即未授权方访问系统功能和数据的潜在威胁。渗透测试可以帮助确定防御是否充足,并确定哪些已有防御措施容易被破坏。渗透测试定义起源:渗透测试(PenetrationTest)是保证计算机系统安全性的关键环节。我们从了解渗透测试的起源开始,逐步探索这个信息安全专业词汇背后的意义。渗透测试的起源渗透测试并没有严格的分类方法,根据渗透实践方式,普遍认同的一种分类方法包括:黑盒测试、白盒测试和灰盒测试。渗透测试分类黑盒测试:黑盒测试只能通过外部网络远程对目标网络进行渗透,信息通常通过DNS、网页以及各种公开渠道来获取。渗透测试分类白盒测试:白盒测试中渗透测试团队能够提前获得网络拓扑、内部数据、源代码等内部信息,也可以和被测方相关人员进行沟通。渗透测试分类灰盒测试:灰盒测试中渗透测试团队从外部对目标网络进行渗透的过程中,需要结合其所拥有的网络拓扑等内部信息,选择能够评估目标系统安全性的最佳测试方法。渗透测试分类安全业界存在多种执行渗透测试的标准框架和方法。其中,PTES(PenetrationTestingExecutionStandard)渗透测试执行标准是业界普遍认同的一套标准化渗透测试方法,包括以下7个阶段。渗透测试框架PTES1.前期交互阶段:前期交互阶段中渗透测试团队通过与客户进行沟通,来确定渗透测试的范围、目标以及其他合同的细节等。定义测试范围定义测试范围是完成一次成功的渗透测试的基础,这一过程中需明确渗透测试的具体边界,该过程的疏忽可能造成极为严重的后果,如范围蔓延、客户不满意甚至法律纠纷。规划测试目标规划测试目标需要测试团队分析客户的业务结构和需求,规划测试任务的主要和次要目标明确时间度量明确时间度量时通常会以预估的测试周期为基准,增加20%的额外时间,为测试中的突发状况提供缓冲。渗透测试框架PTES2.情报搜集阶段:情报搜集阶段中渗透测试团队通过各种信息来源与信息搜集方法,尝试获取更多与目标组织有关的信息,包括网络拓扑、系统配置以及部署的安全防御措施等。情报搜集方法情报搜集阶段可以使用的方法包括公开信息查询、GoogleHacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等。情报搜集作用对目标系统的情报搜集能力是渗透团队一项非常重要的技能,在此阶段获取的信息越多,后续阶段可使用的攻击手段也就越多。因此情报搜集是否充分在很大程度上决定了渗透测试的成败,遗漏某些关键信息可能导致测试人员在后续工作中一无所获。
渗透测试框架PTES3.威胁建模阶段:威胁建模阶段中渗透测试团队使用在情报搜集阶段获取到的信息来制定攻击计划。该阶段需要对目前的情报进行详细的分析,识别出目标系统中可能存在的安全缺陷,从而确定最为可行的渗透攻击通道。威胁建模阶段通常从业务资产、业务流程、人员社区等角度,识别其可能存在的威胁并进行建模。在威胁模型建立之后,渗透攻击的途径也就基本确定。在后续的攻击验证过程中,依然会伴随着信息的收集和威胁模型的调整。渗透测试框架PTES4.漏洞分析阶段:漏洞分析阶段中渗透测试团队通过各种手段发现系统漏洞,并分析如何通过漏洞获取目标系统的访问控制权。该阶段需要分析前期的漏洞情报,并对一些关键的系统服务进行安全漏洞探测,查找已知和未知的安全漏洞。渗透人员可以利用公开的渗透代码资源,或开发攻击代码,在实验环境中进行验证。漏洞分析时渗透测试团队首先应该明确漏洞分析的尺度。一般来说,渗透测试要求尽可能多地发现目标系统中存在的漏洞,在授权范围内保证发现漏洞的广度。其中大部分漏洞通常只需要证明其存在即可,不需要再进行深入的漏洞利用。渗透测试框架PTES5.渗透攻击阶段:渗透攻击阶段中渗透测试团队利用之前发现的安全漏洞对目标系统实施正式的入侵。渗透攻击是渗透测试中的关键环节,该阶段需要通过绕过目标系统的安全限制来获取目标系统的访问控制权限,同时需要以系统中最有价值的信息作为目标。真实场景中的渗透攻击在真实场景中,系统往往会采用多种安全防御措施来提高安全性,测试团队则需要根据目标系统的特性来定制渗透攻击方法,对系统的安全防御措施进行规避或破坏。渗透测试框架PTES6.后渗透攻击阶段:后渗透攻击阶段,渗透测试团队在进行渗透攻击取得目标系统的控制权之后,实施进一步的攻击行为。该阶段需要根据目标组织的业务结构和资产管理形式等,来确定进一步攻击的目标,以对目标组织的重要业务进行更深入的破坏。后门植入后门植入是为了维持对目标系统的访问权限,以进行长久地控制。权限提升权限提升是指如果当前权限不是系统最高权限,还应该继续进行权限的提升,以获取更多重要系统资源的访问控制权。内网拓展内网拓展是利用已获得控制权的服务器对其所在的内网环境进行渗透,通常内网中的安全防护相对较低,能够获取更多重要信息。渗透测试框架PTES7.报告阶段报告阶段中渗透测试团队汇总之前所有测试阶段中的信息,提交给客户并取得认可。渗透测试报告通常包括执行摘要和技术报告两个部分,以面向不同受众传达测试的目标、方法和结果。受众执行摘要的受众是安全监管人员和可能受到已识别威胁影响的组织成员,主要包括测试背景、已发现问题概述、总体风险评估以及对解决方案的建议等。报告内容技术报告传达测试的技术细节以及前期商定的关键指标的各个方面,这一部分需要详细描述测试的范围、信息、攻击路径、影响和修复建议,包括情报搜集、漏洞分析、渗透攻击和后渗透攻击等各个阶段的过程和结果,以及对已识别风险的更细致评估。渗透测试报告应以积极的指导结尾,以支持客户未来安全计划的进展。渗透测试框架PTES目录/CONTENTS渗透测试漏洞漏洞是一种可存在于硬件、软件、协议的具体实现或者系统安全策略上的缺陷,攻击者能够利用漏洞达到在未授权的情况下访问或破坏系统的恶意目的。维基百科对漏洞的定义如下:漏洞,即脆弱性(Vulnerability),是指计算机系统安全方面的缺陷,使得系统或其应用数据的保密性、完整性、可用性、访问控制等面临威胁。漏洞定义漏洞来源从安全攻防角度而言,比较典型的漏洞生命周期一般包括7个部分:漏洞生命周期1.安全漏洞研究与挖掘:是一种通过渗透测试技术预先发现软件潜在安全漏洞的过程,主要分为两大部分:漏洞代码的粗定位粗定位侧重于全面,旨在发现被分析程序中所有可能存在安全漏洞的代码位置;粗定位可通过补丁对比等技术实现,对比对象包括二进制文本、汇编指令以及程序控制流图(Control-FlowGraph,CFG)等。漏洞生命周期漏洞代码的精确定位精确定位侧重于精准,旨在通过各种分析方法判断粗定位的代码位置中是否存在真正的安全漏洞。精确定位可通过Fuzzing测试等技术实,Fuzzing测试是一种软件测试技术,其核心思想是自动或半自动生成随机数据(即测试用例)并输入到一个程序中,然后监视程序的异常,从而发现安全漏洞。漏洞生命周期2.渗透代码开发与测试:渗透代码是渗透测试人员为验证第一步中找到的安全漏洞是否确实存在并可被利用而开发的概念验证性代码(ProofofConcept,POC)。编写POC代码的三项准备工作如下:熟悉漏洞详细情况熟悉漏洞详细情况包括了解漏洞影响的程序或系统版本,复原漏洞的产生过程,深刻理解漏洞,能够为POC的编写奠定良好基础。漏洞生命周期复现漏洞环境复现漏洞环境可通过Docker搭建渗透代码测试靶机,Docker是一种用于开发、部署、运行应用的虚拟化平台,它让搭建过程灵活方便、搭建周期短,且避免对目标系统造成破坏。选择POC编写的语言任何语言都只是一种实现方式,POC的目的是为证明漏洞的存在,任何编程语言都是可行的。目前,Python语言因其简单的入门过程、丰富的第三方库等特点在业界应用较多。漏洞生命周期POC经常与EXP一起出现在各类安全报告中。在此对二者的区别加以说明:漏洞生命周期3.安全漏洞和渗透代码在封闭团队中流传:渗透测试人员在挖掘到漏洞并编写出渗透代码后,通知相关系统或应用的厂商及时进行漏洞修补,此后再公开漏洞详情,漏洞的危害性相对较小。恶意攻击者在挖掘到漏洞并编写出渗透代码后,不会通知厂商修补而是在有限团队内进行秘密共享,此时,厂商及系统或应用的使用者并不知晓漏洞的存在,漏洞的危害性极大,这种漏洞可称之为“0day”漏洞。漏洞生命周期4.安全漏洞和渗透代码开始扩散:出于利益等种种原因,在小规模有限团队内进行秘密共享的漏洞以及渗透代码最终都会被披露出来,导致漏洞POC或EXP代码在互联网公布,此后,攻击者们会迅速掌握并应用这些漏洞攻击还未修复的系统或应用。漏洞生命周期5.恶意程序出现并开始传播:当攻击者们对公开的漏洞更加熟悉后,他们会进一步地开发更易于使用且更能够自动化传播的恶意程序或攻击工具,并通过互联网等途径进行传播。一般厂商在这一阶段才认识到系统或应用存在的漏洞,并开发相应补丁进行测试,向用户发布,修复漏洞。漏洞生命周期6.渗透代码/恶意程序大规模传播并危害互联网:安全漏洞的危害峰值发生在厂商发布了官方补丁以及相应的安全告警后,此时,攻击者能够得到详细、准确的安全漏洞信息以及对应的渗透代码和恶意利用程序,这进一步降低了攻击的难度,加之用户安装补丁的不及时,导致安全漏洞对互联网的危害达到顶峰。漏洞生命周期7.渗透攻击代码/攻击工具/恶意程序逐渐消亡:随着时间推移,用户普遍安装了厂商发布的补丁,安全公司对漏洞的检测及去除手段也已完善,前述阶段所公开的漏洞渗透代码、恶意利用程序或攻击工具的利用价值大大降低,攻击者不再利用其达到恶意目的,渗透测试代码、恶意利用程序或攻击工具将逐渐消亡。漏洞生命周期背景:随着应用代码编写质量降低、攻击者挖掘漏洞的能力不断提升,安全漏洞数量成逐年上升趋势。如此庞大的数量对漏洞分析、漏洞管理与控制的提出了很大的挑战。意义:使用户更客观、更完整、更准确地认识以及跟踪安全漏洞,在漏洞被发现后,提供给用户更多的信息以便于更快的实现漏洞定位,决定下一步采取的措施,漏洞危险等级划分对及时降低漏洞风险、保护系统或应用的安全有着重要意义。漏洞危险等级划分漏洞危险等级划分常用方法:定性评级定量评分定量评分+定性评级漏洞危险等级划分定性评级:早期,各大厂商及安全公司(例如IBM、微软等)对产品漏洞进行的是定性评级,确定漏洞的威胁,划分漏洞等级。由于各个厂商使用不同的漏洞定性评级方案和方法,导致相同的漏洞在不同厂商的定性评估后,漏洞危害级别不同,这增加了漏洞跟踪及漏洞降低的难度。漏洞危险等级划分定量评分:美国于2004年提出了通用漏洞评分系统CVSS,提供定量的漏洞等级评估方法,统一各厂商及安全公司的评估系统,NVD将其作为官方的漏洞危险等级评估方法。CVSS通过量化公式计算得出评分结果,可操作性较强、评分过程更客观。目前,MITRE公司已经推出了CVSS3.0版本。漏洞危险等级划分定性评级+定量评分:仅依靠定量评分对漏洞危险等级划分也存在无法让人们直观认识漏洞危险程度的缺点。NVD在CVSS评分结果的基础上自定义了与定性级别的映射规则,将CVSS定量评分分值和高危、中危、低危三个定性级别对应了起来。漏洞危险等级划分我国漏洞危险等级划分标准演进过程漏洞危险等级划分漏洞等级划分分级指标:漏洞分级指标说明了漏洞特征的属性和赋值,《信息安全技术网络安全漏洞分类分级指南》将漏洞等级划分指标分为三大类,分别为被利用性、影响程度和环境因素。漏洞危险等级划分漏洞等级划分分级指标:被利用性漏洞的被利用性可从访问路径、触发要求、权限要求和交互条件四个角度进行评估。漏洞危险等级划分漏洞等级划分分级指标:影响程度漏洞的影响程度说明了漏洞触发后对系统、应用或组件造成的损害程度。漏洞的影响程度评估对象为系统、应用或组件所承载的信息的保密性、完整性和可用性。漏洞危险等级划分漏洞等级划分分级指标:环境因素漏洞的环境因素从被利用成本、恢复难度和影响范围三个方面进行评估。漏洞危险等级划分漏洞等级划分分级方法:漏洞等级划分分级方法说明了漏洞技术分级和漏洞综合分级的实现步骤和实现方法,包含了漏洞指标的分级方法、漏洞技术分级方法和漏洞综合分级方法。漏洞指标分级方法漏洞技术分级方法漏洞综合分级方法漏洞危险等级划分漏洞等级划分分级方法:漏洞指标分级方法漏洞指标的分级方法包含了9级至1级共九个等级,从被利用性、影响程度和环境因素指标角度评估漏洞危害程度。漏洞危险等级划分漏洞等级划分分级方法:漏洞技术分级方法技术分级方法包含了超高、高危、中危和低危四个等级,说明了某个特定产品或特定系统的漏洞危害程度。漏洞危险等级划分漏洞等级划分分级方法:漏洞综合分级方法综合分级方法包含了超高、高危、中危和低危四个等级,说明了特定时期特定环境下漏洞危害程度。漏洞危险等级划分漏洞分类指按照漏洞产生或者漏洞触发的技术原因对漏洞进行的划分,和漏洞危险等级划分类似,漏洞分类也是描述漏洞本质和情况的一个重要方面。CNNVD将漏洞划分为26种类型GB/T30279-2020增加了九种漏洞类型漏洞分类CNNVD:配置错误、代码问题、资源管理错误、数字错误、信息泄露、竞争条件、输入验证、缓冲区错误、格式化字符串、跨站脚本、路径遍历、后置链接、SQL注入、注入、代码注入、命令注入、操作系统命令注入、安全特征问题、授权问题、信任管理、加密问题、未充分验证数据可靠性、跨站请求伪造、权限许可和访问控制、访问控制错误和资料不足。漏洞分类GB/T30279-2020增加了九种漏洞类型:处理逻辑错误、数据转换问题、未声明功能、环境问题、日志信息泄露、调试信息泄露、侧信道信息泄露、故障注入、其他漏洞分类漏洞披露是指当漏洞被安全研究人员、安全公司或黑客等挖掘出来后,基于不同的动机将漏洞公布。他们可选择的披露方式包括不披露、完全披露、负责任披露和协同披露四种。不披露:指漏洞的挖掘者在发现漏洞后,采取保密措施,不对厂商或者公众进行公布,可能通过交易漏洞谋取利益。负责任披露:又叫有限披露,指漏洞挖掘者发现漏洞后以帮助厂商解决安全漏洞问题为出发点,将漏洞只及时报告给厂商。厂商制定完备解决方案后,公布漏洞同时将补丁发布给用户。协同披露:代替负责任披露出现的一种漏洞披露方法,该方式将用户的利益放在首要位置,倡导漏洞的挖掘者、厂商以及协调者等应该共享漏洞相关信息、协同合作,以便及时有效地修复漏洞。完全披露:指漏洞的挖掘者在发现漏洞后,不采取任何保密措施、无差别地将漏洞公布给任何人,造成“及时修复”与“恶意利用”的博弈局面。漏洞披露方式漏洞资源库主要对主流应用软件、操作系统以及网络设备等软硬件系统的信息安全漏洞开展采集、收录、分析验证、预警通报和修复消控工作,为关键基础设施等安全保障工作提供数据支持,能够提升全行业的信息安全分析预警能力,常见的漏洞资源库包括国家信息安全漏洞库、国家信息安全漏洞共享平台以及国家漏洞数据库等。漏洞资源库中国国家信息安全漏洞库(ChinaNationalVulnerabilityDataba
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公关或媒介岗位年度工作计划
- 合伙协议合同范文合伙协议合同范本
- 基于物联网的智能家居产品研发与生产合同(04版)
- 基于非对称七段S型曲线的矿用电铲轨迹优化
- 农村土地流转合同范本标准版
- 2024年度股权投资合同:甲方进行股权投资乙方提供投资回报的协议3篇
- 临时工简单版合同范本
- 务工合同电子版简单2000字
- 居民住房买卖合同
- 2024年度二手房自行车库买卖合同标准文本
- 服务器基础知识单选题100道及答案解析
- 2020年EHS体系管理评审汇报
- 《马克思主义发展史》题集
- 通信工程冬季施工安全培训
- 中心静脉压测量技术-中华护理学会团体标准2023
- 加氢裂化装置技术问答
- QGDW 10272-2018 大型电厂接入系统设计内容深度规定
- 赤峰市级继续医学教育项目审批通过汇总表
- 工程数学练习题(附答案版).
- 一年级10以内加减法口算题(100道题_可直接打印)
- 实验室施工组织设计(完整版)
评论
0/150
提交评论