hardy (@Mike77)【漏洞复现】sub2api接管账号 中发帖

极简版原理: 

受害者用邮箱注册,里面充了钱。
攻击者只知道这个邮箱。
攻击者走 OAuth 登录(不一定是 GitHub,站上开了哪种就能试哪种)。
在「补全/绑定」步骤里填受害者邮箱。
系统发现邮箱已存在,却没验证是不是他的,就把攻击者的 OAuth 挂到了受害者账户上。

操作: 
进入一个sub2api登录页面 看看有那些登录方式(github gmail linux.do) 
点一个进去 补全注册页面 举例github 
 [image] 
在这个页面打开f12 控制台 依次执行: 
  // ① 把 pending 指向受害者(不校验密码)
  const r1 = await fetch('/api/v1/auth/oauth/pending/create-account', {
    method: 'POST',
    headers: { 'Content-Typ...
 
 
Back to Top