Confidential(秘密) 安全测试工具操作2011.06Written By ********有限公司©1996,2011All Rights Reserved修订历史记录1.概述1.1 编写目的详细介绍安全测试期间需使用的工具,该操作手册配合<<安全测试规范>>一起使用。
1.2工具说明以下是安全测试的部分工具,在安全测试评估过程中很实用,后续可补充更专业的工具。
2. 安全测试工具2.1 AppScan2.1.1 工具介绍IBM AppScan是一个领先的Web应用程序安全测试工具,基于黑盒测试,可自动化Web应用的安全漏洞评估工作,能扫描和检测所有常见的Web应用程序漏洞,如:SQL注入,跨站点脚本攻击等,并提供了扫描,报告和修复建议等功能。
具体信息请参考:/software/awdtools/appscan/2.1.2 工具原理通过模拟Web用户单击链接,爬虫站点应用程序内所有预定的页面和链接,并建立本地副本,得到应用程序内目标脚本,URL,目录,表单,页面,和字段,并分析它所发送的每个请求的响应,查找潜在漏洞的任何指示信息,AppScan接受到可能指示有安全漏洞的响应时,它将自动基于响应创建测试,并通知所需验证规则,同时考虑在确定哪些结果构成漏洞以及所涉及到安全风险的级别时所需的验证规则。
测试将发送它在”探索”阶段创建的上千条定制测试请求。
它使用定制验证规则记录和分析应用程序对每个测试的响应,这些规则即可识别应用程序内的安全问题,又可排列其安全风险级别。
工具原理图:2.1.3 功能列表2.1.4实用操作共四步操作:1.下载AppScan,目前使用的是破解版本7.8.0.2,并安装成功;2.启动AppScan,点击菜单:文件—>新建, 展示界面如下:说明:以下模板是工具内部模板,只可以在线升级,不可以用户自定义。
一般常用模板是总是扫描模板。
3.选择综合扫描模板,展现界面:选择是Web Service接口扫描,还是扫描应用程序。
4. 点击”下一步”按钮,填入被测系统的URL5.点击“下一步“按钮,展示界面:这里是扫描被测系统时,需不需要记录登陆操作的步骤,一般需要记录,因为有些页面,只有登陆后才能被覆盖,点击”记录”按钮,记录登陆后的页面展示:6.点击”下一步”按钮,进入选择策略界面:一般在策略文件中选择Default策略,也可以自定义策略(后续会介绍),取消”发送登陆和注销页面上的测试”的复选框。
7.点击”下一步”按钮,显示界面:8.以上设置完成后,点击”完成”按钮,即可以对被测系统进行扫描测试。
但是我们扫描测试时,要考虑具体系统的具体情况,因此还需要考虑如下的配置情况,请接第9步。
9.在”第7步”显示出来的界面上,选择”我将稍后启动扫描”单选钮,目的是进一步的检查或设置配置.10.确认配置情况,点击菜单”扫描 扫描配置”,界面展示如下:其中注意探索选项,自动表单填充,多步骤操作,通信和代理,测试策略,测试选项等配置.11.探索选项,一般根据系统情况,深度限制默认20,可修改,搜索方法默认宽度优先.12. 自动表单填充,取消”启用自动表单填充”复选框,在生产环境中,如果启用该功能,则可能会自动填充系统中的输入文本框,如果被测系统存在SQL注入漏洞,则扫描时,数据库会有垃圾数据产生。
13. 多步骤操作,如果系统中集成多个系统,则可以在这里操作.14.通信和代理,这里考虑扫描时,对服务器和客户端有性能瓶颈,因此需要考虑开启多少个线程数。
15. 测试策略。
测试策略是整个工具的核心,用户可自定义测试策略,比如:只扫描被测系统的SQL注入漏洞,设置时只勾选SQL注入复选框,然后保存,AppScan工具可以根据用户需要设置不同的测试策略。
.在上面的测试策略界面,点击”更新设置”链接,则弹出来界面如下:该工具测试都是非侵式测试,因为侵入式测试是一种非常消耗服务器资源的测试,比如:DOS测试,由于启动缓冲溢出等处理从而引起Web程序或服务器崩溃,IBM Rational 强烈建议在进行侵入式测试得在网站管理者的协助下来进行倾入式测试,并且最好避开Web程序使用的高峰时间。
16. 测试选项中,取消”发送登录和注销页面上的测试”复选框,原因是:Web程序会在执行了多次不正确的登录动作之后锁定用户的账号家评估”,这个操作的目的:评估配置是否设置完全。
接上一步,然后执行“探索“测试,点击菜单:扫描→完全扫描或扫描→仅探索.运行扫描后的界面展示:成后的漏洞展示,如图:的功能是展示所有需要修复的问题,按高-中-低级别显示。
如图:功能是探索阶段分解网页产生的表单,字段,URL等参数数据,如图:扫描完成后,点击菜单:工具 运行结果专家,其作用是对扫描的结果进行归类,在什么地方显示。
点击菜单::工具—报告。
说明:AppScan是安全扫描的主要工具,请务必掌握。
2.2 WebScarab2.2.1 工具介绍该工具主要是一款基于IE浏览器的代理软件,实现的功能有:HTTP代理,网络蜘蛛,会话ID分析,WebService测试,跨站脚本等.2.2.2 实用操作1. 使用WebScarab工具,首先在浏览器中设置代理,设置代理的操作步骤:打开IE→工具→Internet选项→“连接“选项卡→点击”局域网设置”按钮,在弹出的界面配置代理服务器IP为127.0.0.1 ,端口为8008。
2. 在IE中打开输入被测系统的URL,HTTP端口一般默认是80端口;3. 启动WebScarab;4. 在Web页面输入合法数据,并提交;5. 此时WebScarab会弹出HTTP请求拦截窗口,如图:6. 修改对应的输入参数值为不合法数据,点击”Accept Changes”按钮,提交数据,这样就绕过了客户端的输入校验,向服务器端提交不合法的输入数据。
说明:该工具功能强大,目前只用于登陆,注册等操作向服务器提交数据时,拦截数据是否加密传输,如果没有加密,则数据传输有风险。
2.3 Tamper Data2.3.1 工具介绍该工具是一款基于FireFox浏览器的插件, 是武士WTF火狐附加组件工具集合中的一部分,功能是:可以用来查看和修改HTTP/HTTPS的头部和POST参数;可以用来跟踪HTTP请求和响应。
即“纂改数据”,其实,该功能和WebScarab实现的功能一样。
2.3.2 实用操作1. 安装Firefox浏览器,加载Tamper Data插件;2.点击Start Tamper按钮,页面提交请求,可以根据需要定制HTTP请求头,如:HTTP头Add element操作,3. Tamper Data提供了一些进行XSS(跨站脚本)攻击和SQL注入攻击的代码,而且允许加入自己的攻击代码,极大方便对WEB站点进行安全测试说明:该工具目前用户登录,注册,修改密码等功能的安全检查,纂改提交的客户端请求,评估安全风险,后续需完善工具操作。
2.4 Namp2.4.1工具介绍Nmap----网络探测和安全扫描工具,系统管理者和个人可以使用这个软件扫描大型的网络,获取那台主机正在运好行以及提供什么服务等信息,nmap运行通常会得到被扫描主机端口的列表。
每个端口的状态有:open,filtered,unfiltered。
Filtered状态表示:防火墙,包过滤和其它的网络安全软件掩盖了这个端口,禁止namp探测其是否打开。
Unfiltered状态表示:关闭状态。
2.4.2实用操作1.该软件有针对不同系统的安装版本,目前本机是Windows XP系统,从/book/inst-windows.html#inst-win-exe下载,并安装;2.启动nmap3.填入被扫描目标主机,执行扫描,如图:状态,其中unfiltered表示close状态.2.5 DirBuster2.5.1 工具介绍该工具是一个多线程的Java应用开源工具,用于强攻被测试系统服务器的目录,只有知道了目录信息才能确定攻击的目标,通过该工具扫描找出隐藏的目录或文件漏洞。
2.5.2 实用操作1.从https:///index.php/Category:OWASP_DirBuster_Project下载该工具,安全JDK,安装该软件;2.启动DirBuster,填写Target URL,填写端口,如果是HTTPS协议,则端口号是:443 。
在File with list of dirs/files栏中点击browse,选择破解的字典库:directory-list-2.3-small.txt,将File extension中填入正确的文件后缀,默认为php,如果为jsp页面,需要填入jsp.其它选项不变,点击右下角的start,启动目录查找3.扫描后的界面说明:上面扫描出来的界面,存在弱点,原则上扫描只能到dir层次,不能打印出dir下面的File列表。
2.6 Pangolin2.6.1 工具介绍该工具是一款帮助渗透测试人员进行SQL注入测试的安全工具,所谓的SQL注入测试就是通过利用目标网站的某个页面缺少对用户传递参数控制或者控制的不够好的情况下出现的漏洞,从而达到获取,修改,删除数据,甚至控制数据库服务器,Web服务器的目的测试方法。
2.6.2 实用操作1.下载,安装Pangolin工具;2.运行Pangolin,在输入框中输入URL地址,且带参数情况.比如:待测目标存在参数输入,假设为name=value/bank/login.aspx?name=value3.点击Check按钮执行扫描操作。
说明:2.7 LiveHTTP headers2.7.1 工具介绍该工具是FireFox下的一个插件,可以用来实时监测发起的http请求和响应,也可以修改请求参数之后重新发起请求。
主要是用于加密认证。
如果是加密认证,该工具监控的http请求head中,会显示Authentication字样。
2.7.2实用操作1.下载插件,加载到FireFox浏览器;2. 开启工具,用户在访问一个需要HTTP Basic Authentication的URL的时候,如果你没有提供用户名和密码,服务器就会返回401,如果你直接在浏览器中打开,浏览器会提示你输入用户名和密码。
下面是通过该工具截取的HTTP请求信息:3. 要在发送请求的时候添加HTTP Basic Authentication认证信息到请求中,有2种方法:一是在请求头中添加Authorization:Authorization:”Basic用户名和密码的base64加密字符串”二是在url中添加用户名和密码:http://username:password@localhost:8000/index.html4. 发送的时候,一般都是采用Base64编码base64enc.encode("user:password");5. 因此使用该工具的目的就是查看该请求页面是否有Authoriztion,是否是采用Base64编码或者其它类型的加密认证方式。