【靶机实战】JWT Token 垂直越权漏洞

靶机信息

可以通过访问极核官方靶场开启靶机实验:极核靶场 -> 渗透测试靶场 -> JWT Token – 垂直越权漏洞

图片[1] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

漏洞科普

JWT Token垂直越权漏洞的核心在于服务端未正确验证令牌的签名或内容,导致攻击者可通过篡改Payload中的权限字段(如用户角色)非法提升权限。例如,当服务端未校验签名时,攻击者可直接将普通用户的sub字段(如wiener)修改为admin,或修改sysadmin字段为管理员标识(如Y),从而绕过身份认证,访问管理员专属功能(如管理面板删除用户)。此外,若系统仅依赖客户端提供的未加密字段(如userInfo)进行权限判断,攻击者伪造管理员令牌后可直接获得系统最高权限。该漏洞的修复需严格校验签名、限制敏感字段修改,并确保权限与令牌内容的一致性。

靶机实战

访问首页,可以看到已经有了默认用户 user ,但是没有密码。随便输入一个密码,抓取HTTP请求数据包,传输未加密。

POST /dev-api/login HTTP/1.1
Host: node.hackhub.get-shell.com:52555
Content-Length: 37
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
Accept: application/json, text/plain, */*
Content-Type: application/json;charset=UTF-8
Origin: http://node.hackhub.get-shell.com:52555
Referer: http://node.hackhub.get-shell.com:52555/login?redirect=%2Findex
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Connection: keep-alive

{"username":"user","password":"user"}

进行登录请求爆破,对password字段的值进行遍历爆破。根据响应,爆破出user用户的密码为 123456

图片[2] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

使用登录凭据:user / 123456 登录系统,根据提示:Flag在管理员后台。根据靶机标题:JWT Token垂直越权漏洞 提示,需要进行垂直越权到admin后台。

图片[3] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

查看登录的Cookie,发现为一串JWT:eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbl91c2VyX2tleSI6InVzZXIifQ.IKiUadJl6hUuSCnD38CVuIsl-BnGEkSEEECoDpHtFpU ,该JWT就是校验当前用户身份的Token。

图片[4] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

将JWT Token丢入相关 解析工具 或者 网站 ,这里用无影TscanPlus工具进行演示。解析后可以获取两个信息:1、login_user_key是对应的用户名,可以尝试篡改为admin越权。2、存在签名校验,需要爆破秘钥。

图片[5] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

使用无影TscanPlus的JWT秘钥破解功能,可以爆破出当前JWT的秘钥为 123456

图片[6] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

login_user_key的值修改为admin,配上正确的秘钥:123456,然后重新编码,得到新的JWT:eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbl91c2VyX2tleSI6ImFkbWluIn0.1M1MhiNpVCNivAfhqsDr4NDlsAnLDriBzgpWEO2aeg0

图片[7] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

将重新编码后的JWT Token在浏览器Cookie进行替换,然后刷新网页,可以发现后台变了,现在是admin用户的管理后台了。

图片[8] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell
图片[9] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell

根据提示:🎃 听说Flag在管理员的备注里,在系统管理用户管理中,找到admin用户,点击修改,即可在备注里发现Flag。

图片[10] - 【靶机实战】JWT Token 垂直越权漏洞 - 极核GetShell
THE END
想说的话 1  QQ & 微信交流群: 点击查看加群方式
2  本站运营不易,以真心❤️换真心💕,如果帮助到你,可以 推荐给朋友 或者 开通金贝会员 支持一下本站!
3  请不要进行任何非授权的网络攻击,如果造成任何损失均由使用者本人负责,与本站和原作者无关!
点赞63 分享
茶谈区 共5条

请登录后发表评论

      • 糸北的头像 - 极核GetShell金贝会员糸北徽章-星月夜 - 极核GetShell等级-LV6 - 极核GetShell作者0