带你了解如何发现在 magix.com 和 xara.com 网站中的严重安全漏洞

阅读量62576

发布时间 : 2024-07-10 19:32:53

x
译文声明

本文是翻译文章,文章原作者 Proseizala,文章来源:Medium

原文地址:https://medium.com/@proseizala/magix-bug-bounty-magix-com-rce-sqli-and-xara-com-lfi-xss-c4e8492bbf3e

译文仅供参考,具体内容表达以及含义原文为准。

德国 Magix Software GmbH 授予我名人堂名单和免费的 Magix Music Maker 2014 Premium 许可证,以表彰我报告了 magix.com 和 xara.com 在线基础

设施中的几个严重安全问题,这些问题可能被用来彻底破坏这两个网站:

在此,我要感谢 Magix 安全团队的快速响应和始终透明的响应,以及整体良好的协调流程。这是一个完美的例子,说明漏洞赏金运营商和研究人员之间的沟通如何让双方都满意。在我第一次报告漏洞后仅几天内,就很快修复了关键漏洞(RCE、SQLi、LFI)而修复 XSS 则花费了更长的时间,但对于中等严重性的问题来说,这仍然是可以接受的。

Bug Bounty 计划始终是一个巨大的挑战,有时你会获得非常酷的东西和像这样的很好的参考资料作为回报——现在这里有一个关于已发现漏洞的简短文章,这些漏洞已经被 Magix 修复。

europe.magix.com 上的远程代码执行

这是我在开发这个漏洞赏金计划时发现的最危险的漏洞。我发现了一个脚本,它允许攻击者通过 HTTP POST 请求上传 zip 文件。该脚本接受任何 zip 文件,将其重命名为某个临时名称,最后将 .zip 文件解压到工作目录中,而不检查 zip 文件是否包含有效文件。此外,解压的内容可以通过 www 访问 — 我认为问题很明显。

为了证明 Magix 的可利用性,我编写了一个简短的 Python 脚本。以下代码片段展示了如何使用非常方便的 Python ZipFile 函数在内存中动态生成 zip 文件。.zip 文件包含一个名为“/tmp/test.php”的文件,其中包含自定义 PHP 有效负载。

/usr/bin/python 的 #!

导入zip 文件

StringIO导入StringIO

导入zlib

内存文件 = StringIO()

zipFile = zipfile.ZipFile(inMemoryFile, ‘w’, zipfile.ZIP_DEFLATED)

zipFile.writestr(‘./tmp/test.php’, ‘<?php echo \”www.rcesecurity.com\”; ?>’)

zipFile.close()

对于 Magix 来说,目标脚本在 POST 任意 zip 文件后会回显一些额外的(且危险的)调试输出:看起来 Magix 忘记停用此输出了——如果没有这个,我可能就不会发现这个缺陷了 🙂

由于调试输出还公开了提取文件的完整路径,因此这会导致一个很好的 RCE 条件:

现在想象一下攻击者上传一些恶意的 C99……

europe.magix.com 上的 SQL 注入

此漏洞或多或少与之前描述的 RCE 漏洞类似。如果 zip 文件包含特制的 .ini 文件,则造成 RCE 漏洞的相同脚本会在 SQL 查询中使用未过滤的 .ini 值:

downloadsv9.xara.com 上的本地文件包含

本地文件包含可能与 RCE 漏洞一样危险,因为攻击者可能会读取 /etc/passwd 等敏感系统文件:

…如果你有一个懒惰的系统管理员,喜欢对文件和目录使用 chmod 777,那么可能会发现更多信息 😉

downloadsv9.xara.com 上的跨站点脚本

好的 – 我保证不再详细地写有关 XSS 的内容,所以我将给你留下 PoC 屏幕截图:

对于漏洞赏金猎人和 Magix 来说这真是快乐的一天!

本文翻译自Medium 原文链接。如若转载请注明出处。
分享到:微信
+10赞
收藏
安全客
分享到:微信

发表评论

内容需知
合作单位
  • 安全客
  • 安全客
Copyright © 北京奇虎科技有限公司 三六零数字安全科技集团有限公司 安全客 All Rights Reserved 京ICP备08010314号-66