安全研究人员发现了一个零日漏洞,跟踪为CVE-2018-9206,自2010年以来影响了旧版本的jQuery文件上传插件。
攻击者可以利用此漏洞执行多种恶意活动,包括污损,泄漏和恶意软件感染。
该漏洞由Akamai研究员LarryCashdollar报告,他解释说,许多其他包含易受攻击代码的软件包可能会受到影响。
此软件包已包含在各种其他软件包中,此代码包含在项目Web可访问路径中。它在野外被积极利用,研究人员告诉插件作者。
在jQuery的文件上传是一个jQuery插件有多个文件选择,拖放支持,进度条,验证和预览图像,音频和视频。
该插件被众多支持标准HTML表单文件上传的服务器端平台广泛采用:PHP,Python,RubyonRails,Java,Node.js,Go等。
Cashdollar在包的源代码中发现了两个名为upload.php和UploadHandler.php的PHP文件,其中包含文件上传代码。
这些文件被上传到web服务器根路径中的files/目录,因此专家用curl和一个简单的PHPshell编写了命令行测试,以确认可以上传Webshell并在服务器上运行命令。
使用cmd=id的测试Web服务器的浏览器连接返回了Web服务器运行进程的用户ID。我怀疑这个漏洞并没有被忽视,谷歌快速搜索确认其他使用此代码的项目或可能来自它的代码是易受攻击的。有一些Youtube视频演示了针对类似软件包的攻击。专家写道。
利用该插件的Evert项目可能受到影响,研究人员指出,有一些YoutubePoC视频演示了针对类似软件包的攻击利用。
CE安全网发布了0day POC代码。
问题的根本原因是Apache在版本2.3.9中禁用了对.htaccess的支持以提高性能(服务器不必在每次访问控制器时检查此文件)并防止用户覆盖安全功能在服务器上配置。
副作用是技术选择使一些开发人员和他们的项目受到攻击。
为了解决这些变化并纠正Blueimp中CVE-2018-9206中的文件上传漏洞,开发人员只允许文件上传为内容类型图像。
互联网每天都依赖于许多安全控制,以确保我们的系统,数据和交易的安全。如果其中一个控件突然不存在,它可能会在不知不觉中将安全风险置于依赖它们的用户和软件开发人员身上。专家总结道。
对于软件开发人员来说,审查项目开发过程中所依赖的系统和库的更改也是一个好主意。在上面的文章中,Apache删除了一个安全控件,它不仅删除了Blueimp的Jquery文件上传软件项目的安全控件,而且大多数分叉代码都从中删除了。该漏洞影响了许多依赖它的项目,从独立的Web应用程序到WordPress插件和其他CMS。