“ 免责声明:本文涉及到的所有技术仅用来学习交流,严禁用于非法用途,未经授权请勿非法渗透。否则产生的一切后果自行承担!一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉,谢谢!”
前言
在丰田GSPIMS网站中发现了一个未授权,只需知道邮箱,便可以以任何丰田公司用户或供应商的身份登录,最终以系统管理员权限完全控制了全球供应商管理网络。可以完全访问丰田的内部项目、文档和用户帐户,包括丰田外部合作伙伴/供应商的用户帐户。外部帐户包括以下用户:
-
米其林
-
大陆
-
斯坦利·布莱克和德克尔
-
哈曼
-
铁姆肯
-
BOS
-
Magna
-
….
漏洞记录
登录显示丰田和供应商登录选项:
查看代码,通过CanActivate](https://angular.io/api/router/CanActivate)和CanActivateChild来控制对Angular路由的访问,当用户试图导航到一个页面时,会确定他们是否被允许查看,然后返回true或false。更改代码以返回true。
还需要删除注销代码,以防止重定向回登录页面:
成功加载页面
到此,基本没什么危害,仔细查看了它的代码,发现是使用邮箱生成jwt,构造请求
JWT是JSON Web Token的缩写。可以将其视为一个会话令牌,它代表您在网站上的有效身份验证会话。你通常会在使用你的邮箱和密码登录到一个网站后得到一个JWT。然后,您将JWT提供给网站或API,以证明您的身份以及您可以访问的内容。
丰田的电子邮件使用一种可预测的格式:firstname. [email protected]。在谷歌上搜索了参与供应链的丰田员工,找到可能在GSPIMS系统中注册的人,并根据他们的名字伪造了他们的邮箱。发送请求,返回了一个有效的JWT!
登录的用户的角色是“管理-采购”,user/details API响应中有一个rolePrivileges节点,返回当前登录用户的信息
尝试查找具有系统管理员角色的用户,注意到另一个findByEmail的API,通过邮箱返回有关用户帐户的信息,同时也返回谁是用户的经理
最后,我找到了一个北美地区的管理员,使我能够访问用户管理部分,然后,找到了具有更高访问权限的用户,例如供应商管理员,全局管理员,最后是系统管理员。
漏洞影响
几张不同用户组的截图
美国用户
亚洲用户
美国系统管理员
以下是项目的零件列表:
所有供应商
到目前为止,在我向各种供应商报告的所有安全问题中,丰田的反应是最快和最有效的。我对他们的反应和解决问题的速度印象深刻。
原文始发于微信公众号(安全脉脉):侵入某车企的全球供应商管理网络