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

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

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

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

工具目录

分类

查看所有分类
Loading categories
smbtakeover — 通过 SCM 交互在 Windows 上解除 445/tcp 绑定的 BOF 与 Python3 实现 | Kitploit
工具/GitHubGitHub/zyn3rgy/smbtakeover
身份验证与授权横向移动后渗透利用渗透测试红队
GitHubzyn3rgy/smbtakeover

smbtakeover

通过 SCM 交互在 Windows 上解除 445/tcp 绑定的 BOF 与 Python3 实现

查看仓库
362431年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

smbtakeover

一种在 Windows 上解除绑定并重新绑定 445/tcp 的技术,无需加载驱动程序、无需向 LSASS 加载模块,也无需重启目标机器。实现该技术是为了减轻在 C2 操作过程中基于 SMB 的 NTLM 中继负担。该技术的技术分析在 x33fcon 上的演讲 Relay Your Heart Away: An OPSEC Concious Approach to 445 Takeover 中有更详细的讨论。

PoC 以 Python 和 BOF 两种格式编写。两者在针对远程机器时都使用基于 TCP 的 RPC(ncacn_ip_tcp)作为传输方式。

操作使用说明

有关注意事项概览,请参阅相关博客文章的 操作用法 部分。要点包括:

  1. 禁用这些服务将有效禁用目标利用命名管道以及基于 SMB 的通信(CIFS 等)服务器端的能力。请了解目标机器的用途,尤其是当目标属于关键/生产基础设施时。服务一旦重新启用,将恢复正常功能。
  2. 有时需要禁用的服务系列略有不同。我曾在某些版本的 Windows Server 以及安装了某些第三方网络驱动程序的情况下看到这种情况。这不会阻止您使用此技术。您可以从 srvnet 开始向后枚举服务依赖项,查看是否还有其他需要考虑的依赖项。
  3. 您不必使用此 PoC 来利用此技术!您所喜爱的用于与服务控制管理器(SCM)交互的工具应该也能正常工作。
    • 请确保您了解所选工具在 RPC 传输中使用的到底是 ncacn_ip_tcp 还是 ncacn_np。如果使用后者(命名管道),则您将无法与目标进行远程通信以重新启用服务。

设置(适用于 Python 实现)

创建一个 Python 虚拟环境,并执行 pip install 安装 impacket。

  1. git clone https://github.com/zyn3rgy/smbtakeover.git
  2. cd smbtakeover
  3. python3 -m virtualenv venv
  4. source venv/bin/activate
  5. python3 -m pip install impacket
  6. python3 smbtakeover.py -h

示例用法

Python

  • python3 smbtakeover.py atlas.lab/josh:[email protected] check
  • python3 smbtakeover.py atlas.lab/josh:[email protected] stop
  • python3 smbtakeover.py atlas.lab/josh:[email protected] start

BOF

  1. bof_smbtakeover localhost check
  2. bof_smbtakeover 10.0.0.21 stop
  3. bof_smbtakeover localhost start

致谢

  • Python 实现主要基于 @Memory_before 的 wmiexec-Pro 项目。
  • BOF 实现主要基于 @TrustedSec 的出色人员所维护的 CS-Remote-OPs-BOF 仓库中的代码,例如 sc_config。
  • BOF 使用了 Fortra 的 bof-vs 模板。
下载工具