• cookie越权的一个案例


    0x0前言

    此次案例来自一个互联网医院厂商,在就诊人管理处找到cookie越权,可越权查看其他用户的就诊人信息,后又发现在就诊人管理功能的上方的我的预约处有同样的问题

    因为cookie越权在学习越权时虽然学过,但确实个人而言少见,故记下案例

    0x1细节

    漏洞点:

    url:xxxx/user/weihu.html

    一开始测试的是修改和删除功能是否有越权

    测完后想测一下能否越权查看的时候,通过抓包发现,获得就诊人信息并非通过发送带用户身份标识ID的POST/GET包,而是直接请求该页面后返回就诊人信息,且请求包中无GET/POST数据传输,故怀疑用户身份标识ID在cookie中

    下为请求包

    GET /user/weihu.html HTTP/1.1
    
    Host: xxxxxxxxx
    
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0
    
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
    
    Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
    
    Accept-Encoding: gzip, deflate
    
    Connection: close
    
    Referer: xxxxxxxxxx
    
    Cookie: money=0; picurl=; pid=用户身份标识ID; username=xxxxx; DomainName=xxxxx; nickname=P******; verify=2584998616; onlineId=0
    
    Upgrade-Insecure-Requests: 1

    经过两个账号测试,pid为用户身份标识ID

    因为有两个账号,所以通过观察,发现pid生成规律疑似<某四位数字+任意四位数字>

    故尝试枚举,在枚举出一个有效pid后停止

     确实存在利用的可能性

    后经过测试,在我的预约处同样可以替换pid越权查看其他用户的预约

    0x3总结

    在测试越权中

    如果发现并非通过发送带用户身份标识ID的POST/GET包获取信息

    如:

    GET /user/weihu.html?pid=xxxx HTTP/1.1
    
    POST /user/weihu.html HTTP/1.1
    ......
    ......
    
    pid=xxxx

    则可尝试测试cookie中的越权

  • 相关阅读:
    Redis设计与实现第一部分:第5章:Redis 跳跃表
    根据临时表修改主表的某字段数据根据主表的主键
    Redis设计与实现第一部分:第2章:简单动态字符串SDS
    Redis
    MySQL的访问控制与用户管理
    MySQL字符集和语言的基础知识
    生成日志文件
    Python进阶09 动态类型
    Python进阶08 异常处理
    Python进阶07 函数对象
  • 原文地址:https://www.cnblogs.com/Rain99-/p/12242663.html
Copyright © 2020-2023  润新知