漏洞挖掘丨敏感信息泄露+IDOR+密码确认绕过=账户劫持

漏洞挖掘丨敏感信息泄露+IDOR+密码确认绕过=账户劫持获得账户auth_token目标网站是一个工作招聘门户网站,测试保密原因暂且称其为redacted.com。一开始,我登录以应聘者身份去测试CSRF或某些存储型XSS,但没什么发现。接下来,我就想到了越权测试(IDOR),为此,我又创建了另外一个账号,两个账号一起可以测试如注册、登录、忘记密码等功能点的越权可能。创建账号前我开启了流量抓包想看看具体服务端的响应,注册开始时,网站会跳出一个提示,…

大家好,又见面了,我是你们的朋友全栈君。

获得账户auth_token
目标网站是一个工作招聘门户网站,测试保密原因暂且称其为redacted.com。一开始,我登录以应聘者身份去测试CSRF或某些存储型XSS,但没什么发现。接下来,我就想到了越权测试(IDOR),为此,我又创建了另外一个账号,两个账号一起可以测试如注册、登录、忘记密码等功能点的越权可能。

创建账号前我开启了流量抓包想看看具体服务端的响应,注册开始时,网站会跳出一个提示,输入注册邮箱检查是否是注册用户。在这里,我随便输入了一个未注册过的邮箱,服务端竟然有了异常响应,如下:

在这里插入图片描述

其中包含了auth_token的信息:

“redirect_url”:“/?auth_token=_v2_8dsf8as




df12ad4f5a4sdf56as1df65asdf56sd4ff&contact_id=11cb26ae&e 




xpire=1152315525”

账户劫持(Account Takeover)
哦,这就有点意思了,于是,我把这个邮箱更改为我另一个与注册账号对应的邮箱:
[外链图片转存失败(img-lm7Xgy2g-1567064367787)(https://image.3001.net/images/20190723/1563874931_5d36d673dfed4.jpeg)]就这样!也就是说,通过“/candidate/create”这个路径我就能获取网站注册用户的auth_token信息了。现在我只需要一个利用它的点就行,接着,我在 burpsuite的代理历史中查看有哪些请求用到了auth_token,哦,很简单,就是这个:

https://redacted.com/?auth_token=d8fs4ds8fdsf84dsf8dsfads8fasd6f84dsf684dsafccv68f4&contact_id=52z1d5d4&expire=1152315525

我开启了浏览器隐身模式访问了上述链接,BOOM,就这么简单地登录到了受害者账户(另一测试账户)中去了,完美的账户劫持。但当我查看受害者账户中的个人资料想更改密码或注册邮箱时,却无法看到个人资料信息,而且跳出来一个密码确认输入框(仔细观察,其中包含Forgot Password忘记密码功能):

[外链图片转存失败(img-RVm6ViEg-1567064402280)(https://image.3001.net/images/20190723/1563875011_5d36d6c3e5718.jpeg)]

该死,如何来绕过它呢?

绕过密码确认限制
先来一种猜想:要是我把受害都注册邮箱更改为我自己的邮箱,然后利用忘记密码功能发送密码更改请求,那我的邮箱会不会收到密码重置链接呢?来试试看。

于是,我在我自己的测试账户中找到了注册邮箱更改路径为 ‘/api/profile’,该路径下,通过类似{“email_address”:“attackers@gmail.com”}`的JSON格式PATCH请求,就能实现注册邮箱更改。

接下来,我在受害者账户登录cookie下,以这种方式在“https://redacted.com/api/profile”下,发送了JSON格式的PATCH请求-‘{“email_address”:“mynewmail@gmail.com”}’ :

04.jpeg响应成功显示请求有效,那么之后,我只需登录受害者账户环境,点击个人资料查看,在跳出的密码确认框那点击忘记密码(Forgot Password),那么我自己的邮箱就能收到服务端发来的一封密码重置链接邮件了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132387.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • createthread函数详解_createremotethread

    createthread函数详解_createremotethreadCreateRemoteThread和WriteProcessMemory技术示例程序:WinSpy另一种注入代码到其他进程地址空间的方法是使用WriteProcessMemoryAPI。这次你不用编写一个独立的DLL而是直接复制你的代码到远程进程(WriteProcessMemory)并用CreateRemoteThread执行之。让我们看一下CreateRemoteThread

    2022年9月13日
    2
  • svn用户名和密码设置_git配置本地用户名密码

    svn用户名和密码设置_git配置本地用户名密码SVN配置用户192.168.1.200   Administrator     ydd!@#$1234()90 1、备份D:\svn\conf\authz,再修改2、备份D:\svn\conf\passwd,再修改注意:* 权限配置文件中出现的用户名必须已在用户配置文件中定义。* 对权限配置文件的修改立即生效,不必重启s

    2022年9月13日
    1
  • 20岁挣到百万,并非不可能

    20岁挣到百万,并非不可能

    2021年8月6日
    59
  • IIS设置ISAPI筛选器Rewrite组件防盗链(防盗链可以节省流量,提高性能)

    IIS设置ISAPI筛选器Rewrite组件防盗链(防盗链可以节省流量,提高性能)如何在IIS的设置下添加ISAPI筛选器里的Rewrite组件,防止图片被盗用链接。首先笔者要说的是“盗链”很常见的现象,虽然没有采集那么“流行”,但是对于被盗者来说,碰到这事还真的及时解决,要不资源的消耗很可能会影响自身网站的正常运营。那究竟什么是盗链,怎样防止网站的信息被盗链呢?下面简单的说下:“盗链”的定义是:此内容不在自己服务器上,而通过技术手段,绕过别人放广告有利益的最终页,直接…

    2022年7月23日
    7
  • jquery 用于操作动态元素的delegate/on方法

    jquery 用于操作动态元素的delegate/on方法delegate()方法的事件处理程序适用于当前或未来的元素(比如由脚本创建的新元素)。在做项目中有很多由ajax动态生成的html标签,jquery对这些标签不会响应$(selector).click(function..或者$(selector).bind(‘click’,function..,。查看资料有的推荐使用live方法,但live在jQuery1.7中就不再建议使用,在1

    2022年10月21日
    2
  • 图片搜索引擎大合集

    图片搜索引擎大合集转自:bbs.service.alibaba.com/bbs/read.php?tid=2768相似图片搜索网站(以图搜图)如何凭着一张现有图片找出它的原始图片,或者是凭着一张小的缩略图找出原始大图?下面的搜索引擎可以帮你实现、以图找图、以图搜图。  以图搜图是颠覆性的搜索方式,基于图片的搜索模式自09年以来在全球各大权威评选中,都被公认为未来几年互联网最有前

    2022年9月10日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号