渗透测试测试报告.doc_第1页
渗透测试测试报告.doc_第2页
渗透测试测试报告.doc_第3页
渗透测试测试报告.doc_第4页
渗透测试测试报告.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

_ -可编辑修改- XX 移移动动 XXX 系系统统渗透渗透测试报测试报告告 _ -可编辑修改- 版本版本变变更更记录记录 时间时间 版本版本说说明明修改人修改人 _ -可编辑修改- 目目 录录 附录 A威胁程度分级.17 附录 B相关资料.17 _ -可编辑修改- 一. 摘要摘要 经 XXX 的授权,XX 科技渗透测试小组对 XXX 下属 XXX 系统证书版进行了渗透测试。 测试结果如下: 严重问题:4 个 中等问题:1 个 轻度问题:1 个 图 1.1 安全风险分布图 详细内容如下表: 图 1.1 发现问题详细内容 问题等级种类数量名称 1 个登录 XXX 系统 USBKey 认证可绕过漏洞 1 个转账汇款 USBKey 认证可绕过漏洞 1 个转账汇款数字签名设计缺陷 严重问题4 种 1 个输入验证机制设计缺陷 中等问题1 种1 个缺少第二信道认证 轻度问题1 种1 个信息泄露 XX 科技认为被测系统当前安全状态是:远远程不安全系程不安全系统统 _ -可编辑修改- 一. 服服务务概述概述 本次渗透测试工作是由 XX 科技的渗透测试小组独立完成的。 XX 科技渗透测试小组在 2010 年 4 月 xx 日至 2010 年 4 月 xx 日对 XXX 的新 XXX 系统 进行了远程渗透测试工作。在此期间,XX 科技渗透测试小组利用部分前沿的攻击技术;使用 成熟的黑客攻击手段;集合软件测试技术(标准)对指定网络、系统做入侵攻击测试,希望由此 发现网站、应用系统中存在的安全漏洞和风险点。 2.1 测试测试流程流程 XX 科技渗透测试服务流程定义为如下阶段: 信息收集信息收集:此阶段中,XX 科技测试人员进行必要的信息收集,如 IP 地址、DNS 记录、 软件版本信息、IP 段、Google 中的公开信息等。 渗透渗透测试测试:此阶段中,XX 科技测试人员根据第一阶段获得的信息对网络、系统进行渗透 测试。此阶段如果成功的话,可能获得普通权限。 缺陷利用缺陷利用:此阶段中,XX 科技测试人员尝试由普通权限提升为管理员权限,获得对系统 的完全控制权。在时间许可的情况下,必要时从第一阶段重新进行。 成果收集成果收集:此阶段中,XX 科技测试人员对前期收集的各类弱点、漏洞等问题进行分类整 理,集中展示。 威威胁胁分析分析:此阶段中,XX 科技测试人员对发现的上述问题进行威胁分类和分析其影响。 输输出出报报告告:此阶段中,XX 科技测试人员根据测试和分析的结果编写直观的渗透测试服务 报告。 信息 收集 缺陷 利用 成果 收集 威胁 分析 循 环 输出 报告 渗透 测试 图 2.1 渗透测试流程 2.2 风险风险管理及管理及规规避避 为保障客户系统在渗透测试过程中稳定、安全的运转,我们将提供以下多种方式来进行风 险规避。 对对象的象的选择选择 _ -可编辑修改- 为更大程度的避免风险的产生,渗透测试还可选择对备份系统进行测试。因为备份系统与 在线系统所安装的应用和承载的数据差异较小,而其稳定性要求又比在线系统低,因此,选择 对备份系统进行测试也是规避风险的一种常见方式。 时间时间的控制的控制 从时间安排上,测试人员将将尽量避免在数据高峰时进行测试,以此来减小测试工作对被 测试系统带来的压力。 另外,测试人员在每次测试前也将通过电话、邮件等方式告知相关人员,以防止测试过程 中出现意外情况。 技技术术手段手段 XX 科技的渗透测试人员都具有丰富的经验和技能,在每一步测试前都会预估可能带来的 后果,对于可能产生影响的测试(如:溢出攻击)将被记录并跳过,并在随后与客户协商决定是 否进行测试及测试方法。 监监控控措施措施 针对每一系统进行测试前,测试人员都会告知被测试系统管理员,并且在测试过程中会随 时关注目标系统的负荷等信息,一旦出现任何异常,将会停止测试。 工具的使用工具的使用 在使用工具测试的过程中,测试人员会通过设置线程、插件数量等参数来减少其对系统的 压力,同时还会去除任何可能对目标系统带来危害的插件,如:远程溢出攻击类插件、拒绝服务 攻击类插件等等。 2.3 测试测试收益收益 通过实施渗透测试服务,可对贵方的信息化系统起到如下推进作用: 明确安全明确安全隐隐患点患点 渗透测试是一个从空间到面再到点的过程,测试人员模拟黑客的入侵,从外部整体切入 最终落至某个威胁点并加以利用,最终对整个网络产生威胁,以此明确整体系统中的安全隐患 点。 提高安全意提高安全意识识 如上所述,任何的隐患在渗透测试服务中都可能造成“千里之堤溃于蚁穴”的效果,因此 渗透测试服务可有效督促管理人员杜绝任何一处小的缺陷,从而降低整体风险。 提高安全技能提高安全技能 在测试人员与用户的交互过程中,可提升用户的技能。另外,通过专业的渗透测试报告, 也能为用户提供当前流行安全问题的参考。 _ -可编辑修改- 一. 测试测试目目标说标说明明 3.1 测试对测试对象象 测试对测试对象名称象名称相关域名、相关域名、对应对应的的 URL 新新 XXX 系系统统平平 台台 证书版登录 IP 地址:114.xx.xx.xx 3.2 测试账测试账号号 测试账测试账号名称号名称相关相关详细详细信息信息 XXX 系统账号 账号所有者:XX ID:95xxPIN 码:xx XXX 系统登录名 zhdh 密码 xx 账号所有者:xx ID:95xx PIN 码:XX XXX 系统登录名 xx 密码 xx 3.3 时间时间 测试测试工作的工作的时间时间段段 起始起始时间时间2010-4-xx结结束束时间时间2010-4-xx 本份测试报告分析的各种安全风险,仅限定于在上述时间段内测试反馈信息的整理,不包 括非上述时间段内的因系统调整、维护更新后出现的其他变化情况。 3.4 参与参与测试测试人人员员 参参测测人人员员名名单单 姓名姓名所属部所属部门门联联系方式系方式 _ -可编辑修改- 姓名姓名所属部所属部门门联联系方式系方式 3.5 测试环测试环境境 本次渗透测试过程中,XX 科技测试小组使用过多个互联网 IP 地址开展的分析工作,在此 通知 XXX 新 XXX 系统相关人员在对受测试的目标站点服务器、相应的网络入侵检测系统进 行安全监控和日志分析时,排除以下 IP 地址产生的任何违规信息,以保证分析结果的准确有 效。 IP 地址地址IP 地址地址IP 地址地址IP 地址地址 暂无暂无 3.6 工具工具及相关及相关资资源源 图 3.1 测试工具:NetCat 工具名称工具名称NetCat 工具用途工具用途端口连接,数据提交 相关信息相关信息/files/nc111nt.zip 图 3.2 测试工具:Nmap 工具名称工具名称Nmap 工具用途工具用途端口扫描,服务识别,操作系统指纹识别 相关信息相关信息 / 图 3.3 测试工具:httprint 工具名称工具名称Httprint 工具用途工具用途通过远程 http 指纹判断 http 服务类型 相关信息相关信息 - 图 3.4 测试工具:Tamper IE 工具名称工具名称Tamper IE 工具用途工具用途HTTP 数据包修改、转发工具(Firefox 插件) 相关信息相关信息 图 3.5 测试工具:安全检测工具集 工具名称工具名称XX 科技整理的安全检测工具集 _ -可编辑修改- 工具用途工具用途跨站及 SQL 注入测试、远程溢出测试、暴力破解测试、嗅探分析 相关信息相关信息www.xxS.com 在具体的分析过程中,XX 科技测试小组在微软的 Windows 平台上(涵盖 2003/Vista),使 用了 IE(涵盖 6.0/7.0/8.0)和 Firefox 浏览器对指定的测试对象进行的分析、校验、测试。因此, 漏洞分析检测到的部分安全问题可能与特定的操作系统、软件版本有具体关系,提醒后期实施 漏洞修复工作的人员特别注意其中的差异。 一. 测试过测试过程程详详述述 4.1 目目标标信息探信息探测测 4.1.1 域名信息域名信息 渗透测试人员首先通过 nslookup 对主机的 IP 地址、NS 记录等信息的查询,对站点进行 基本的信息探测: Default Server: xd-cache- Address: xx.xx.xx.xx /查询查询 ns 记录记录 set type=ns Server: Address: 0 Non-authoritative answer: nameserver = server hxns1.hua- Default Server: Address: 123.127.xx.xx /测试测试区域区域传输传输 set type=axfr ls -d ls: connect: No error * Cant list domain : Unspecified error _ -可编辑修改- The DNS server refused to transfer the zone to your computer. If this is incorrect, check the zone transfer security settings for on the DNS server at IP address 123.xx.xx.xx. /查询查询站点站点 mx 记录记录 set type=mx Server: Address: 123.xx.xx.xx MX preference = 5, mail exchanger = nameserver = /检查检查版本信息版本信息 set type=txt set class=chaos version.bind Server: Address: 123.xx.xx.xx version.bind text = I dont know! version.bind nameserver = version.bind 对 WWW 目标进行 Whois 的查询,下面是获取到的 Whois 信息如下: = 219.xx.xxx.xx xxxxxx 4.1.2 Google Hacking 搜索搜索错误错误的文件后的文件后缀缀 在此过程中,测试人员会对站点进行如下内容的搜索: 搜索内容搜索内容说说明明 site: inurl:jsp.bak site: inurl:jsp.bak 搜索站点中是否存在后缀为 jsp.bak 的文 件,即,某些 jsp 的备份文件。 _ -可编辑修改- site: filetype:sql site: filetype:sql 搜索站点中是否存在 SQL 脚本文件 site: filetype:txt site: filetype:txt 查找站点中是否有包含敏感信息的 txt 文 件 site: filetype:conf site: filetype:conf 查找站点中是否有包含敏感信息的 conf 文件 通过上述方法测试,测试人没有在 Google 和 Baidu 等互联网公共搜索服务商搜索出与之 相关的敏感信息。 查查找第三方找第三方组组件或程序件或程序 在此过程中,测试人员会对站点进行如下内容的搜索: 搜索内容搜索内容说说明明 site: inurl:/fckeditor/ site: inurl:/fckeditor/ 搜索站点是否使用了 fckeditor site: inurl:jsp?id inurl:ewebeditor site: inurl:jsp?id inurl:ewebeditor 搜索站点是否使用了 eWebEditor 通过上述方法测试,测试人没有在 Google 和 Baidu 等互联网公共搜索服务商搜索出与之 相关的敏感信息。 搜索搜索错误错误的配置的配置 在此过程中,测试人员会对站点进行如下内容的搜索: 搜索内容搜索内容说说明明 site: intitle:”index of /” site: intitle:”index of /” 搜索站点是否使用了列目录功能 site: intitle:Apache Tomcat intitle:Error Report 搜索站点是否存在 TOMCAT 错误信息, 通过错误信息可判断 TOMCAT 版本 site: inurl:examples site: inurl:examples 搜索站点中是否存在测试代码 _ -可编辑修改- 通过上述方法测试,测试人没有在 Google 和 Baidu 等互联网公共搜索服务商搜索出与之 相关的敏感信息。 4.2 对对系系统统的的测试测试 4.2.1 端口端口扫扫描描 通过使用 Nmap 端口扫描工具对主机在 Internet 上的端口开放情况进行检查: 图 4.1 Nmap 扫描结果 通过 Nmap 扫描报告,确认主机开放两个端口: TCP 21(用于 FTP 服务) TCP 443(用于 WEB 服务) 通过使用 nc(NetCat)对主机的 TCP 21 进行端口连接性测试,发现在连接成功后较长时间 内端口无反应: 图 4.2 使用 nc 连接 TCP 21 再次通过使用 ftp 客户端对目标系统发起 FTP 连接请求,得到信息“Connection closed by remote host.”: 图 4.3 使用 ftp 客户端对目标主机进行验证 由此可确认 TCP 21 虽开放,但应在网络层有相关的 ACL 限制,因此无法从 Internet 对 其 FTP 服务发起连接请求。 4.2.2 服服务务信息探信息探测测 通过端口扫描判断,远程目标主机仅有 TCP 443 端口(WEB 应用服务)可用,因此,后继 的渗透测试工作主要针对 WEB 应用本身及运行于 WEB 应用上的代码展开。 首先使用 httprint 对远程主机的 WEB 应用版本进行判断: 图 4.4 httprint 判断远程 WEB 应用版本 根据 httprint 输出无法判断远程主机的 WEB 应用。 _ -可编辑修改- 通过 nc 手工提交 HTTP HEAD 请求,依然无法获取到目标 WEB 应用版本信息。 图 4.5 使用 nc 提交 HTTP HEAD 请求 通过 nc 手工提交 HTTP OPTIONS 请求,依然无法获取到目标 WEB 应用版本信息。 图 4.6 使用 nc 提交 HTTP OPTIONS 请求 4.3 对应对应用的用的测试测试 测试人员根据 WASC 威胁分类 1,对应用程序的渗透测试从五个类型的安全方面进行测 试,这五个威胁类型包括:认证和授权、命令执行、逻辑攻击、客户端攻击、信息泄露。 认证认证和授和授权类权类 命令命令执执行行类类 暴力攻击 LDAP 注入 认证不充分 SSI 注入 会话定置 SQL 注入 会话期限不充分 Xpath 注入 凭证/会话预测操作系统命令 授权不充分格式字符串攻击 逻辑逻辑攻攻击类击类 缓冲区溢出 功能滥用信息泄漏信息泄漏类类 拒绝服务可预测资源定位 客客户户端攻端攻击类击类 路径遍历 跨站点脚本编制目录索引 1 WASC 即 Web Application Security Consortium。是一个由安全专家、行业顾问和诸多组织的代表组成的 国际团体。他们负责为 WWW 制定被广为接受的应用安全标准。WASC 组织的关键项目之一是“Web 安全 威胁分类”,也就是将 Web 应用所受到的威胁、攻击进行说明并归纳成具有共同特征的分类。 _ -可编辑修改- 内容电子欺骗 信息泄露 图 4.7 WASC 威胁分类图 由于 XXX 系统区别于普通的 WEB 系统,因此,测试人员根据 XXX 系统的特点,从实际 出发采用手工测试的方法,对五大类威胁中的部分内容进行测试。 4.3.2 认证认证和授和授权类权类 由于 XXX 系统的特殊性 1,测试人员没有对 XXX 系统登录账号进行暴力攻击的尝试, 而是采用使用证书方式对证书的有效性进行测试。 此次测试 XX 新 XXX 系统采用硬件 USBKey(即 XX),首先,测试人员对正常情况使用 USBKey 登录 XXX 系统进行记录和分析。 图 4.8 使用 USBKey 登录信息 在没有插入 USBKey 的情况下,测试人员使用其他银行的“软证书”2进行登录: 图 4.9 使用其他银行“软证书”进行登录 通过使用 Tamper IE 截取登录过程提交的数据包,来对登录信息进行替换。测试人员将使 用其他银行“软证书”产生的信息替换为正常使用 USBKey 登录产生的 dn 和 sn 信息进行欺骗。 Dn 和 sn 信息如下: Dn 信息 :xx Sn 信息 :xx (威胁点) 图 4.10 替换登录过程的数据信息 经上述测试发现,XXX 证书版 USBKey 登录过程中,由 XXX 系统盾证书认证的相关信 息 SN 为固定信息,任何提交者均可通过登录认证,存在“绕过登录 XX 新 XXX 系统的漏洞” (威胁点,附录像)。 同时,测试人员通过枚举表单的方式,同样可以获取登录过程中的相关认证信息,例如: dn、sn 信息。 图 4.11 采用表单枚举的方式获取登录信息 1 账号及密码信息错误将导致账号锁定。 2 通常所说的浏览器证书,非硬件 USBKey 的电子证书。 _ -可编辑修改- 在转账汇款测试时,测试人员通过上述方法同样可以绕过 USBKey 的使用,对行内转账、 跨行汇款进行成功操作。同时,在转账汇款的测试中,测试人员发现:转账汇款的最后步骤即: “确认”操作时,由客户端向服务器端提交“签名加密代码”,该步骤存在设计缺陷,导致“签名加 密代码”只要是正确途径产生的“代码”都可以进行成功交易,而与每次交易的信息无关。(威胁 点,附录像) 测试人员第一次转账时使用 xx 的账号*7588 卡号向 xx 账号的* 9600 卡号进行汇款, 在最后确认过程中记录“sigEncryptCode”值和“randomTokenVerifyTag”值。 图 4.12 记录向 xx 账号汇款“确认”过程中相关信息 然后,测试人员第二次转账时使用 xx 的账号*7588 卡号向 xx 的账号的*2758 卡号进行 汇款,在最后确认过程中记录替换“sigEncryptCode”值为向 xx 账号汇款“确认”过程中记录的 “sigEncryptCode”值。测试人员发现交易能够成功完成。 由以上事实,测试人员分析认为存在两种可能:第一种可能“sigEncryptCode”信息应为每 次交易相关收款账号、金额等加密信息,若为此情况,在替换后并成功交易,测试用款应该转 到第一次操作的 xx 账号中,而目前事实是依然转移到 xx 的账号中。第二种可能是 “sigEncryptCode”信息不包含每次交易的收款账号、金额等加密信息,完全用于数字签名。因此 “sigEncryptCode”值信息在最后确认中,只要是正确途径产生均可通过签名,因此可以任意替 换。 4.3.3 命令命令执执行行类类 在命令执行类的测试中,测试人员主要测试了 SQL 注入攻击。为了避免使用模糊测试给 账户及 XXX 系统带来不可预料的影响,测试人员采用手工测试的方法。 测试人员对 XX 新 XXX 系统中的输入参数进行了部分测试,下面以测试登录用户名选 项为例进行说明。 测试人员发现当前 XX 新新 XXX 系统大部分输入都只是客户端验证而非客户端服务端 双向验证。(威胁点) 测试人员通过本地浏览器截取的方式对“自定义登录名称”进行修改,成功将 zhdh 登录名 设置为下面三种情况: 情况一:“zh|dh”、“”;-”名称:含有 SQL 代码的违规名称; 图 4.13 设置的“zh|dh”登录名称 图 4.14 设置的“”;-”登录名称 情况二:“”1名称:空字符的名称字段长度少于要求的 4 字符; _ -可编辑修改- 图 4.15 设置的空字符登录名称 情况三:“abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz”名称:52 字符名称长度 大于要求的 30 字符。 图 4.16 设置的 52 字符长登录名称 经上述测试,测试人员发现当通过违法手段绕过客户端限制成功修改登录名称后,在 XXX 系统登录时由于使用不符合要求的登录名称将导致登录认证无法通过,造成系统的逻辑 错误只能使用证件号方式登录 1。 当设置登录名空字符时,登录 XXX 系统要求输入用户名,致使无法登录;当设置超长登 录名字符时,登录 XXX 系统提示用户名不符合要求,致使无法登录。 4.3.4 客客户户端攻端攻击类击类 测试人员在测试跨站脚本时,发现当前 XX 新 XXX 系统对跨站检测非常严格,导致在测 试时测试账号被列入黑名单,无法继续测试。 测试代码如下: 图 4.17 对跨站输入进行强制退出 图 4.18 测试跨站代码被列入黑名单 4.3.5 信息泄露信息泄露类类 测试人员在对网站其他周边信息进行检查时发现, 存在明显的 web server 默认页面,该处泄露了当前服务器 web 信息。如下: 图 4.19 Web server 默认页面 1 该处设置名称为空字符。 1 由于登录认证采用双向检测因此服务端不接受不符合条件的登录名称。 _ -可编辑修改- 一. 发现问题发现问题与建与建议议 5.1 发现发现的的问题问题 在本次渗透测试的新 XXX 系统中,XX 科技渗透测试小组发现了部分严重等级风险漏洞, 这一级别的漏洞将深刻威胁到系统安全性。已发现的 XX 新 XXX 系统主要安全问题如下: XX 新 XXX 系统发现的问题: 编编号号发现问题发现问题漏洞描述漏洞描述威威胁胁程度程度 1 登录 XXX 系统 USBKey 认 证可绕过漏洞 不使用 USBKey 可通过截取 key 信息进 行登录 严严重重 2 转账汇款 USBKey 认证可绕 过漏洞 不使用 USBKey 可通过截取 key 信息进 行登录 严严重重 3转账汇款数字签名设计缺陷 任意合法数字签名信息均可完成汇款,数 字签名信息可任意替换。 严严重重 4输入验证机制设计缺陷 仅由客户端验证用户输入导致易绕过造 成 SQL 注入 严严重重 5缺少第二信道认证 仅依靠 USBKey 进行身份识别没有其他 认证手段 中等中等 6信息泄露 存在默认 web server 泄露信息轻轻度度 5.2 安全建安全建议议 针对上述发现的安全问题,XX 科技建议立即采取措施进行修补,以避免发生安全问题, 下面的安全建议措施可供参考: 编编号号发现问题发现问题安全建安全建议议备备注注 1 登录 XXX 系统 USBKey 认 证可绕过漏洞 更改当前 USBKey 实现机制 2 转账汇款 USBKey 认证可绕 过漏洞 更改当前 USBKey 实现机制 3转账汇款数字签名设计缺陷 在签名信息中加入动态信息,例如短信验 证码、随机验证码、账号、金额等信息。 4输入验证机制设计缺陷采用客户端服务器端双向验证 5缺少第二信道认证 增加第二信道认证途径,例如,手机短信 验证码 6信息泄露 删除默认 web server 页面,屏蔽默认 web server 版本信息 _ -可编辑修改- 5.3 其他建其他建议议 针对 WEB 平台的渗透测试及定期的评估扫描等方式,均以暴露问题为目标,属于被动的 安全手段,而这些方式也大大的增加开发和维护的成本,因此建议 XXX 针对如 WEB 程序这 类个性化产品开发前就应做好安全的相关工作,建议 XXX 对定制开发的产品从

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论