科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道在有注入漏洞的SQL服务器上运行CMD命令(1)

在有注入漏洞的SQL服务器上运行CMD命令(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

利用扩展存储过程xp_cmdshell来运行操作系统的控制台命令。这种方法也非常的简单,只需使用下面的SQL语句.

作者:赛迪网技术社区 来源:赛迪网技术社区 2007年9月1日

关键字: SQL Server SQL Server 各版本 CMD 数据库

  • 评论
  • 分享微博
  • 分享邮件
利用扩展存储过程xp_cmdshell来运行操作系统的控制台命令。这种方法也非常的简单,只需使用下面的SQL语句: z?: z%  
Z~%s6P  
EXEC master.dbo.xp_cmdshell 'dir c:\' &MSfZ;  
k6q2#C   
但是越来越多的数据库管理员已经意识到这个扩展存储过程的潜在危险,他们可能会将该存储过程的动态链接库xplog70.dll文件删除或改了名,这时侯许多人也许会放弃,因为我们无法运行任何的cmd命令,很难查看对方计算机的文件、目录、开启的服务,也无法添加NT用户。 p<li"nn  
<4l0&xh  
对此作过一番研究,后来我发现即使xp_cmdshell不可用了,还是有可能在服务器上运行CMD并得到回显结果的,这里要用到SQL服务器另外的几个系统存储过程: Z.>w-~O  
KDz;1  
sp_OACreate,sp_OAGetProperty和sp_OAMethod。 h86~8jFCE  
GJBDsy~u  
前提是服务器上的Wscript.shell和Scripting.FileSystemObject可用。 ]s3=g@pt{  
sp_OACreate )OX,6Qz  
在 SQL Server实例上创建 OLE 对象实例: J67rRIa#  
sp_OACreate progid, clsid, WlwO %  
objecttoken OUTPUT ,e)?l*  
[ , context ] 4xx-  
sp_OAGetProperty .n>-Ne  
["P|  
N.>'iw\[+D  
获取 OLE 对象的属性值: [tnKQ<u Y  
sp_OAGetProperty objecttoken, LlBc+09Bn  
propertyname 9Wmu.;_c  
[, propertyvalue OUTPUT] _*Oh7phIzS  
[, index...] $Nvv3G~ld  
sp_OAMethod )U/eC~C@  
?w{}U= *  
调用 OLE 对象的方法: #U$-gMy|/  
sp_OAMethod objecttoken, TA<h#I<  
methodname  3$D-ybF  
[, returnvalue OUTPUT] y(uU,$dM  
[ , [ @parametername = ] parameter [ OUTPUT ] iE | <*  
[...n]] <4H1B  
^MQ( {K?
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章