记一次从JS源码分析到任意用户登录

admin 2024年12月31日23:03:57评论4 views字数 659阅读2分11秒阅读模式

原文首发在:先知社区

https://xz.aliyun.com/t/16955

声明

本文章所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法.
此文章不允许未经授权转发至除先知社区以外的其它平台!!!

前言

此网站是某个众测的项目,主要漏洞还是通过前端源码分析到任意用户登录,攻击者可据构造认证数据包进行任意用户登录从而获取用户数据,比较经典。

漏洞

老样子,开局登录框,这一步把小狐狸打开,使用burp检测网站的所有接口数据

记一次从JS源码分析到任意用户登录
发现某js文件泄露appId以及clientId

记一次从JS源码分析到任意用户登录
通过查看小熊猫插件发现/auth/oauth/token接口

记一次从JS源码分析到任意用户登录
查看前端源码,全局搜索该接口

记一次从JS源码分析到任意用户登录
我们通过上述源码逻辑发现token生成格式为

Authorization = 'Basic ' + btoa(''.concat(o, ':').concat(c))

其中o为clientId,c为appId,在使用btoa函数进行处理,而btoa函数到底是什么直接浏览器搜索或者问AI也行

记一次从JS源码分析到任意用户登录
我们也可直接通过浏览器控制台使用btoa函数进行处理我们想要的字段即可,如下图:

记一次从JS源码分析到任意用户登录
最终形成这种格式

Authorization:Basic dnhpxxxxxxxxxxxxxxxx

构造数据包获取token

记一次从JS源码分析到任意用户登录
查看登录接口,可以发现主要通过userId进行登录控制用户名

记一次从JS源码分析到任意用户登录
因此我们可以构造登录认证的链接并指定userid进行任意用户登录

记一次从JS源码分析到任意用户登录
登录成功,获取到姓名,手机号等信息

记一次从JS源码分析到任意用户登录

原文始发于微信公众号(亿人安全):记一次从JS源码分析到任意用户登录

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月31日23:03:57
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次从JS源码分析到任意用户登录https://cn-sec.com/archives/3576265.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息