渗透测试流程
渗透测试概况
一、网络渗透测试执行标准
1、渗透测试的概念
- 渗透测试(Penetration Testing)是一种通过模拟攻击的技术与方法,挫败目标系统的安全控制措施并获得控制访问权的安全测试方法。
- 网络渗透测试主要依据CVE(Common Vulnerabilities and Exposures)已经发现的安全漏洞,模拟入侵者的攻击方法对网站应用、服务器系统和网络设备进行非破坏性质的攻击性测试
2、渗透测试的分类
-
根据渗透测试方法:
-
黑盒测试:将测试对象看作一个黑盒子,完全不考虑测试对象的内部结构和内部特性;
-
白盒测试:把测试对象看作一个打开的盒子,测试人员依据测试对象内部逻辑结构相关信息,设计或选择测试用例;
-
灰盒测试:介于白盒与黑盒之间,是基于对测试对象内部细节有限认知的软件测试方法。
-
-
根据渗透测试目标:
- 主机操作系统渗透测试;
- 数据库系统渗透测试;
- 应用系统渗透测试:对渗透目标提供的各种应用,如ASP、PHP等组成的WWW应用进行渗透测试。
- 网络设备渗透测试:对各种防火墙、入侵检测系统、网络设备进行渗透测试。
- 内网渗透测试:模拟客户内部违规操作者的行为(绕过了防火墙的保护)。
- 外网渗透测试:模拟对内部状态一无所知的外部攻击者的行为。包括对网络设备的远程攻击,口令管理安全性测试,防火墙规则试探、规避,Web及其它开放应用服务的安全性测试。
3、渗透测试的七个阶段
- 第一阶段:前期交互阶段
- 第二阶段:情报收集阶段
- 第三阶段:威胁建模阶段
- 第四阶段:漏洞分析阶段
- 第五阶段:渗透攻击阶段
- 第六阶段:后渗透攻击阶段
- 第七阶段:报告阶段
4、渗透测试与apt的区别
-
目的上:
渗透测试的目的是评估计算机网络系统的安全性;
而APT的目的是对高价值目标进行的有组织、长期持续性的控制。
-
手段方法上:
渗透测试通过被允许的行为模拟黑客攻击来对目标系统进行测试;
而APT利用任何各种高技术手段(包括0day漏洞、欺骗性的钓鱼邮件等)进行攻击。
- 结果上:
渗透测试提高了目标系统的安全级别;
而APT在达成目的的过程中一般会给目标系统带来严重损失。
二、渗透测试的重要性
渗透测试报告的重要性?
- 让客户明白问题在哪里,而不是去报告中寻找问题
- 说明可能造成的危害,体现渗透测试的价值
- 能让用户准确定位并修补漏洞
- 可以让客户先看报告,不懂的地方再问。
三、APT攻击与防护
1、APT的概念
APT
(Advanced Persistent Threat):高级持续性威胁
A——高级(Advanced)
P——持续(Persistent)
T——威胁(Threat)
利用各种先进的攻击手段,对高价值目标进行的有组织、长期持续性网络攻击行为。
2、APT入侵途径
入侵图解
- 鱼叉攻击(spear phishing):针对特定组织的网络欺诈行为,目的不是通过授权便可以访问机密事件。最常见的方法是将木马程序作为电子邮件的附件发送给特定的攻击目标,并诱使目标触发附件。
- 水坑攻击(water holing):黑客通过分析攻击目标的网络活动规律寻找攻击目标常访问的网站的弱点,先攻击该网站并植入攻击代码,然后等待攻击目标访问该网站并实施攻击。
四、网络威胁情报分析
1、威胁情报的定义
威胁情报是某种基于证据的知识,包括上下文、机制、标示、含义和能够执行的建议,这些知识与资产所面临已有的或酝酿中的威胁或危害相关,可用于对这些威胁或危害进行响应的相关决策提供信息支持
2、APT攻击链
APT攻击链图示
五、渗透测试概述
1、什么是渗透测试?
渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法
2、为什么要进行渗透测试
- 百密一疏,新系统可能存在未知的风险
- 未雨绸缪,而不是亡羊补牢
- 专业的渗透测试后,即使是系统未被攻破,也可以以此证明先前实行的防御是有效的
- 专业的渗透测试可以有效评估系统的安全状况,并提出合理的改进方案
3、渗透测试的特点
- 逐渐深入,常见非web漏洞入口:弱口令、隐私泄露、备份文件泄露等
- 渗透测试不影响正常的业务
- 在进行漏洞测试时一般使用的是已知的漏洞
- 测试完毕后提交安全报告给被测试的一方