Web应用存在的十大安全问题

网站作为一款web端软件,是测试小伙伴们测试产品的重要组成部分。拿到一个网站,不知道怎么测试?那就先按照下面10大安全问题依次寻找。

1、SQL注入

拼接的SQL字符串改变了设计者原来的意图,执行了如泄露、改变数据等操作,甚至控制数据库服务器, SQL Injection与Command Injection等攻击包括在内

2、跨站脚本攻击(XSS或css)

跨站脚本(Cross-Site Scripting)是指远程WEB页面的html代码可以插入具有恶意目的的数据,当浏览器下载该页面,嵌入其中的恶意脚本将被解释执行,从而对客户端用户造成伤害。简称CSS或XSS

3、没有限制URL访问

系统已经对URL的访问做了限制,但这种限制却实际并没有生效。攻击者能够很容易的就伪造请求直接访问未被授权的页面

4、越权访问

用户对系统的某个模块或功能没有权限,通过拼接URL或Cookie欺骗来访问该模块或功能

5、泄露配置信息

服务器返回的提示或错误信息中出现服务器版本信息泄露、程序出错泄露物理路径、程序查询出错返回SQL语句、过于详细的用户验证返回信息。

6、不安全的加密存储

常见的问题是不安全的密钥生成和储存、不轮换密钥,和使用弱算法。使用弱的或者不带salt的哈希算法来保护密码也很普遍。外部攻击者因访问的局限性很难探测这种漏洞。他们通常必须首先破解其他东西以获得需要的访问。

7、传输层保护不足

在身份验证过程中没有使用SSL / TLS,因此暴露传输数据和会话ID,被攻击者截听,或使用过期或者配置不正确的证书。

8、登录信息提示

用户登录提示信息会给攻击者一些有用的信息,作为程序的开发人员应该做到对登录提示信息的模糊化,以防攻击者利用登录得知用户是否存在

9、重复提交请求

程序员在代码中没有对重复提交请求做限制,这样就会出现订单被多次下单,帖子被重复发布。恶意攻击者可能利用此漏洞对网站进行批量灌水,致使网站瘫痪

10、网页脚本错误

访问者所使用的浏览器不能完全支持页面里的脚本,形成“脚本错误”,也就是网站中的脚本没有被成功执行。遇到“脚本错误”时一般会弹出一个非常难看的脚本运行错误警告窗口

附:在web应用程序中是什么导致安全性问题呢?
一般有以下几个原因:
1、复杂应用系统代码量大、开发人员多、难免出现疏忽
2、系统屡次升级、人员频繁变更,导致代码不一致
3、历史遗留系统、试运行系统等多个Web系统共同运行于同一台服务器上
4、开发人员未经过安全编码培训或者公司根本就没有统一的安全编码规范
5、测试人员经验不足或者没经过专业的安全评估测试就发布上线
6、没有对用户的输入进行验证:
1)永远不要信任用户的输入,要对用户的输入进行校验
2)数字型的输入必须是合法的数字
3)字符型的输入中对 编码符号要进行特殊处理
4)验证所有的输入点,包括Get,Post,Cookie以及其他HTTP头

最后感谢每一个认真阅读我文章的人,下面这个网盘链接也是我费了几天时间整理的非常全面的,希望也能帮助到有需要的你!

在这里插入图片描述

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

如果你不想一个人野蛮生长,找不到系统的资料,问题得不到帮助,坚持几天便放弃的感受的话,可以点击下方小卡片加入我们群,大家可以一起讨论交流,里面会有各种软件测试资料和技术交流。

敲字不易,如果此文章对你有帮助的话,点个赞收个藏来个关注,给作者一个鼓励。也方便你下次能够快速查找。

自学推荐B站视频:

零基础转行软件测试:38天自学完软件测试,拿到了字节的测试岗offer,堪称B站最好的视频!

自动化测试进阶:已上岸华为,涨薪20K,2022最适合自学的python自动化测试教程,自己花16800买的,无偿分享

在这里插入图片描述

你可能感兴趣的:(软件测试,程序员,测试工程师,web测试,IT)