zoukankan      html  css  js  c++  java
  • 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中的越权

  • 相关阅读:
    JDBC遇到向ORACLE数据库表执行插入操作时,报错“列在此处不允许”
    关于对称加密和非对称加密以及签名,认证和证书的理解
    .net framework 各版本区别
    数据库设计三大范式
    业务系统设计
    修改 Windows 服务器默认远程端口3389
    iis读取不到本地证书问题 提示已经导入成功
    HTTPS 建立连接的详细过程
    使用ServiceStack构建Web服务
    转-微信支付(公众号支付JSAPI)
  • 原文地址:https://www.cnblogs.com/Rain99-/p/12242663.html
Copyright © 2011-2022 走看看