Web测试经典bug、安全性测试

典型BUG

  • 表格的排序、翻页、添加、删除的联合测试
  • 输入框的长度检查
    • 数据库表中如果指定utf8长度为150,则可以输入150个中文或英文字母等
    • (有时候界面判断失误,却只能输入50个汉字)
  • 数据添加的时候引号等特殊符号没有处理导致添加失败
    • 搜索时输入条件是%_,则被当成了数据库的通配符,
  • 金融字段直接检查表的字段类型不能用float,要用Decimal,float类型会丢失精度
  • 外键约束检查
    • 通常是下拉列表元素中被引用过的数据不允许删除
    • 产品数据被订单引用了后,则产品数据不能删除
  • 按钮连续点击
    • 在可以连续添加的地方,点击按钮后要置灰(不可点击)
  • 多行文本保存格式
    • 添加的多行文本内容有换行,缩进,保存完查看的时候,格式要保留
  • 日期的有效性检查
    • 软件中的日期无法识别11-31日,无法辨识闰年闰月
  • 金额允许输入负数(合同,收入,转账等)
  • 文本输入框输入特殊符号保存失败:单引号等
  • 单选按钮没有默认值以及没有包含所有可选范围

Cookie & Session

Session是保存在服务器的全局变量,但是他会将一个SessionID作为Cookie发送给客户端,以作为下次访问的凭据

Cookie是服务器发给客户端的变量,下次客户端会带给服务器,Cookie服务器是不保存的

Sessionid其实是特殊的 Cookie

Session太多会消耗服务器资源

Cookie有安全性问题

  泄露隐私

  Cookie欺骗

都有有效期 Session是交互间隔

安全性测试

登录密码

1、密码的提交要用POST方式

2、需要不可逆加密

3、有密码复杂度要求(最小长度,大小写字母数字特殊字符)

4、不可逆的加密方式:MD5/sha1/sha256/SM3

文件上传

不能上传执行文件(*.exe)和脚本文件*.vbs(windows);*.sh(linux)

登录检查

将登陆后才能打开的URL复制到没有登录的浏览器检查,是否跳转到登录页面

Session Cookie检查

Cookie不能包含隐私

Cookie不能存放影响软件的重要信息,特别是在做重要操作的时候,不能相信Cookie

session需要设置有效期,多长时间不操作就失效

SQL注入漏洞测试

在输入框内输入:' or 1=1 # 验证是否能登陆成功

如何避免:要将输入的内容转义后再操作数据库

XSS跨站脚本

cross site script

在文本框输入<script>alert("ok")</script>,若出现弹窗,即有漏洞

如何避免:需要将内容做HTMLEncoding编码再将其出入数据库

原文地址:https://www.cnblogs.com/hereisdavid/p/13582064.html