■ 版本变更记录时间版本 说明 修改人■ 适用性声明本文档是(以下简称“某某”)为XXX (以下简称“XXX ”)提交的渗透测试方案,供XXX 的项目相关人员阅读。
XXX 渗透测试方案■ 文档编号■ 密级 ■ 版本编号■ 日期 !目录一.概述 (1)1.1 项目背景 (1)1.2 实施目的 (2)1.3 服务目标 (2)二.远程渗透测试介绍 (3)2.1 渗透测试原理 (3)2.2 渗透测试流程 (3)2.3 渗透测试的风险规避 (7)2.4 渗透测试的收益 (8)2.5 渗透工具介绍 (9)2.5.1 系统自带工具 (10)2.5.2 自由软件和渗透测试工具 (11)三.项目实施计划 (12)3.1 方案制定 (14)3.2 信息收集 (14)3.3 测试实施 (16)3.4 报告输出 (25)3.5 安全复查 (26)四.交付成果 (26)五.某某渗透测试的优势 (26)附录A某某公司简介............................. 错误!未定义书签。
一.概述1.1 项目背景XXX成立于1992年,注册资金7亿元,具有中国房地产开发企业一级资质,总资产300多亿元,是一个涵盖房地产开发、商业管理、物业管理、商贸代理、综合投资业务的大型集团企业。
多年来,XXX信息系统的发展与信息化的建设密不可分,并且通过领导重视、业务需求、自身努力已经将信息化程度提高到一定的水平。
但近年来针对XXX信息系统的安全事件时有发生,网络面临的安全威胁日益严重。
随着业务需求不断地增加、网络结构日趋复杂,信息系统面临的安全威胁、威胁的主体及其动机和能力、威胁的客体等方面都变得更加复杂和难于控制。
XXX信息系统的建设是由业务系统的驱动建设而成的,初始的网络建设大多没有统一的安全规划,而业务系统的业务特性、安全需求和等级、使用的对象、面对的威胁和风险各不相同。
在支持业务不断发展的前提下,如何保证系统的安全性是一个巨大的挑战,对系统进行区域划分,进行层次化、有重点的保护是保证系统和信息安全的有效手段,信息安全体系化的建设与开展迫在眉睫。
1.2 实施目的信息安全越来越成为保障企业网络的稳定运行的重要元素。
XXX信息系统经过多年的实践和摸索,已经初具规模,在技术上、产品方面取得了很大的成就,但随着企业面临的安全威胁不断变化,单纯地靠产品来解决各类信息安全问题已经不能满足XXX的实际安全需求。
从根本上解决目前企业所面临的信息安全难题,只靠技术和产品是不够的,服务将直接影响到解决各类安全问题的效果。
对于已经实施了安全防护措施(安全产品、安全服务)或者即将实施安全防护措施的XXX而言,明确网络当前的安全现状对下一步的安全建设具有重大的指导意义。
所以本次项目的目的是通过远程渗透测试全面检测XXX信息系统目前存在安全隐患,为下一步信息安全建设提供依据。
我们相信,凭借某某多年的安全技术积累和丰富的安全服务项目经验,能够圆满的完成本次安全服务项目。
同时,我们也希望能继续保持和XXX在信息安全项目上长期的合作,共同为XXX信息系统的安全建设贡献力量。
1.3 服务目标某某在本次XXX信息安全服务项目中将达到以下的目标:通过远程渗透测试全面检测XXX信息系统直接暴露在互联网上的安全隐患,并提供实际可行的安全修复建议。
二.远程渗透测试介绍2.1 渗透测试原理渗透测试过程主要依据某某安全专家已经掌握的安全漏洞信息,模拟黑客的真实攻击方法对系统和网络进行非破坏性质的攻击性测试。
这里,所有的渗透测试行为将在客户的书面明确授权和监督下进行。
2.2 渗透测试流程方案制定某某获取到XXX的书面授权许可后,才进行渗透测试的实施。
并且将实施范围、方法、时间、人员等具体的方案与XXX进行交流,并得到XXX的认同。
在测试实施之前,某某会做到让XXX对渗透测试过程和风险的知晓,使随后的正式测试流程都在XXX的控制下。
信息收集这包括:操作系统类型指纹收集;网络拓扑结构分析;端口扫描和目标系统提供的服务识别等。
可以采用一些商业安全评估系统(如:ISS、极光等);免费的检测工具(NESSUS、Nmap等)进行收集。
测试实施在规避防火墙、入侵检测、防毒软件等安全产品监控的条件下进行:操作系统可检测到的漏洞测试、应用系统检测到的漏洞测试(如:Web应用),此阶段如果成功的话,可能获得普通权限。
渗透测试人员可能用到的测试手段有:扫描分析、溢出测试、口令爆破、社会工程学、客户端攻击、中间人攻击等,用于测试人员顺利完成工程。
在获取到普通权限后,尝试由普通权限提升为管理员权限,获得对系统的完全控制权。
一旦成功控制一台或多台服务器后,测试人员将利用这些被控制的服务器作为跳板,绕过防火墙或其他安全设备的防护,从而对内网其他服务器和客户端进行进一步的渗透。
此过程将循环进行,直到测试完成。
最后由渗透测试人员清除中间数据。
报告输出渗透测试人员根据测试的过程结果编写直观的渗透测试服务报告。
内容包括:具体的操作步骤描述;响应分析以及最后的安全修复建议。
安全复查渗透测试完成后,某某协助XXX对已发现的安全隐患进行修复。
修复完成后,某某渗透测试工程师对修复的成果再次进行远程测试复查,对修复的结果进行检验,确保修复结果的有效性。
下图是更为详细的步骤拆分示意图:某某渗透测试流程图2.3 渗透测试的风险规避在渗透测试过程中,虽然我们会尽量避免做影响正常业务运行的操作,也会实施风险规避的计策,但是由于测试过程变化多端,渗透测试服务仍然有可能对网络、系统运行造成一定不同程度的影响,严重的后果是可能造成服务停止,甚至是宕机。
比如渗透人员实施系统权限提升操作时,突遇系统停电,再次重启时可能会出现系统无法启动的故障等。
因此,我们会在渗透测试前与XXX详细讨论渗透方案,并采取如下多条策略来规避渗透测试带来的风险:时间策略:为减轻渗透测试造成的压力和预备风险排除时间,一般的安排测试时间在业务量不高的时间段。
测试策略:为了防范测试导致业务的中断,可以不做一些拒绝服务类的测试。
非常重要的系统不建议做深入的测试,避免意外崩溃而造成不可挽回的损失;具体测试过程中,最终结果可以由测试人员做推测,而不实施危险的操作步骤加以验证等。
备份策略:为防范渗透过程中的异常问题,测试的目标系统需要事先做一个完整的数据备份,以便在问题发生后能及时恢复工作。
对于核心业务系统等不可接受可能风险的系统的测试,可以采取对目标副本进行渗透的方式加以实施。
这样就需要完整的复制目标系统的环境:硬件平台、操作系统、应用服务、程序软件、业务访问等;然后对该副本再进行渗透测试。
应急策略:测试过程中,如果目标系统出现无响应、中断或者崩溃等情况,我们会立即中止渗透测试,并配合XXX技术人员进行修复处理等。
在确认问题、修复系统、防范此故障再重演后,经XXX方同意才能继续进行其余的测试。
沟通策略:测试过程中,确定测试人员和XXX方配合人员的联系方式,便于及时沟通并解决工程中的难点。
2.4 渗透测试的收益渗透测试是站在实战角度对XXX指定的目标系统进行的安全评估,可以让XXX相关人员直观的了解到自己网络、系统、应用中隐含的漏洞和危害发生时可能导致的损失。
通过我们的渗透测试,可以获得如下增益:⏹安全缺陷:从黑客的角度发现XXX安全体系中的漏洞(隐含缺陷),协助XXX 明确目前降低风险的措施,为下一步的安全策略调整指明了方向。
⏹测试报告:能帮助XXX以实际案例的形式来说明目前安全现状,从而增加XXX 对信息安全的认知度,提升XXX人员的风险危机意识,从而实现内部安全等级的整体提升。
⏹交互式渗透测试:我们的渗透测试人员在XXX约定的范围、时间内实施测试,而XXX 人员可以与此同时进行相关的检测监控工作,测试自己能不能发现正在进行的渗透测试过程,从中真实的评估自己的检测预警能力。
2.5 渗透工具介绍渗透测试人员模拟黑客入侵攻击的过程中使用的是操作系统自带网络应用、管理和诊断工具、黑客可以在网络上免费下载的扫描器、远程入侵代码和本地提升权限代码以及某某自主开发的安全扫描工具。
这些工具经过全球数以万计的程序员、网络管理员、安全专家以及黑客的测试和实际应用,在技术上已经非常成熟,实现了网络检查和安全测试的高度可控性,能够根据使用者的实际要求进行有针对性的测试。
但是安全工具本身也是一把双刃剑,为了做到万无一失,我们也将针对系统可能出现的不稳定现象提出相应对策,以确保服务器和网络设备在进行渗透测试的过程中保持在可信状态。
2.5.1 系统自带工具以下列出了主要应用到的系统自带网络应用、管理和诊断工具,某某渗透测试工程师将用到但不限于只使用以下系统命令进行渗透测试。
工具名称风险等级获取途径主要用途存在风险描述风险控制方法ping无系统自带获取主机信息无无telnet无系统自带登录系统无无ftp无系统自带传输文件无无tracert无系统自带获取网络信息无无net use无系统自带建立连接无无net user无系统自带查看系统用户无无echo无系统自带文件输出无无nslookup无系统自带获取主机信息无无IE无系统自带获得web信息、无无进行SQL 注入2.5.2 自由软件和渗透测试工具以下列出了渗透测试中常用到的网络扫描工具、网络管理软件等工具,这些工具都是网络上的免费软件。
某某渗透测试工程师将可能利用到但是不限于利用以下工具。
远程溢出代码和本地溢出代码需要根据具体系统的版本和漏洞情况来选择,由于种类繁杂并且没有代表性,在这里不会一一列出。
工具 名称 风险 等级 获取途径 主要用途 存在风险描述 风险控制方法nmap无获取主机开放的服务、端口信息无 无nessus 低对主机进行漏洞扫描可能造成网络资源的占用如果主机负载过高,停止扫描。
Retina 低对主机进行漏洞扫描可能造成网络资源的如果主机负载过高,占用停止扫描。
nc无端口连接工具无 无远程溢出工具中packetstormsecurity.nl通过漏洞远程进入系统 溢出程序可能造成服务不稳定备份数据,服务异常时重启服务。
本地溢出工具中packetstormsecurity.nl通过漏洞本地提升权限 溢出程序可能造成服务不稳定备份数据,服务异常时重启服务。
三. 项目实施计划XXX 信息系统服务器主要包括域控、DNS 、Mail 、ERP 、OA 、档案、桌面管理、节点监控、财务和Web 等约12台,其中DNS 、Mail 、ERP 、OA 和Web 等6台服务器可以通过互联网直接访问。
根据项目服务目标和项目服务内容,可将整个项目包括项目沟通、方案制定、信息收集、测试实施、报告输出和安全复查,项目实施计划表如下:3.1 方案制定某某远程渗透测试小组根据XXX信息系统的规模和实际业务情况制定详细的渗透测试方案,包括测试方法的选择、测试工具的准备已经分析测试过程中可能带来的风险分析和相应的风险规避方法。