• WEB安全第七篇--终结篇考验逻辑思维:逻辑漏洞大汇总(越权、会话逻辑、业务逻辑、暴力破解)


    零、前言

      最近做专心web安全有一段时间了,但是目测后面的活会有些复杂,涉及到更多的中间件、底层安全、漏洞研究与安全建设等越来越复杂的东东,所以在这里想写一个系列关于web安全基础以及一些讨巧的payload技巧以便于备忘。不是大神、博客内容非常基础,如果真的有人看而且是大牛们,请不要喷我,欢迎指正我的错误(水平有限)。

    一、越权:

      1、本质:

        某账户拥有了超出它应有权限范围外的操作许可权。

      2、分类:

        (1)水平越权:横向拥有了同等安全等级、密级等衡量标准账户的权限。

        (2)垂直越权:纵向拥有了更高安全等级、密级等衡量标准账户的权限。

      3、一般越权发生的位置:

        (1)修改、重置、找回其他账户密码。

        (2)查看、修改其他账户未公开的信息,例如个人资料、文件、数据、程序等。

        (3)其他应与账户关联的权限操作。

      4、发生越权行为的开发级原因以及防御办法:

        涉及用户信息的操作需要验证用户身份,比如查看各种用户信息的情况下,不能只根据用户uid去搜索,应该再次进行身份验证。可以在session或者cookie中加入不可预测、不可猜解的user信息,或者特别敏感的操作应该再次让用户输入password或者其他用户验证信息。

      5、检测手段:

        (1)STEP1:查看所有敏感涉及到账户的操作是否有除了UID之外的验证方式,没有的话构造uid访问,可检查是否有漏洞,这里的uid代指username、email、userid 等声称的账户信息。

        (2)STEP2:如果有验证参数,尝试是否是可以预知的或者可以猜测出来的。不是,没有漏洞,是,有漏洞,构造请求验证漏洞。

    二、会话逻辑:

      1、session的问题:

        (1)sessionid简称sid,应在登录成功之后进行重置,一般保存在cookie中,set-cookie重置即可。否则会导致Session Fixation攻击。

        (2)sessionid应当在合理时间内过期,否则将导致session保持攻击,也就是别人利用cookie登录以你的身份登录。

    三、业务逻辑: 

      

    1、支付类逻辑漏洞
      (1)修改商品为负数(可能会增加攻击者账户对应的真实或虚拟财富值)
      (2)修改单价、总价、运费价(修改为负数,改小等)攻击者获取利益。
      (3)修改价格字段值为字符串,尝试攻击服务器异常抛出逻辑错误,例如,总价异常抛出是修改为0。

      2、信息轰炸类漏洞
      (1)短信轰炸、邮件轰炸、私信轰炸。
      (2)可能发生的地方:
        (2.1) 注册验证码获取(邮件短信)
        (2.2) 注册激活邮件获取(邮件)
        (2.3) 密码找回验证(邮件短信)
        (2.4) 支付类信息、验证码验证(短信)
        (2.5) 站内信、私信发送处(私信、站内信)
      (3)测试方法:抓到发送短信、邮件、私信、站内信的报文,不断重放。

      3、针对用户拒绝服务攻击
      (1)指定目标用户,拒绝其服务进行攻击。
      (2)逻辑漏洞,验证信息多次错误尝试可能导致用户被封锁。
      (3)漏洞地点:验证发生的任何地方(注册、支付、密码找回、密码修改、登录、敏感操作等)
      (4)测试办法:重放错误验证信息的报文。

    四、暴力破解:

      1、验证码。

      2、频率试错控制。

      

      

  • 相关阅读:
    关于医学的一点想法
    我的ArcGis9.3 到Arcgis10.0 升级步骤
    最近一月的娱乐生活:看电影,玩游戏
    最近一月的娱乐生活:看电影,玩游戏
    5年技术学习历程的回顾
    5年技术学习历程的回顾
    网站开发的技术选型问题
    网站开发的技术选型问题
    学技术真累
    Java实现 LeetCode 200 岛屿数量
  • 原文地址:https://www.cnblogs.com/KevinGeorge/p/8252656.html
Copyright © 2020-2023  润新知