继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

利用PHP CGI参数注入漏洞:CVE-2024-4577

哈士奇WWW
关注TA
已关注
手记 522
粉丝 71
获赞 400

介绍: PHP 是一种被广泛使用的脚本语言,由于其在全球范围内被广泛部署于 Web 服务器中,一直是攻击者的攻击目标。最近由 Orange Tsai(来自 DEVCORE)发现并由 watchTowr 的研究人员利用的漏洞 CVE-2024–4577,揭示了 PHP 在处理 CGI 时的一个关键漏洞,可以在特定配置下实现远程代码执行 (RCE)。本文将探讨该漏洞的工作原理,并讨论受影响的版本及缓解措施。

图片来自:Devcore

了解这个漏洞: CVE-2024–4577 是一个 PHP CGI 参数注入漏洞攻击,允许攻击者在运行在 Windows 上的存在漏洞的 PHP 配置中注入任意的命令。以下该漏洞主要影响:.

  • 建议使用 PHP 8.3 版本,需要低于 8.3.8 版本
  • 建议使用 PHP 8.2 版本,需要低于 8.2.20 版本
  • 建议使用 PHP 8.1 版本,需要低于 8.1.29 版本

例如 PHP 8.0、PHP 7 和 PHP 5 这样的旧版本已停止维护,不再接收更新,如果仍在使用,它们可能会成为潜在的攻击目标。

PoC(概念验证): @watchTowr 开发的PoC展示了攻击者如何利用这一漏洞远程执行命令。以下是一个PoC中使用的命令示例:

python watchTowr-vs-php_cve-2024-4577.py -c "<?php system('calc');?>" -t http://192.168.253.132/test.sina  # 运行此Python脚本以在远程服务器上执行calc命令

此命令是针对一个PHP服务器的,并触发在Windows机器上运行计算器应用程序。输出显示了成功的利用:

成功利用漏洞
    (*) 攻击成功

技术细节如下: 该漏洞在于 PHP 处理 CGI 请求的方式,允许经过精心构造的参数被解释为脚本的一部分,从而导致命令注入。攻击者可以利用这一点,获得对服务器的完全控制,这可能导致数据泄露、未经授权的访问以及其他严重后果。

缓解措施如下: 管理员应立即尽快修复服务器,方法是将PHP更新至最新安全版本。

  • PHP 8.3.8 或之后的版本
  • PHP 8.2.20 或之后的版本
  • PHP 8.1.29 或之后的版本

结论: CVE-2024-4577 是一个明显的提醒,即使是小小的配置失误也可能导致严重的漏洞。定期更新补丁、持续监控和及时关注安全公告是保持 PHP 环境安全的关键措施。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP