• 【安全】安全测试基本切入点


    安全问题,一个所有互联网公司挥之不去的伤痛,我们也是被捅过之后才知道痛

    大致列举一下我们在日常测试工作中应该要注意的安全问题(不涉及拿安全工具描述部分)

    1、XSS类:包括存储型和反射型

    反射型最容易传播的是搜索URL,注意处理处理这类URL中的XSS风险代码,其中存储型的危害比反射型的危害相对要更大,建议在平台做统一处理

    测试代码举例:http://drops.wooyun.org/tips/845

    2、前端存在业务校验

    任何前端的检验都是为提高用户体验而做,不具体任何安全性。若涉及业务上重要的校验,需要确保前后端都存在统一的逻辑校验

    例如:数字大小范围、时间长度范围

    3、POST表单冗余数据

    POST表单中提交了页面或业务逻辑中不允许直接修改的数据

    例如:常用的如手机号、邮箱,修改时会单独跳转到其他页面进行校验,展示时以灰色不可编辑的形式展示在表单中

     

    4、突破搜索参数数量

    很多网站都会有搜索,搜索中有很多的条件可选,业务在设计时对部分搜索条件的数量进行了限制

    在截获请求之后,对搜索条件进行扩充后并发请求服务器,会对服务器造成比较大的压力,这一条也与前面讲到的<前端存在业务校验>有关联

    5、密码类传输

    主要涉及注册、登录、修改密码、忘记密码这几类常用操作,传输过程中若使用明文密码是非常不安全的

    6、数据操作类带有ID

    密切注意编辑、删除操作中带有数据ID的情况,水平越权操作数据,是非常危险的漏洞

    7、数据库存储长度

    在产品设计时会对数据的可输入在前端做一个长度或输入类型限制,是为了保证更好的用户体验和确保有限的系统开销

    在前面我们已经知道前端的限制是没有任何安全意义的,通过工具修改数据类型和长度同样可被正常提交,若出错很有可能会暴露数据库的关键信息

    8、重复提交请求|数据数量有限制

    对于不允许重复提交的请求和数量有限制的存储,不光在前端做限制,在服务端也在有对应的校验和限制

    9、数据回填

    将用户输入的数据直接回填在JSP,然后作为标签中某个属性值显示在页面的HTML中,这种情况下如果不作处理,可能有XSS

    常见有属性有value和title

    10、自动登录

    修改密码、重置密码类操作时,一定不要在最后附加一个自动登录的动作。不可将这个判断将给前端或者浏览器

    11、撞库

    网络上有很多泄漏的账号密码资源,被拿到之后会用于撞库,取得一些网站的用户名密码

    这各情况通常的做法是增加操作成本,比如限制每个IP下请求对应接口的次数、出现验证码、锁定账户2小时等

    12、暴力破解

    重灾区在找回密码验证码,或者其他的任何重要操作需要数字验证码的部分

    建议:将验证码复杂度增加(由纯属4位数据变成6位数字和字母组合),同时加上图形验证码,同时最好有其他访问防爆或监控机制

  • 相关阅读:
    GDUFE ACM-1020
    GDUFE ACM-1069(简单的巴什博弈)
    GDUFE ACM-1138
    GDUFE ACM-1009
    GDUFE ACM-1008
    GDUFE ACM-1005
    LCA 最近公共祖先
    51nod
    51nod
    51nod
  • 原文地址:https://www.cnblogs.com/hncjp1989/p/5403903.html
Copyright © 2020-2023  润新知