bugbounty文件上传——基于时间的SQL盲注

2019-07-14 约 1285 字 预计阅读 3 分钟

声明:本文 【bugbounty文件上传——基于时间的SQL盲注】 由作者 落花四月 于 2019-07-14 10:08:00 首发 先知社区 曾经 浏览数 214 次

感谢 落花四月 的辛苦付出!

bugbounty:文件上传——基于时间的SQL盲注

原文链接:https://jspin.re/fileupload-blind-sqli/

这将是一篇简短的博客文章和关于Bug Bounties的第一篇文章,我正试图更多地参与这个问题,我正在寻找漏洞我的业余时间和90%的时间在Synack上。

本月初我被邀请参加在HackerOne上运行的私人bug赏金计划,由于一些特殊的原因,我不会在这里告诉公司的名字。

我问了一些朋友,如果他们知道应用程序中有一些他们愿意与我分享的“fishy”区域,那么我自己就会进入这个相同的程序,这就是朋友的意思。

https://twitter.com/reefbr交谈后,他向我发送了一个关键域(范围内)的自注册页面。注册过程没有任何问题,在点击发送按钮后几秒钟,我收到了一封包含访问详细信息的电子邮件。

在用户注册中发现一些问题,在应用程序中找到文件上传功能非常快。文件上传功能很简单,所以我尝试上传一个随机文件,看看应用程序是否有任何安全控制。我发现的限制是:

只接受PDF文件

AV在后端服务器上运行

在浏览上传功能后,我意识到应用程序只验证文件类型扩展名,例如“ filename .pdf ”。我尝试绕过这个验证,我在一些方面取得了

成功,但最终我没有在服务器端达到任何执行,是时候改变策略了。

回到过去,当我作为Penetration Tester履行我的官方日常职责时,我遇到了一个将文件名包含到数据库中的Web应用程序,据我记得那时

我在文件名中有一个Blind(基于时间的)SQL注入参数。那么,为什么不在这个应用程序中测试?

Burp Proxy设置为拦截HTTP请求,然后我点击应用程序中的Upload按钮并将原始filename参数替换为:

注意:我尝试发送没有.pdf扩展名的请求,但应用程序拒绝了。顺便说一下,这是Burp Scanner用于主动测试的相同Payload。

该应用程序在Cloudflare WAF “后面”运行,因此在尝试确认应用程序是否易受攻击之后,我的所有请求都收到了“拒绝访问”消息。

现在是时候回到https://twitter.com/reefbr,向Manoel报告绕过Cloudflare到同一个程序并再次......他告诉了我这件事。

使用@reefbr找到的bypass(配置问题)我确实设法确认SQL注入(最后)。

下面是我的PoC。初步要求如下:

让我们增加sleeping time...

慢慢的增加 sleeping time:

让我们确保分类小组能够理解并能够重现,所以+1进行请求......

这是所有的内容,希望你喜欢。

最后一点,这个私人程序正在处理非常敏感的信息(PII),因此提取任何数据会给程序所有者带来新的问题。考虑到这一点,

我选择使用睡眠Payload继续开发过程,并比较响应时间以证明漏洞。

时间线:

已发送报告

报告分类

已解决的报告(已修复错误)

赏金支付

关键词:[‘渗透测试’, ‘渗透测试’]


author

旭达网络

旭达网络技术博客,曾记录各种技术问题,一贴搞定.
本文采用知识共享署名 4.0 国际许可协议进行许可。

We notice you're using an adblocker. If you like our webite please keep us running by whitelisting this site in your ad blocker. We’re serving quality, related ads only. Thank you!

I've whitelisted your website.

Not now