您的位置:首页 > 理论基础 > 计算机网络

由《图解HTTP》反省的测试用例思考之错误消息toast提示

2017-05-25 10:20 323 查看
背景

之前一直在想做登录操作的时候,为什么给用户的toast并不是那么明确,比如:

“用户名未注册” / “用户名错误”等明确告知用户名有问题;
“密码输入错误”/ “密码错误”等明确告知用户名有问题;

。。。

基本都是:“用户名或密码错误” 有点模糊两可之意

看了《图解HTTP》之后就懂了^_^

正解

在“第11章 web的攻击技术”中,有一小节提到 ‘不正确的错误消息处理’和‘密码破解’

不正确的错误消息处理(Error Handling Vulnerability)的安全漏洞是指,Web应用的错误信息内包含对攻击者有用的信息:

a.Web应用抛出的错误消息;
b.数据库等系统抛出的错误消息。

密码破解攻击(Password Cracking)即算出密码,突破认证。

密码破解有以下两种手段:

a.通过网络的密码试错(穷举法,字典攻击);
b.对已加密密码的破解(指攻击者入侵系统,已获得加密或散列处理的密码数据的情况);

根据以上2个定义,排列组合场景就会出现用户的信息泄露了;

如果明确地告诉普通用户,你的用户名错误,对普通用户来说易用性这一块很不错,只要修改一下就好了;

对黑客来说也降低了破解的难度系数,但对于自身软件来说安全系数就是低了,对用户的损失就是更大。

所以一般就数据库里报错的一般是加密,但是有些根据用户量以及业务场景一般是不加盐的,还是提倡能加些盐

对测试的简单思考

有时候前端显示的很完美,什么都告诉用户,提高用户的易用性,是否会对自身软件来说是种负担,假设按照明确告知用户哪哪哪错了,只是可能只是多些了一些if...else,对性能来说其实并不划算,有时候模糊些就好,只需要一个“||”就能解决,代码层面上更为整洁,对于测试来说,说所需要执行的用例,是没有差,该考虑的场景还是要走到一遍(如果看了代码,其实还是能少走很多测试场景^_^),对于安全性来说这个就需要考虑了。

有时候开发的同学不喜欢一些toast,喜欢报错的关键词显示,哈哈,这个一是对用户不友好,二可能会泄露一些被攻击的信息。测试同学还是需要督促。

多思考,多学习。哪天就相通了。(像小孩问妈妈这是为什么,妈妈总是说等你长大了就知道了<偷笑>)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  测试 安全
相关文章推荐