子域名模糊测试价值35,000赏金!

华盟原创文章投稿奖励计划

0x01 描述

故事发生在2022年,当时我报告了Bugcrowd中的一个私人程序的Auth Bypass Leads to SQLI&RCE ,该Bug在报告一天后就得到了修复。
2024年3月,我和Orwa决定重新测试我们的旧bug,我们重新测试的目标是admin.Target.com我们通过使用此命令使用子域模糊测试

ffuf -w /subdomain_megalist.txt -u 'https://adminFUZZ.Target.com' -c  -t 350 -mc all  -fs 0

您将在参考部分找到 subdomain_megalist.txt

使用此命令我们找到了一个名为 admintest.Target.com 的子域

自动草稿

你可以注意到图中有很多错误,但是没关系,因为你模糊了子域,错误意味着子程序不工作

admintest.Target.com 很容易受到攻击,因为它与原始子域 admin.Target.com 具有相同的后端我们一一说一下我们发现的bug

0x02 Auth Bypass & BAC

访问https://admintest.Target.com 被重定向到 https://admintest.Target.com/admin/login.aspx

读取一些js 文件,我们发现一个名为 https://admintest.Target.com/admin/main.aspx 的端点,直接在浏览器中打开它会将我们再次重定向到登录页面,但在Burp中我们注意到一些东西,

自动草稿

Content-Length 内容长度太大,对于重定向响应来说太大

您可以在这里注意到,即使您重定向到登录页面,最终也能正常工作,具有完全访问权限,通过删除这3个标头,我能够访问该面板自动草稿

使用 Burp Match And Replace 或使用 Burp 拦截响应

change 302 Moved Temporarily to 200 OKremove Location: /admin/Login.aspx?logout=yremove html redirect code

我们能够获得完整的身份验证绕过,并且它功能齐全,而不仅仅是前端绕过,在深入挖掘之后,我们发现adduser.aspx这个端点也会将我们重定向到登录页面就像我们能够main.aspx使用相同的技巧一样adduser.aspx访问端点并添加管理员帐户,我们还发现另一个端点显示管理员密码和用户名,无需任何身份验证。

自动草稿

SQLI注入:

添加管理员帐户后,我们就可以登录了,这对我们来说比使用上面的技巧更容易。

我们找到了一个名为“SQLQuery.aspx”的端点,从它的名字你就知道它的功能了:)
我尝试的第一件事是这个查询:Select * from users,我们能够看到所有用户的信息,包括密码、电子邮件、用户名等...自动草稿

RCE远程代码执行:

由于数据库是“mssql”,我们尝试使用xp_cmdshell将其升级为RCE。

您阅读了有关 xp_cmdshell 的内容

https://www.mssqltips.com/sqlservertip/1020/enabling-xpcmdshell-in-sql-server

简而言之,xp_cmdshell允许用户使用mssql在系统中执行命令,默认情况下它是禁用的,但您可以使用sqlmap选项--os-shell轻松启用它。
但在我们的例子中,我们不需要sqlmap,因为我们直接对数据库执行查询,就像 Select * from usersSELECT @@version 一样
因此,要使xp_cmdshell正常工作,我们要做的第一件事就是使用这些查询来启用它

SP_CONFIGURE "show advanced options", 1RECONFIGURESP_CONFIGURE "xp_cmdshell", 1RECONFIGURE

你可以看到这个,它会有所帮助

https://medium.com/@s12deff/microsoft-sql-server-to-rce-984016b4aaf8

然后 xp_cmdshell ‘whoami’ BOOM RCE!自动草稿

我们在一份报告中发送了所有这些内容,并在另一个端点中发送了另一个SQLI,我们总共获得了35k赏金。

0x03 经验教训和总结

1. 经常检查burp中的重定向响应

我和Orwa发现了很多很多相同的身份验证绕过,我的第一个赏金是在2020年,也是同样的技巧,/admin/admin.php重定向到login.php,但是当我在burp中看到响应时,admin.php工作正常,它只是前端Redreact !

2.如果您在子域中发现了错误并已修复,请尝试子域模糊测试

你可以这样使用它

admin-FUZZ.target.com E.G: admin-stg.target.comFUZZ-admin.target.com E.G: cert-admin.target.comadminFUZZ.target.com E.G: admintest.target.comFUZZadmin.target.com E.G testadmin.target.comadmin.FUZZ.target.com E.G: admin.dev.target.com

再次命令

ffuf -w /subdomain_megalist.txt -u 'https://adminFUZZ.Target.com' -c  -t 350 -mc all  -fs 0  -t 表示线程,不要设置得太高,否则您可能会错过很多有效子域名,而且它也取决于您的网络速度,因为我使用vps 350为我找到   -mc 表示macth所有响应代码,例如200,302,403,这很重要

3. 在报告之前尝试升级错误

4. 质量重于数量:
当您发现多个错误或将错误链接在一起尝试将它们作为一份报告报告时,您将获得更高的赏金:)

0x04 参考

感谢Netsecurity提供该列表,你也可以在这里找到很多列表

https://github.com/netsecurity-as/subfuz/blob/master/subdomain_megalist.txthttps://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS

文章来源:潇湘信安

黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!

如侵权请私聊我们删文


END

本文来源潇湘信安,经授权后由华盟君发布,观点不代表华盟网的立场,转载请联系原作者。

发表回复