appscan使用文档.docx
《appscan使用文档.docx》由会员分享,可在线阅读,更多相关《appscan使用文档.docx(18页珍藏版)》请在冰豆网上搜索。
appscan使用文档
appscan使用文档
D
选择完扫描类型后,点击下一步打开配置URL和服务器面板,如下图:
1)起始URL中输入要扫描的站点,可以是域名格式,也可以是IP格式;
如果勾选了“仅扫描此目录中或目录下的链接”,则会只扫描起始URL目录或者子目录中的链接;
区分大小写的路径:
如果选中,则大小写不同的链接会被视为两个页面,如A.apsx和a.spsx;建议linux或UNIX服务器时勾选,windows服务器时不勾选;
其他服务器和域:
如果应用程序包含的服务器或域不同于“起始URL”包含的服务器或域,则应该添加到此处,如和二级域不同;
我需要配置其他连接设置:
缺省情况下,AppScan会使用InternetExplorer代理设置,默认不勾选,若勾选,点击下一步会打开配置代理页面;
配置完成后,点击下一步打开登录管理面板,如下图:
2)登录管理提供4种选项:
a)记录:
推荐使用,选择此项,appscan将使用所记录的登录过程,从而像实际用户一样填写字段。
单击记录按钮,打开自带浏览器记录登录过程,登录完成后关闭浏览器,会自动将登录过程列出。
b)提示:
如果每次登录都需要人机交互,请选择该选项。
您必须仍然记录登录过程。
虽然AppScan将不会使用您记录的过程来尝试登录,但是它需要将该过程作为参考来了解何时已被注销。
c)自动登录:
如果AppScan可仅使用名称和密码来登录,而不需要特定的过程,请选择该选项,然后输入“用户名”和“密码”。
d)不登录:
仅当应用程序不需要登录时,或因为其他原因,您不想AppScan登录时,才选择该选项。
若账号密码错误,会提示:
回话页面未识别,需修改登录管理方式或登录账号密码
如果选中我想要配置会话中检测选项复选框,那么在单击下一步时,将会打开一个附加的向导步骤:
登录管理:
“其他”设置。
默认不选中。
登录管理配置完成后,点击下一步,打开测试策略面板,如下图:
3)Appscan预定义的测试策略可满足常见需求的有用策略的范围:
策略名称
描述
缺省值
包含所有测试,但侵入式和端口侦听器测试除外。
仅应用程序
包含所有应用程序级别的测试,但侵入式和端口侦听器测试除外。
仅基础结构
包含所有基础结构级别的测试,但侵入式和端口侦听器测试除外。
仅第三方
包含所有第三方级别测试,但侵入式和端口侦听器测试除外。
侵入式
包含所有侵入式测试(可能影响服务器稳定性的测试)。
完成
包含所有AppScan测试,但端口侦听器测试除外。
Web服务
包含所有SOAP相关测试,但侵入式和端口侦听器测试除外。
关键的少数
包含一些成功可能性极高的测试精选。
在时间有限时对站点评估可能有用。
开发者精要
包含一些成功可能性极高的应用程序测试的精选。
在时间有限时对站点评估可能有用。
a.发送登录和注销页面上的测试:
缺省情况下,AppScan将测试登录和注销页面以及应用
程序的其余部分。
您应该保持该缺省配置,除非:
您的应用程序具有安全保护,可阻止在这些页面上提供非法输入的用户,或如果测试这些页面,您的应用程序流程会改变
如果不确定您的应用程序会如何响应这些测试,那么请保持选定该选项。
b.在测试登录页面时不发送会话标识:
(该复选框仅当选中了先前复选框时才会处于活动
状态并缺省选中。
)建议将此复选框保留为选中状态,因为测试登录页面时会话标识可能会导致测试不成功。
仅当您确定需要有效会话令牌来测试登录页面时,才应清除该复选框。
如果不确定您的应用程序会如何响应,那么请保持选定该选项。
完成测试策略配置后,点击下一步将打开完成配置面板,如下图:
4)完成配置面板可供选择启动扫描的方式如下:
a.启动全面自动扫描:
启动应用程序的全面扫描(“探索”后将立即进行“测试”)。
b.使用仅自动“探索”来启动:
探索应用程序,但不继续“测试”阶段。
(可以稍后运行“测试”阶段)。
c.使用手动探索来启动:
浏览器将打开,并且您可以通过单击链接并填写字段来手动探索站点。
AppScan®将记录结果,以便在“测试”阶段使用。
d.我将稍后启动扫描:
关闭向导,不启动扫描。
下次启动扫描时,会使用该模板。
e.完成扫描配置后启动扫描专家:
如果想要在启动主扫描之前让扫描专家来评估配置,请选中此复选框。
扫描专家会登录应用程序并执行简短、初步的扫描,以评估已配置的设置。
如果需要,会建议更改配置。
5)点击完成按钮,appscan会按照配置内容开始扫描应用程序。
1.完全扫描配置
1)URL和服务器:
与创建扫描时一致
2)登录管理:
与创建扫描时一致
3)环境定义:
包括操作系统、web服务器、应用程序服务器、数据库类型、第三方组件、站点位置、站点类型、部署方法、潜在间接损害、目标分布、可用性需求、机密性需求、完整性需求。
环境定义并不重要,选择以后,可以使扫描避免无效测试,提高效率
4)排除路径和文件:
通过配置,扫描程序时会忽略应用程序中的某些路径或文件的特定类型,一般默认即可。
5)探索选项:
包括扫描限制、javascript和flash、探索方法、编码、用户代理程序;
扫描限制:
确定appscan探索应用程序的深度,包括冗余路径限制、单击深度限制、总页面限制,勾选后超过数目则不进行扫描;
Javascript:
确定appscan探索还是忽略javascript脚本,包括解析JavaScript代码以发现URL、执行JavaScript来发现URL和动态内容、重放登录时执行JavaScript。
前两个勾选后appscan会分析扫描javascript脚本;如果应用程序的登录页面使用JavaScript代码,那么必须选中第三个才能使AppScan可以在扫描期间进行登录。
Flash:
确定appscan探索还是忽略flash脚本,包括解析Flash以发现URL、执行Flash文件以发现潜在漏洞。
这两个都勾选后appscan会分析扫描javascript脚本。
探索方法:
确定appscan探索时是以宽度优先还是深度优先:
宽度优先是指逐页探索,在继续下一页面前探索一个页面上的所有链接,推荐选择这个。
深度优先是指按照链接逐一探索,并在它找到新链接时对每个新链接进行探索。
编码:
AppScan通常会自动检测应用程序的编码方法,因此缺省情况下会选中自动检测。
如果扫描结果中的响应内容似乎失真,那么这可能意味着未正确识别编码方法。
要解决此问题,请从下拉列表中选择正确的编码方法。
用户代理程序:
AppScan通常会自动检测用户代理程序,但是,如果您使用的浏览器不是内置浏览器,且不记录登录过程、多步骤操作或手动探索,AppScan将无法进行自动检测,因此您必须手动选择用户代理程序。
6)参数和cookie:
此视图用于管理三项主要功能:
向特定参数和cookie指定特殊处理;
定义具有AppScan®可能无法自行识别的特殊格式的参数和cookie;
控制对参数和cookie的缺省处理(“冗余调整”)
“参数和cookie”选项卡:
使您能够查看、添加、编辑和删除全局参数。
例如,您的应用程序可能具有某些特定的参数和cookie,而您不希望AppScan在测试期间操纵它们的值。
要确保AppScan没有更改这些参数和cookie,请从测试中排除。
例如,如果某些cookie或参数的值被更改,那么您的应用程序可能会锁定某个用户会话。
您应该将这些参数从控制中排除。
如果您没有将其排除,AppScan可能无法成功完成扫描,因为这些cookie会将AppScan锁定到应用程序之外。
在“探索”阶段中,AppScan会自动检测到可能是会话标识的cookie和HTML参数,并将其添加到此选项卡中的列表。
您可手动添加知道是会话标识的cookie和参数。
注:
通过隐藏/显示模板项按钮,可以过滤掉源于扫描模板中的但可能与当前扫描无关的项。
高级:
“定制参数”选项卡:
使您能够添加、编辑和删除具有AppScan可能无法正确识别的定制格式的参数。
冗余调整缺省值:
通过此链接,可以访问和编辑应用于所有参数的缺省冗余调整(无论是由AppScan发现还是由用户定义的)。
注:
更改单独参数的特定冗余调整在参数定义过程中完成。
更改为缺省值并不追溯性地应用到已定义的参数。
必须对每个参数都手动完成该操作。
7)自动表单填充:
指AppScan填写应用程序中的表单所使用的值。
其中许多表单都存在缺
省值,并且这些值会自动更新以包含在记录登录期间输入的任何值。
可以查看、添加和编辑这些值。
8)错误页面:
通过列表中的字符串、正则表达式和URL,识别错误页面。
如果将错误页面识别为正确页面,可能会影响测试结果。
9)多步骤操作:
用于测试只能通过以特定顺序单击链接来访问的站点部分,如购物下单。
注:
建议将多步骤操作的数量限制在五个,其中每个操作中的步骤数不超过25个,总步骤数不超过70个
10)基于内容的结果:
如果AppScan无法基于URL结构来定义应用程序树的逻辑结构,您可以使用此视图来执行此操作。
如果在站点内容的构造方式下,URL反映类似文件夹的层次结构,那么扫描结果会自动反映这一层次结构,从而使其易于浏览。
如果站点使用“面包屑”或其他“基于内容”的导航方法,以便URL不会指示用户在站点内的“位置”,那么建议您“教导”AppScan站点是如何进行“逻辑”构造的,以便其可以用能够轻松理解的格式来呈现扫描结果,而不是在一个或两个URL下列出冗长的结果。
这并非至关重要,但是将使您更轻松地浏览结果。
11)Glassbox:
在扫描时,此代理程序会监视服务器端的活动,收集源代码信息和其他数据。
这将使扫描变得更为快速和精确。
(具体可参照二.4)
12)通信和代理:
配置通信超时和代理服务器设置。
13)HTTP认证:
如果应用程序需要,请添加服务器级别认证和客户机端证书。
14)测试策略:
您可以:
•查看当前策略的详细信息
•编辑当前策略,以创建您自己的“用户定义的测试策略”
•导入预定义策略,或先前保存的用户定义策略
15)测试选项:
允许您配置会影响扫描长度和完整性的各种设置。
但是,在大多数情况下,缺省设置就已足够了。
16)特权升级:
使用不同的用户特权运行的扫描,比较不同用户级别的结果。
17)恶意软件:
启用恶意软件测试后,AppScan将在扫描期间检查应用程序中是否存在指向恶意外部Web站点的链接,需要互联网连接。
18)扫描专家:
通过设置,可以决定扫描专家探索的详尽程度,配置更改是自动还是手动实施,以及评估中会包含配置的哪些“模块”。
19)结果专家:
可运行一个或多个模块来处理扫描结果,并将其他信息显示在“详细信息”窗格的“问题信息”选项卡中。
20)高级配置:
更改会影响特定扫描的高级注册表设置
2.启动扫描
1)从“扫描配置向导”启动扫描
启动全面自动扫描
使用刚在向导中创建的配置来启动扫描;使用自动“探索”来启动并自动继续“测试”阶段。
使用仅自动“探索”来启动
启动扫描的自动“探索”阶段,但请勿自动继续“测试”阶段。
使用“手动探索”来启动
打开浏览器以允许手动探索应用程序(请参阅手动探索)。
我将稍后启动扫描
关闭向导,不用扫描(例如,想要先进一步编辑扫描配置,然后再启动扫描,或想要稍后启动扫描)。
2)从“扫描”菜单或工具栏启动扫描
全面扫描:
运行全面扫描。
继续“探索”应用程序,直到不再有未访问的URL为止,然后自动继续“测试”阶段。
(如果配置了多阶段扫描,请根据需要完成多个阶段。
)
仅探索:
“探索”应用程序,但不继续“测试”阶段。
在继续“测试阶段”之前,该操作允许您先检查“探索”结果,如果需要,会执行手动探索(请参阅手动探索)。
仅测试:
(站点已探索时才是活动的)基于现有“探索”结果来“测试”站点。
3.扫描中断
1)扫描因连接问题而停止
扫描可能因AppScan和它所扫描的服务器之间的连接问题而停止,或者因AppScan和本地Web代理服务器之间的连接问题而停止。
检测到连接问题后,AppScan等待问题修复时,将会开始90秒的倒计时。
如果问题在倒计时期间修复,那么“扫描通知面板”将消失,扫描恢复。
如果存在通信问题,那么通知面板将显示消息:
正在尝试连接至:
探索/测试将在秒后停止
如果扫描连接至多个服务器并且不止一个服务器关闭,那么所显示的IP地址可能是被扫描的服务器的IP,也可能是代理的IP(如果连接问题与Web代理有关),或者是IP的列表。
数字是90秒倒计时。
如果问题在倒计时达到零时仍未修复,那么扫描将停止。
问题修复后,您可以在扫描停止处继续扫描(扫描>继续)或重新扫描(扫描>重新扫描)。
2)扫描因应用程序问题而停止包括:
a.扫描因不能自动填写所有的输入表单而导致扫描停止;
b.扫描因遇到缺少NTLM认证而导致的中断链接,扫描停止。
问题a解决过程:
◆选择应用程序数据视图。
◆选择需要用户交互显示。
◆创建这些URL的“手动探索”(请参阅手动探索交互式URL),然后插入表单填充器值。
◆继续扫描,最好包含另一个自动探索阶段。
问题b解决过程:
⏹选择应用程序数据视图。
⏹选择失败请求显示。
⏹在扫描配置对话框>登录/注销中,输入平台认证详细信息。
⏹重新运行“探索”阶段以继续扫描。
4.主窗口界面
当在“视图选择器”中选择不同视图时,在“应用程序树”、“结果列表”和“详细信息窗格”中所显示的信息会更改。
下表中总结了屏幕的三个部分:
数据视图
显示来自“探索”阶段的脚本参数、交互式URL、已访问的URL、中断链接、已过滤的URL、注释、JavaScript和cookie。
应用程序树:
完成应用程序树。
结果列表:
从“结果列表”顶部的弹出列表中选择过滤器,以确定要显示哪些信息。
详细信息窗格:
脚本参数、交互式URL、已访问的URL、中断链接、已过滤的URL、注释、JavaScript和cookie的已过滤列表。
与其他两个视图不同,即使AppScan®仅完成了“探索”阶段,“应用程序数据”视图也可用。
使用“结果列表”顶部的弹出列表来过滤数据。
键盘快捷键:
F2
结果:
应用程序数据
问题视图
显示发现的实际问题,从概述级别一直到个别请求/响应级别。
这是缺省视图。
应用程序树:
完成应用程序树。
每个项旁的计数器会显示为项找到的问题数量。
结果列表:
列出应用程序树中所选定的节点的问题,以及每个问题的严重性。
详细信息窗格:
显示在“结果列表”中所选定问题的咨询、修订建议和请求/响应(包括所使用的所有变体)。
键盘快捷键:
F3
结果:
安全问题
任务视图
提供特定修复任务的任务列表,以修订扫描所找到的问题。
应用程序树:
完成应用程序树。
每个项旁的计数器会显示该项的修订建议数量。
结果列表:
列出应用程序树中所选定的节点的修订任务,以及每项任务的优先级。
详细信息窗格:
显示在“结果列表”中所选定的修复任务的详细信息,以及该修复将解决的所有问题。
键盘快捷键:
F4
结果:
修复任务
5.生成报告
点击菜单栏“工具”-->“报告”,可以打开生成报告面板,如下图:
1)报告类型分为5种,如下表:
名称
简短描述
安全性报告
扫描期间找到的安全问题的报告。
安全信息可能非常广泛,并可根据您的需要进行过滤。
包括六个标准模板,但根据需要,每个模板都可轻易调整,以包括或排除信息类别。
行业标准报告
应用程序针对选定的行业委员会或您自己的定制标准核对表的一致性(或非一致性)报告。
合规性报告
应用程序针对规范或法律标准的大量选项或您自己的定制“合规一致性”模板的一致性(或非一致性)报告。
增量分析报告
“增量分析”报告比较了两组扫描结果,并显示了发现的URL和/或安全问题中的差异。
基于模板的报告
包含用户定义的数据和用户定义的文档格式化的定制报告(格式为MicrosoftWord.doc)。
2)一般创建的是安全性报告,选择好报告的模板内容后,点击保存报告即可,报告格式可以是PDF、HTML、TXT、RTF或XML。
一、Glassbox安装使用
6.概述
常规扫描将应用程序视为“黑匣”,仅分析其输出而不“深入探查”该应用程序;而glassbox扫描则在扫描期间使用安装在应用程序服务器上的代理程序来检查代码本身。
因此得名为“glass”box(“明”匣)。
glassbox扫描具有以下优势:
1)在“浏览”阶段期间,glassbox扫描可以揭示符合以下条件的HTTP参数:
影响服务器端,但在响应中找不到,因此仅靠黑匣扫描无法发现。
(当前仅对Java实现了该功能。
)
2)在“测试”阶段期间,glassbox扫描可以更精准地验证特定测试(如SQL盲注)成功与否,从而减少“误报”结果数。
它还能揭示是否存在无法由黑匣技术检测出的特定安全性问题。
3)glassbox扫描支持AppScan®为您显示实际源代码中的脆弱性,从而简化报告和修复过程。
7.安装配置
安装包分为.Net和java两种类型,以.net为例:
1)打开...\ProgramFiles\IBM\AppScanStandard\Glassbox;
2)找到GB_DotNET_Setup.exe并将其复制到Web服务器;
3)在服务器上启动安装该程序,按照提示安装即可
4)当询问是在新Web站点还是在现有Web站点上安装时,选择建议的选项。
注:
建议使用这两个选项中的哪一个取决于您的系统。
在可能的情况下,将建议使用“现有Web站点”,但这不是始终可行的,在某些情况下可能会建议使用“新Web站点”。
通常,优先选择“现有Web站点”,因为它不需要新端口,而新端口需要在AppScan中进行配置,并且还可能需要其他防火墙配置才能供AppScan访问。
5)该步骤取决于在先前步骤中做出的选择:
a.现有站点:
如果选择了“现有站点”,现在将要求您从现有站点的列表选择一个站点。
注:
有多个站点时,向导将按优先顺序列出这些站点。
如果向导发现某些站点可能有问题,那么会将它们列在靠下的位置,并标记为“不推荐”。
但是,该顺序甚至“不推荐”标签都仅仅是建议,在某些情况下,您可能会决定选择标记为“不推荐”的站点。
提示:
无论您做出何种选择,都将启用所有站点的监视,但在可能的情况下,请尝试选择您计划配置为第一个扫描的起始URL的站点。
b.新站点:
如果选择了“新站点”,现在将要求分配端口。
必须定义一个端口以允许从远程机器扫描时访问AppScan。
注:
可使用测试按钮来验证所选端口当前是否可用。
6)为glassboxWeb应用程序代理程序设置“代理程序用户名”和“密码”。
7)单击安装。
该过程完成后,将出现最终消息,指示该过程是成功还是失败。
注:
安装包括重新启动IIS。
8)服务器安装成功后,返回appscan在扫描配置中进行配置,如下图:
9)URL中填写服务器IP和配置的代理端口号,用户名、密码填写配置的代理账号;
10)填写完成后,系统会自动连接服务器代理,会提示成功OR失败。
11)如果配置成功,在进行扫描时状态栏会提示glassbox扫描:
已启动。