安全矩阵

 找回密码
 立即注册
搜索
查看: 887|回复: 0

SQLRecon!MS-SQL渗透工具包

[复制链接]

260

主题

275

帖子

1065

积分

金牌会员

Rank: 6Rank: 6

积分
1065
发表于 2023-6-1 21:38:24 | 显示全部楼层 |阅读模式
本帖最后由 luozhenni 于 2023-6-1 21:38 编辑

SQLRecon!MS-SQL渗透工具包
原文链接:SQLRecon!MS-SQL渗透工具包
   Hack分享吧    2023-06-01 08:31 发表于日本

声明:该公众号分享的安全工具和项目均来源于网络,仅供安全研究与学习之用,如用于其他用途,由使用者承担全部法律及连带责任,与工具作者和本公众号无关。



现在只对常读和星标的公众号才展示大图推送,建议大家把Hack分享吧“设为星标”,否则可能看不到了!工具介绍SQLRecon是一款使用C#开发的MS-SQL渗透工具包,专为攻击性侦察和后期渗透而设计;有关每种技术的详细使用示例可参阅 wiki 。类似工具还有:SharpSQLTools、PySQLTools,大家可以自己去看下,根据实际场景使用。




工具参数
枚举

SQLRecon 支持 MSSQL SPN 的 Active Directory 枚举,类似于 PowerUpSQL 的 Get-SQLInstanceDomain.
  1. 枚举类型 (-e):
  2. -e domain - 使用当前用户令牌为MSSQL SPN枚举AD
  3.    [+] -d domain.local | (可选) Domain FQDN
复制代码
强制参数
强制参数包括身份验证类型(Windows、本地或 Azure)、连接参数和模块。
  1. 身份验证类型 (-a):
  2. -a Windows - Windows身份验证,这使用当前用户令牌
  3. -a Local - 本地身份验证,这需要本地数据库用户的凭据
  4. -a Azure - Azure AD域用户名和密码身份验证,这需要域用户的凭据

  5. 如果身份验证类型是Windows,那么您将需要提供以下参数:
  6. -s SERVERNAME - SQL服务器主机名/IP
  7. -d DATABASE - SQL服务器数据库名称,默认为“master”
  8. -r PORT - 默认端口1433
  9. -m MODULE - 您要使用的模块

  10. 如果身份验证类型是Local,那么您将需要提供以下参数:
  11. -s SERVERNAME - SQL服务器主机名/IP
  12. -d DATABASE - SQL服务器数据库名称,默认为“master”
  13. -u USERNAME - 本地SQL用户的用户名
  14. -p PASSWORD - 本地SQL用户的密码
  15. -r PORT - 默认端口1433
  16. -m MODULE - 您要使用的模块

  17. 如果身份验证类型是Azure,则您需要提供以下参数:
  18. -s SERVERNAME - SQL服务器主机名/IP
  19. -d DATABASE - SQL服务器数据库名称,默认为“master”
  20. -r DOMAIN.COM - 域的FQDN
  21. -u USERNAME - 域用户的用户名
  22. -p PASSWORD - 域用户的密码
  23. -m MODULE - 您要使用的模块
复制代码
注:有时 SQL Server 可能不会使用标准 TCP 端口,如:MSSQL 故障转移集群。如果身份验证类型是Windows或Local ,您可以选择通过 -r 参数来设置非标准连接端口。默认情况下 SQLRecon 将通过 1433 端口连接到数据库。

标准模块

标准模块用于与单个 MS SQL 服务器进行交互。
  1. 标准模块(-m):
  2. info - 打印有关SQL服务的信息
  3. query -o QUERY - 执行任意SQL查询
  4. whoami - 查看您登录的用户、映射的用户以及存在的角色
  5. users- 查看哪些用户帐户和组可以针对数据库进行身份验证
  6. databases - 显示SQL服务器上存在的所有数据库
  7. tables -o DATABASE - 显示您指定的数据库中的所有表
  8. search -o KEYWORD - 在您连接的数据库的表中搜索列名
  9. smb -o SHARE - 捕获NetNTLMv2哈希

  10. ↓命令执行(需要系统管理员角色或类似角色)
  11. enablexp - 启用xp_cmdshell
  12. disablexp - 禁用xp_cmdshell
  13. xpcmd -o COMMAND - 使用xp_cmdshell执行任意系统命令
  14. enableole - 启用OLE自动化程序
  15. disableole - 禁用OLE自动化程序
  16. olecmd -o COMMAND - 使用OLE自动化程序执行任意系统命令
  17. enableclr - 启用自定义CLR程序集
  18. disableclr - 禁用自定义CLR程序集
  19. clr -o DLLPATH -f FUNCTION - 在自定义存储过程中加载并执行.NET程序集
  20. agentstatus - 检查SQL代理是否正在运行并获取作业
  21. agentcmd -o COMMAND - 执行任意系统命令
复制代码




模拟模块

模拟模块用于在模拟 SQL 用户的上下文中与单个 MS SQL 服务器进行交互。
  1. 模拟模块(-m):
  2. impersonate - 枚举任何可以被模拟的用户帐户
  3. iwhoami -i IMPERSONATEUSER - 查看您登录的用户、映射的用户以及存在的角色
  4. iusers -i IMPERSONATEUSER - 查看哪些用户帐户和组可以针对数据库进行身份验证
  5. iquery -i IMPERSONATEUSER -o QUERY - 作为模拟用户执行任意SQL查询

  6. ↓命令执行(需要系统管理员角色或类似角色)
  7. ienablexp -i IMPERSONATEUSER - 启用xp_cmdshell
  8. idisablexp -i IMPERSONATEUSER - 禁用xp_cmdshell
  9. ixpcmd -i IMPERSONATEUSER -o COMMAND - 使用xp_cmdshell执行任意系统命令
  10. ienableole -i IMPERSONATEUSER - 启用OLE自动化程序
  11. idisableole -i IMPERSONATEUSER - 禁用OLE自动化过程
  12. iolecmd -i IMPERSONATEUSER -o COMMAND - 使用OLE自动化程序执行任意系统命令
  13. ienableclr - 启用自定义CLR程序集
  14. idisableclr - 禁用自定义CLR程序集
  15. iclr -o DLLPATH -f FUNCTION - 在自定义存储过程中加载并执行.NET程序集
  16. iagentstatus -i IMPERSONATEUSER - 检查SQL代理是否正在运行并获取作业
  17. iagentcmd -i IMPERSONATEUSER -o COMMAND - 执行任意系统命令
复制代码





链接的 SQL Server 模块
当您能够通过已建立的连接与链接的 SQL 服务器进行交互时,链接的 SQL Server 模块是有效的。
  1. 链接的SQLServer模块(-m):
  2. links - 枚举任何链接的SQL服务器
  3. lquery -l LINKEDSERVERNAME -o QUERY - 在链接的SQL服务器上执行任意SQL查询
  4. lwhoami -l LINKEDSERVERNAME - 查看您在链接的SQL服务器上登录的用户
  5. lusers -l LINKEDSERVERNAME - 查看哪些用户帐户和组可以针对链接的SQL服务器上的数据库进行身份验证
  6. ldatabases -l LINKEDSERVERNAME - 显示链接的SQL服务器上存在的所有数据库
  7. ltables -l LINKEDSERVERNAME -o DATABASE-显示链接的SQL服务器上提供的数据库中的所有表
  8. lsmb -l LINKEDSERVERNAME -o SHARE - 从链接的SQL服务器捕获NetNTLMv2哈希

  9. ↓命令执行(需要系统管理员角色或类似角色)
  10. lenablerpc -l LINKEDSERVERNAME - 在链接的SQL服务器上启用RPC和RPC out
  11. ldisablerpc -l LINKEDSERVERNAME - 在链接的SQL服务器上禁用RPC和RPC out
  12. lenablexp -l LINKEDSERVERNAME - 在链接的SQL服务器上启用xp_cmdshell
  13. ldisablexp -l LINKEDSERVERNAME - 在链接的SQL服务器上禁用xp_cmdshell
  14. lxpcmd -l LINKEDSERVERNAME -o COMMAND - 在链接的SQL服务器上使用xp_cmdshell执行任意系统命令
  15. lenableole -l LINKEDSERVERNAME - 在链接的SQL服务器上启用OLE自动化过程
  16. ldisableole -l LINKEDSERVERNAME - 在链接的SQL服务器上禁用OLE自动化过程
  17. lolecmd -l LINKEDSERVERNAME -o COMMAND - 在链接的SQL服务器上使用OLE自动化过程执行任意系统命令
  18. lenableclr -l LINKEDSERVERNAME - 在链接的SQL服务器上启用自定义CLR程序集
  19. ldisableclr -l LINKEDSERVERNAME - 在链接的SQL服务器上禁用自定义CLR程序集
  20. lclr -o DLLPATH -f FUNCTION - 在链接的SQL服务器上的自定义存储过程中加载并执行.NET程序集
  21. lagentstatus -l LINKEDSERVERNAME - 检查SQL代理是否正在运行并在链接的SQL服务器上获取作业
  22. lagentcmd -l LINKEDSERVERNAME -o COMMAND - 在链接的SQL服务器上执行任意系统命令
复制代码
下载地址点击下方名片进入公众号回复关键字【230601】获取下载链接



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 16:52 , Processed in 0.012490 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表