什么是渗透测试?
就是一种通过模拟恶意攻击者的技术与方法,挫败目标系统安全控制措施,取得访问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方法。
简单来说渗透测试是通过各种手段对目标进行一次渗透(攻击),通过渗透测试目标的安全防护能力和安全防护意识。
渗透过程的底层基础是目标系统存在安全漏洞,可以使得攻击者在未授权情况下访问或破坏系统,导致信息系统面临安全风险。而利用安全漏洞造成入侵或破坏的程序称为渗透代码(Exploit)
渗透测试分类
通俗易懂来讲:
渗透测试目标分类
主机操作系统渗透
对Windows、Solaris、AIX、Linux、SCO、SGI等操作系统。
数据库系统渗透
对MS-SQL、Oracle、MySQL、Informix、Sybase、Access等数据库应用系统进行渗透测试。
应用系统渗透
对渗透目标提供的各种应用,如ASP、CGI、JSP、PHP等组成的WWW应用进行渗透测试。
网络设备渗透
对各种防火墙、入侵检测系统、网络设备进行渗透测试。
渗透测试过程环节(重点内容)
在前期交互阶段,渗透测试团队与客户组织进行交互讨论,最重要的是确定渗透测试的范围、目标、限制条件以及服务合同细节。该阶段通常涉及收集客户需求、准备测试计划、定义测试范围与边界、定义业务目标、项目管理与规划等活动。
类比于国庆放假出去游玩,去哪里玩,玩几天,和谁一起
渗透测试团队可以利用各种信息来源与搜集技术方法,尝试获取更多关于目标组织网络拓扑、系统配置与安全防御措施的信息。渗透测试者可以使用的情报搜集方法包括公开来源信息查询、Google Hacking、社会工程学、网络踩点、扫描探测、被动监听、服务查点等。情报搜集是否充分在很大程度上决定了渗透测试的成败,因为如果你遗漏关键的情报信息,可能在之后的阶段里面一无所获。
旅游收集网红地点城市
在搜集到充分的情报信息之后,渗透测试团队成员一起针对获取的信息进行威胁建模与攻击规划。通过团队共同的缜密情报分析与攻击思路头脑风暴,可以从大量的信息情报中理清头绪,确定出最可行的攻击通道。
确定去某某网红城市
渗透测试者综合分析前几个阶段获取并汇总的情报信息,特别是安全漏洞扫描结果、服务查点信息等,通过搜索可获取的渗透代码资源,找出可以实施渗透攻击的攻击点,在实验环境中验证。该阶段,还可针对攻击通道上的一些关键系统与服务进行安全漏洞探测与挖掘,期望找出可被利用的未知安全漏洞,并开发出渗透代码,从而打开攻击通道上的关键路径。
旅游确定具体行程信息,怎么去(高铁、火车、飞机)
此环节中,渗透测试者需要利用他们所找出的目标系统安全漏洞,真正入侵系统当中,获得访问控制权。渗透攻击可以利用公开渠道可获取的渗透代码,但在实际应用场景中,还需要充分地考虑目标系统特性来定制渗透攻击,并需要挫败目标网络与系统中实施的安全防御措施,才能成功达到渗透目的。
一切准备就绪,准备出发前往网红城市
渗透测试团队根据目标组织的业务经营模式、保护资产形式与安全防御计划的不同特点,自主设计出攻击目标、识别关键基础设施、并寻找客户组织最具价值和尝试安全保护的信息和资产,最终达到能够对客户组织造成最重要业务影响的攻击途径。
在网红城市逛旅游景点A、B、C、D......
渗透测试过程最终向客户组织提交,取得认可并成功获得合同付款的就是一份渗透测试报告。这份报告凝聚了之前所有阶段之中渗透测试团队所获取的关键情报信息、探测和发掘出的系统安全漏洞、成功渗透攻击的过程,以及造成业务影响后果的攻击途径,同时还要站在防御者的角度上,帮助他们分析安全防御体系中的薄弱环节、存在的问题,以及修补与升级技术方案。
最终写一份城市游玩攻略
渗透测试的意义
渗透测试是站在第三者的角度来思考企业系统的安全性的,通过渗透测试可以发觉企业潜在却未纰漏的安全性问题。企业可以根据测试的结果对内部系统中的不足以及安全脆弱点进行加固以及改善,从而使企业系统变得更加安全,减低企业的风险。
声明
以上内容仅代表作者个人学习记录,供学习参考