提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
安全测试
安全测试,是一种软件测试,用于发现软件应用程序中的漏洞/威胁/风险并防止来自入侵者的恶意攻击。目的是确定软件系统的所有可能漏洞和弱点,这些漏洞和弱点可能导致信息/收入损失,因此很多程序在上线发布之前,都会做响应的安全性测试,以确保程序正常无误,不会受外力的风险侵入。
安全测试的目标是识别系统中的威胁并衡量其潜在漏洞,以使系统不会停止运行或被利用。它还有助于检测系统中所有可能的安全风险,并帮助开发人员通过编码解决这些问题,维护程序稳定。
常用的安全测试工具:AppScan Burpsuite Nmap sqlmap
AppScan
定义
AppScan是IBM的一款web安全扫描工具,主要适用于windows系统。该软件内置强大的扫描引擎,可以测试和评估Web服务和应用程序的风险检查,根据网站入口自动对网页链接进行安全扫描,扫描后会提供扫描报告和修复建议等。
AppScan是IBM的一款web安全扫描工具,可以利用爬虫技术进行网站安全渗透测试,根据网站入口自动对网页链接进行安全扫描,扫描之后会提供扫描报告和修复建议等。AppScan有自己的用例库,版本越新用例库越全(用例库越全面,则对漏洞的检测越全面,被测试系统的安全性越高)
工作原理
通过搜索(爬行)发现整个web应用结构,验证-通过对于Response的分析验证是否存在安全漏洞;分析-根据分析,发送修改的HTTP Request进行攻击尝试(扫描规则库)
1.探索了解整个web页面结果
2.分析,使用扫描规则库对修改的http request进行攻击尝试
3.分析response来验证是否存在安全漏洞
安装版本选择
建议安装最新版本,部分版本对电脑要求会高一些,可能会出现不适配的情况,有IBM证书和HCL证书两种形式,两种形式对应不同的版本。如果下载的是需要导入IBM证书的版本,需要找到IBM证书进行导入;如果下载的是HCL的,则需要找到HCL进行导入。
扫无需登录的系统
对于无需登录的系统,进行浏览器扫描测试,可以看到仪表板清晰的展示了需要解决的问题,以及问题的严重等级程度。
比如严重等级高的问题,修改api接口的路径,响应结果是200,说明这个接口是能访问通畅的,那么也会造成严重的后果,对方可能通过这个接口进行无限的访问,增加服务器负荷,可能会导致系统瘫痪。
可以进行的解决方式:开发可以在代码中进行设置,除了正确的状态码之外的api请求,统一返回一个状态码即可,使之除了正确访问之外,其他的请求全部统一拦截。
扫带登录页面的系统
带登录页面的系统进行浏览器安全测试扫描:
1.配置浏览器参数
2.记录登录参数的cookie数据,记录登录状态,保持登录状态
3.配置测试策略
4.设置完成后,进行相关安全扫描
比如扫描的结果中修改的请求方式:原来请求方式是post被修改为了Delete类型,但是请求响应是OK 200
那说明url链接是存在一定风险的。
解决方式:通过修改返回状态码即可解决
扫带图形验证码的系统
登录-带图形的验证码的系统,如何进行安全扫描
因为每次登录验证码都会发生变更,经过测试有一下2种方式进行解决:
1.通过手动扫描的形式进行安全扫描测试
2.可以让开发修改代码,保证验证码始终生成的是同一个,可以通过设置cookie的形式进行安全扫扫描测试
因为图形验证码会一直更改,appscan无法记录准确的登录信息,所以目前未找到合适的解决方式,保持始终生成的验证码都是同一个
若扫描过程中,出现中断/卡顿/电脑宕机的情况,appscan自带扫描记忆,下次扫描会从中断的地方进行再次扫描。
当出现登录信息获取不到,观察接口响应,出现异常,手动退出,重新进行扫描
扫描完成后可输出相应的安全测试报告,报告中详细解读了产生的原因,并给出了解决方案和方式,报告很详细,中英文都有
安全测试报告中,从介绍/摘要/问题分类/修订建议/咨询/应用程序数据几个方面详细描述了测试结果。
对于日常系统中,appscan是可以很好的解决一部分潜在的安全性问题,可以帮助前端后端同学,更好的设计代码和代码架构,提升IT产品安全质量,尽可能在发布之前找到安全问题予以修补降低成本度量安全,保证软件系统不被非法入侵,不受各种因素的干扰。
Appscan还有很多安全测试策略,可供各种安全扫描
版权归原作者 汪敏wangmin 所有, 如有侵权,请联系我们删除。