本文将详细介绍Appscan功能选项设置的细节,适合E文一般,初次接触Appscan的童鞋参考阅读.
Appscan是web应用程序渗透测试舞台上使用最广泛的工具之一.它是一个桌面应用程序,它有助于专业安全人员进行Web应用程序自动化脆弱性评估。本文侧重于配置和使用Appcan,分析扫描结果将在下一篇文章中讨论.
Appscan的主要特点:
Appscan 8.5标准版有很多新的功能,其中大部分将在我下面的概要中涵盖:
Flash支持: 8.0 Appscan相对早期的版本增加了flash支持功能,它可以探索和测试基于Adobe的Flex框架的应用程序,也支持AMF协议。
Glass box testing::Glass box testing是Appscan中引入的一个新的功能.这个过程中,安装一个代理服务器,这有助于发现隐藏的URL和其它的问题。
Web服务扫描:Web服务扫描是Appscan中具有有效自动化支持的一个扫描功能。
Java脚本安全分析:Appscan中介绍了JavaScript安全性分析,分析抓取html页面漏洞,并允许用户专注于不同的客户端问题和DOM(文档对象模型)为基础的XSS问题。
报告:根据你的要求,可以生成所需格式的报告。
修复支持:对于确定的漏洞,程序提供了相关的漏洞描述和修复方案.
可定制的扫描策略:Appscan配备一套自定义的扫描策略,你可以定制适合你需要的扫描策略。
工具支持:它有像认证测试,令牌分析器和HTTP请求编辑器等,方便手动测试漏洞.
Ajax和Dojo框架的支持。
现在,让我们继续学习更多有关安装和使用Rati??onal AppScan扫描Web应用程序的过程。
Appscan的安装:
要运行Appscan的系统至少需要2GB的RAM,同时确保安装了.net framwork和Adobe flash来执行扫描过程中的Flash内容。在进一步之前,需要注意的是,这种自动扫描器会发送数据到服务器,有可能在扫描过程中让服务器超过负荷,所以它可能会删除服务器上的数据,添加新记录甚至让服务器崩溃.因此扫描之前最好备份所有的数据.
安装Appscan之前,关闭所有打开的应用程序。点击安装文件,会出现安装向导,如果你还没有安装.Net framwork,Appscan安装过程会自动安装,并需要重新启动。按照向导的指示,可以很容易的完成安装.如果你使用的是默认许可,你将只允许扫描appscan中的测试网站。要扫描自己的网站,需要付费购买许可版本.
探索和测试阶段:
在我们开始扫描之前,让我们对Appscan的工作做一个了解.任何自动化扫描器都有两个目标:找出所有可用的链接和攻击寻找应用程序漏洞。
探索(Explore):
在探索阶段,Appscan试图遍历网站中所有可用的链接,并建立一个层次结构。它发出请求,并根据响应来判断哪里是一个漏洞的影响范围。例如,看到一个登陆页面,它会确定通过绕过注入来通过验证.在探索阶段不执行任何的攻击,只是确定测试方向.这个阶段通过发送的多个请求确定网站的结构和即将测试的漏洞范围。
测试(Test):
在测试阶段,Appscan通过攻击来测试应用中的漏洞.通过释放出的实际攻击的有效载荷,来确定在探索阶段建立的安全漏洞的情况.并根据风险的严重程度排名。
在测试阶段可能回发现网站的新链接,因此Appscan在探索和测试阶段完成之后会开始另一轮的扫描,并继续重复以上的过程,直到没有新的链接可以测试。扫描的次数也可以在用户的设置中配置.
开始Appscan扫描:
Appscan的试用版可以从下面的链接下载并安装:
http://www.ibm.com/developerworks/downloads/r/appscan/~~V
开始扫描,启动Appscan,你会看到图一中所示的欢迎屏幕.
图一
点击"Create New Scan" 开始扫描一个新的Web应用程序
图二
选择一个适合你要求的扫描模板。模板包括已经定义好的扫描配置.选择一个模板后会出现配置向导。它会问你选择的扫描类型,选择"Web Application Scan",然后点击Next
扫描配置向导是该工具的核心部分,使用设置向导,会让Appscan知道的需求,其中有很多可供的需求选择.
URL and Servers(URL和服务器)
Starting URL(起始网址):此功能指定要扫描的起始网址.在大多数情况下,这将是该网站的登陆页面.选择http://demo.testfire.net这个演示站来测试Web应用程序漏洞.如果你想限制只扫描到这个目录下的链接,选中该复选框.
Case Sensitive Path(大小写的选择):如果你的服务器URL有大小写的区别,选择此项。对大小写的区别取决于服务器的操作系统,Linux/Unix中对大小写是敏感的,而Windows是没有的.
图三:
Additional Servers and Domains(另外的服务器和域):在扫描过程中Appscan尝试抓取本网站上的所有链接。当它发现了一个链接指向不同的域,它是不会进行扫描攻击的,除非在"Additional Servers and Domains"中有指定.因此,通过指定该标签下的链接,来告诉Appscan继续扫描,即使它和URL是不同的域下.点击下一步继续。
Login Management(登陆管理)
在扫描的过程中,可能会不小心碰到退出按钮导致Appscan注销.因此,要登陆到应用程序中,我们需要根据本条中的设置。
Recorded(记录):选择此项后,会出现一个新的浏览器,并尝试链接到指定的网站作为本扫描的起始URL.你需要输入账号和密码登陆到应用程序.这样设置之后你可以关闭浏览器,但是不要点击注销按钮.有时候你会发现打开的浏览器不是IE或者Mozilla,而是Appscan浏览器.你可以改变通过设置来改变这个.Tools-->Options -->Advanced,设置OpenIEBrower的值0--Appscan浏览器,1--IE,2--Firefox,3--Chrome.如果该网站的行为在不同的浏览器下有所不同,这个设置将是非常有用的.
图四
Prompt(提示):每次注销之后,Appscan会提示你登陆到应用程序中.如果你打算整个扫描你的系统,你可以选择这个选项.
Automatic(自动):在这里你可以直接指定用户名和密码,当你需要登陆到应用程序的时候.
图五
点击下一步继续.
Test Policy
根据你的测试策略,你需要选择最适合你需求的策略,现有的策略都是默认的,仅应用和基础设置,侵入性的,完整的,关键的少数等等.其中大多是使用现有的策略.如果你不希望在登陆时发送测试和注销页面,你可以选择该选项。
图六
点击下一步继续.
Complete
这是开始扫描的最后一步.IBM Rational Appscan允许你选择你想要的扫描方式,即完成扫描,探索扫描等.
Start a full automatic sacn(开始一个完整的自动扫描):随着前面创建的配置,Appscan将开始探索和测试阶段.
Start with automatic explore only(开始探索扫描):Appscan只会探索应用程序,但不发送攻击.
Start with manual explore(开始手动探索):浏览器将被打开,你可以手动浏览器应用程序.
当你想做出更多的更改扫描配置,你可以选择最后一个选项"i will start scan later".
在我们开始之前,我们有很重要的事情要做,它是Appscan的心脏和灵魂-"Full scan Configuration(全局扫描配置)"窗口.让我们明白为什么它在扫描任意应用程序的时候那么重要.
AppScan渗透测试工具
图七:
Full Scan Configuration
在下图中,有四个主要的部分--探索,链接,测试和一般,让我们看看具体的细节:
Explore
URL and Servers(URL和服务器): 扫描的URL和额外的服务器链接的处理.
Login Management(登陆管理):除了登陆方法,如果你想在Appscan同时登陆,通过这个可以指定.这将减少总的扫描时间.你还可以指定正则表达式检测注销页.
图八:
Environment Definition(环境的定义):在此设置下,你可以指定操作系统,Web服务器,数据库服务器,以及其它第三方组件,它可以帮助你提高扫描的精度和性能。
图九:
Exclude Paths and Files(排除路径和文件):设置扫描过程中排除的特定路径,甚至是特定的文件,比如.mps或.7z等.你可以在此选项下通过正则表达式来设置.
Explore Options(浏览选项):冗余路径选项有助于设置Appscan针对相同路径的扫描次数限制。因为有时Appscan可能会进入一个无限循环一次又一次扫描相同的URL.
Parameters and Cookies(参数和Cookies):包括有关参数的详细信息和应用程序中存在的COOKIES.
Automatic Form Fill(自动表格填写):在扫描过程中,Appscan遇到需要输入的形式.例如,一个注册页面,可能需要输入值,比如用户名和地址等。通过选择此项,可以让Appscan自动填写这些信息.
Error pages(错误页面):你在此配置下输入的错误页面将帮助Appscan判断错误页面.
Multi-Step Operations(多步骤操作):有部分应用程序,只有当你请求的数据按一定的顺序才可以达成(比如电子商务网站).通过这个设置你可以点击"start recording"来记录其序列.
Glass box Scanning:Glass box Scanning是Appscan引入的一个新的功能,代理将被安装在服务器上,这有助于扫描找到隐藏的URl和其它的问题.
Communication and Proxy(通讯及代理):你可以指定扫描器是否可以使用IE浏览器的代理设置(或不能使用任何代理)。
HTTP Authentication(HTTP身份验证):使用客户端证书,上传证书文件和密钥文件.
Test Policy(测试策略):所有的测试名称都列在这个部分,如果你不想Appscan扫描特定的漏洞,你可以取消其中的任何一个.
图十:
Test Options(测试选项):这个部分你可以选择适合的测试选项.Appscan发送大量的测试,需要花费大量的时间.但是选择适性测验,Appscan会尝试发送,以确定是适当的测试.它可以检测到服务器是IIS,然后只发送其中针对IIS的脆弱性检测测试,而不会检查其它服务器有关的问题.
Privilege Escalation(特权升级):你可以上传不同权限的用户或未经授权的用户扫描的扫描文件。
Scan Expert(扫描专家):扫描专家提出了建议,以更好的扫描应用程序。
点击OK,将回到最初的扫描向导窗口.选择"start a full automatic sacn",单击"finish"。完成配置过程,开始Appscan扫描.下一篇文章中,我们将探讨有关Appscan扫描结果分析.
原文链接:http://resources.infosecinstitute.com/ibm-rational-appscan/