软件测试之安全测试

2024-01-03 19:42:31

一、测试范围

管理系统:url、登录框、搜索框、输入框、文件上传、文件下载
客户端:搜索框、输入框、文件上传、系统功能

二、测试点

  • 密码安全

  • XSS注入

  • SQL注入

  • 操作越权

  • 上传安全

  • 下载安全

?三、工具

  • fiddler

  • sqlmap

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看,也可以直接【点击文末小卡片免费领取资料文档】

软件测试视频教程观看处:

2024年Python自动化测试全套保姆级教程,70个项目实战,3天练完,永久白嫖...

四、测试过程

1、密码安全

(1)密码输入错误次数超限会锁定账号
(2)除了账号密码,需要图形验证码或短信验证码
(3)用户名不存在和密码错误需提示用户名或密码错误
(4)密码传输非明文传输,且加密类型不能太简单(如仅通过md5加密),日志系统中也不能将明文密码打印出来
(5)密码加密存储
(6)用系统默认账号admin/123456、admin/admin、root/123456等是否可以登录系统
(7)用fiddler拦截请求,将响应报文改成登录成功的报文无法登录系统

2、XSS注入

(1)在输入框中输入XSS注入脚本,如

<script>alert("test")</script>
<img?src=""?onerror="console.log("test");">
<img?src=?onerror=alert("x")>

保存成功后看页面是否有执行

(2)若前端有拦截无法输入,拦截请求,在请求报文中添加相应脚本,是否能保存成功

3、SQL注入

(1)在url的参数后面改成xxx='1'or'1'='1',能否跳转相应页面
(2)通过sqlmap对url中存在的SQL注入进行测试(需python环境)
(3)在搜索框中输入'1'or'1'='1'或者‘ and '%'=',是否能查询出所有结果

4、操作越权

在进行查看账单、查看xx记录等处,通过拦截请求,修改查询参数为非该用户的数据,是否可查出、操作相关数据

5、文件上传

(1)是否能上传.jsp、.exe、.bat格式的文件
(2)文件上传的目录是否可执行
(3)上传时是否暴露文件的绝对路径

6、文件下载

(1)文件下载是否可以通过修改路径下载其它文件
(2)需权限下载的文件是否可以绕过鉴权直接访问链接进行文件下载

五、彩蛋

测试搜索框时发现输入包含'('的条件会报错,输入'()'时会返回所有数据,是搜索条件处理不当导致,需登记到典型问题,之后有搜索框的测试中补充相应测试用例进行覆盖。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

文章来源:https://blog.csdn.net/huace3852/article/details/135363748
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。