web安全测试(AppScan工具的使用)

最近产品搞安全漏洞修复(先是由省公安局发文强制要求整改高危漏洞,发起的这项活动)

涉及几个点,必须修改:

①跨站脚本攻击

②业务漏洞

  • 场景 1:表格提交前,通过拦截请求参数,篡改参数后,再发送给服务器
  • 修改个人信息时,通过拦截响应数据,篡改响应结果后,再返回给客户端(即前端验证不正确,结果返回是正确的,于是成功进入修改页面)

③加密传输

用户在登录后,涉及需要传输密码的地方,需要加密传输

④防伪造登录 

在整改后,先手动验证了,最后用APPscan扫描。

=====================================================================

场景1,可以通过fiddler抓包工具,拦截requests 的数据,再发给服务器,并篡改

场景2,可以通过fiddler抓包工具,拦截responses返回的数据,篡改后,返回前端

=====================================================================

APPScan扫描操作教程

1.打开AppScan

2.文件-->新建-->创建新的扫描,如:常规扫描

 

3.进入配置向导页面,选择Web应用程序扫描,点击“下一步”

PS:若需要使用Web Service扫描功能,需要提前下载安装好GSC Web Services记录器

 

4.进入扫描配置向导页面,URL输入框的地址即为被测网址or其IP地址,如输入以下被测url,点击“下一步”

PS:1)可以打开AppScan内置浏览器查看被测链接是否能正常访问;2)以下被测网址为某个专门测试用的漏洞网站,非常规使用的网站

 

5.登录方法:根据实际需要选择(如:自动),用户名和密码即为被测网站的登录账户,点击“下一步”

PS:(如果后面,通过手工探索来录制脚本,在录制过程中,在界面上输入用户名和账号)

1)若登录方法选择“记录”,则可通过界面右侧的“记录(R)”按钮打开APPScan内置浏览器并输入登录信息,关闭内置浏览器后,AppScan即可记录该用户名和密码,扫描的时候相当于是已登录此账户的状态进行扫描;

2)若选择“提示”,则根据网站扫描探索过程中需要登录会提示输入登录信息,人工输入正确的账号信息之后继续扫描;

3)若选择“无”,则不需输入登录账户

6.选择适当的操作策略(一般保持默认选择,即“缺省值”),点击“下一步”

7.设置启动模式,根据实际需要选择:自动‘探索’(我选择的‘手动探索’启动)

PS:1)全面自动扫描:探索的同时,也进行攻击测试;

2)仅自动“探索”:自动探索网站的目录结构,可被测的链接范围及数目,不作实际攻击测试;

3)手动探索:先通过AppScan内置浏览器打开被测网站,手动点击不同的目录页面,然后AppScan记录之;

4)稍后启动扫描:先把此次网站的扫描配置进行保存,后续若想扫描的时候再继续操作。

 

8.保存配置:比如点击“是”,将此次配置命名保存到指定文件夹下

 

9.待步骤8保存配置之后,即会自动跳转到扫描网站的界面开始扫描(这里第八步是:自动‘探索’启动)(一般扫描时间根据测试范围和策略有关,这里可以看到扫描进度)

(如果,第八步是:手动探索,这里将弹出网站的地址,然后可以手动点击需要测试的场景啦)

PS:扫描过程中,若扫描时间较长,可自动让其扫描,或者点击“暂停”-保存本次扫描,然后下次继续-接着扫描的过程;若直接点击右上角“×”关闭AppScan,则不会保存本次扫描的过程

 
 

10.扫描完成之后,可查看扫描的结果如下所示

 
 

11.再点击“扫描”-“仅测试”,开始启动对此次探索结果的攻击测试

根据扫描测试过程中的APPScan工作情况,是否有扫描出安全漏洞,是否在扫描过程中进度受阻而不能继续扫描,是否覆盖到设定的url范围,对同一模块可重复扫描做对比,调整获得适合自己环境的配置

 
 

12.测试完成之后,保存本次AppScan扫描测试的结果;从统计出的安全性问题,可以查看对应的漏洞链接、请求和响应、修复建议

 

13.点击“报告”,创建不同要求的安全报告

 
 
 
 
 
作者:Fighting_001
链接:https://www.jianshu.com/p/46e1d026e97f
来源:简书

=====================================================================

AppScan使用特别注意事项

【1】AppScan扫描过程中,会向服务器发送较多请求,会占用一定的正常请求访问的资源,可能导致一些垃圾数据,建议只在本地测试环境执行

【2】使用AppScan之前,请提前备份好数据库的数据,假若扫描致使服务器异常关闭,则需重启服务;若扫描产生的请求数据过多,或Web程序出现异常,可能需要从备份数据恢复还原。一般情况下,正常扫描Web程序很少可能出现Web服务异常的情形

【3】AppScan扫描配置时,有区分为Web Application(Web应用程序)和Web Service(Web服务)的扫描方向。若只对Web程序本身的漏洞检测,就选Web Application扫描即可;

若选择Web Service扫描,则需提前告知服务器维护的负责人,建立异常情况发生的处理机制,最好避开访问请求的高峰or办公人员集中使用的时间,比如下班后自动扫描 

【4】AppScan扫描的结果并不代表完全真实的情况,受限于所用扫描器版本的漏洞规则库的规则,以及操作者的配置策略,扫描过程中有可能会使得扫描器出现误判or漏测

如有必要,还需对扫描的结果进行人工校验,可对同一Web应用分次进行扫描对比差异性

【5】扫描配置时,一般按照默认的测试策略-WASC威胁分类即可;若服务器本身所能承受的性能压力不强,or存在较多漏洞的时候,不宜选择“侵入式”策略,该策略存在着可能会入侵服务器、关闭服务、破坏数据库等风险
 
 
 

【6】使用破解版的AppScan扫描Web应用时,若Web网站本身结构比较复杂、模块众多、涉及的url数目巨大(几万-十多万),

则不宜一次性全站扫描,有可能连续扫描几个小时都不能探索完网站的所有结构。持续时间过长还可能造成AppScan出现卡顿,显示“正在扫描中”,但实际上已经没有继续再扫描。

因此,当第一次探索了大概的网站结构和容量之后,若容量巨大,最好分而治之,按模块结构分批进行扫描测试

【7】结果分析(Analysis)

在APPScan扫描结果基础上,根据不同的严重级别进行排序、手工+工具验证的方式对漏洞验证可靠性,排除误报的情况,并尽可能找出漏报的情况,把本次扫描结果汇总,对以上已验证存在的安全漏洞排列优先级、漏洞威胁程度,并提出每个漏洞的修复建议

然后,再把此次安全漏洞整理的报告提交给项目负责人,由负责人决定哪些漏洞转给开发工程师修复,而后再由安全测试工程师进行回归验证修复的状况

 
作者:Fighting_001
链接:https://www.jianshu.com/p/46e1d026e97f
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
=====================================================================
具体说,是”网站爬虫“,其利用了网页的请求都是用http协议发送的,发送和返回的内容都是统一的语言HTML,那么对HTML语言进行分析,找到里面的参数和链接,纪录并继续发送之,
最终,找到了这个网站的众多的页面和目录。这个能力AppScan就提供了, 这里的术语叫“探索”,explorer,就是去发现,去分析,了解未知的,记录。
在使用AppScan的时候,要配置的第一个就是要检查的网站的地址,配置了以后,AppScan就会利用“探索”技术去发现这个网站存在多少个目录,多少个页面,页面中有哪些参数等,简单说,了解了你的网站的结构。

“探索”了解了,测试的目标和范围就大致确定了,然后呢,利用“军火库”,发送导弹,进行安全攻击,这个过程就是“测试”;针对发现的每个页面的每个参数,进行安全检查,检查的弹药就来自AppScan的扫描规则库,其类似杀毒软件的病毒库,

具体可以检查的安全攻击类型都在里面做好了,我们去使用即可。

那么什么是“完全测试呢”,完全测试就是把上面的两个步骤整合起来,“探索”+ “测试”;

在安全测试过程中,可以先只进行探索,不进行测试,目的是了解被测的网站结构,评估范围; 然后选择“继续仅测试”,只对前面探索过的页面进行测试,不对新发现的页面进行测试。

“完全测试”就是把两个步骤结合在一起,一边探索,一边测试。

=====================================================================

参照:

① https://www.jianshu.com/p/46e1d026e97f  APPscan的使用

②https://blog.csdn.net/vikesgao/article/details/7823136  APPscan的工作原理

猜你喜欢

转载自www.cnblogs.com/ww-xiaowei/p/11093703.html