小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

IIS+ASP建網(wǎng)站安全性分析 - Laky blog {游風(fēng)}

 濠水之魚 2006-04-07
    隨著Internet的發(fā)展,Web技術(shù)日新月異,人們已經(jīng)不再滿足于靜態(tài)HTML技術(shù),更多的是要求動(dòng)態(tài)、交互的網(wǎng)絡(luò)技術(shù)。繼通用網(wǎng)關(guān)接口(CGI)之后,微軟推出的IIS+ASP的解決方案作為一種典型的服務(wù)器端網(wǎng)頁設(shè)計(jì)技術(shù),被廣泛應(yīng)用在網(wǎng)上銀行、電子商務(wù)、網(wǎng)上調(diào)查、網(wǎng)上查詢、BBS、搜索引擎等各種互聯(lián)網(wǎng)應(yīng)用中。與此同時(shí),Access數(shù)據(jù)庫作為微軟推出的以標(biāo)準(zhǔn)JET為引擎的桌面型數(shù)據(jù)庫系統(tǒng),由于具有操作簡(jiǎn)單、界面友好等特點(diǎn),具有較大的用戶群體。目前,IIS+ASP+Access是中小型Internet網(wǎng)站的首選方案。但是,該解決方案在為我們帶來便捷的同時(shí),也帶來了嚴(yán)峻的安全問題。

一、安全隱患分析

  IIS+ASP+Access解決方案的主要安全隱患來自Access數(shù)據(jù)庫的安全性,其次在于ASP網(wǎng)頁設(shè)計(jì)過程中的安全意識(shí)和措施。
1.?dāng)?shù)據(jù)庫可能被下載
  在IIS+ASP+Access網(wǎng)站中,如果有人通過各種方法獲得或者猜到數(shù)據(jù)庫的存儲(chǔ)路徑和文件名,則該數(shù)據(jù)庫就可以被下載到本地。例如:對(duì)于網(wǎng)上書店數(shù)據(jù)庫,一般命名為book.mdb、store.mdb等,存儲(chǔ)路徑一般為“URL/database”或放在根目錄“URL/”下,這樣,任何人敲入地址:“URL/database/store.mdb”, 數(shù)據(jù)庫就可以被下載了。
2.?dāng)?shù)據(jù)庫可能被解密
  由于Access數(shù)據(jù)庫的加密機(jī)制比較簡(jiǎn)單,即使設(shè)置了密碼,解密也很容易。該數(shù)據(jù)庫系統(tǒng)通過將用戶輸入的密碼與某一固定密鑰(例如: Access 97為86 FB EC 37 5D 44 9C FA C6 5E 28 E6 13)進(jìn)行“異或”來形成一個(gè)加密串,并將其存儲(chǔ)在*.mdb文件從地址“&H42”開始的區(qū)域內(nèi)。我們可以輕松地編制解密程序,一個(gè)幾十行的小程序就可以輕松地獲得任何Access數(shù)據(jù)庫的密碼。因此,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。
3.ASP頁面的安全性
 ?。?)源代碼安全性隱患。由于ASP程序采用非編譯性語言,大大降低了程序源代碼的安全性。如果黑客侵入站點(diǎn),就可以獲得ASP源代碼;同時(shí)對(duì)于租用服務(wù)器的用戶,因個(gè)別服務(wù)器出租商的職業(yè)道德問題,也會(huì)造成ASP應(yīng)用程序源代碼泄露。
 ?。?)程序設(shè)計(jì)中容易被忽視的安全性問題。ASP代碼使用表單實(shí)現(xiàn)交互,而相應(yīng)的內(nèi)容會(huì)反映在瀏覽器的地址欄中,如果不采用適當(dāng)?shù)陌踩胧灰浵逻@些內(nèi)容,就可以繞過驗(yàn)證直接進(jìn)入某一頁面。例如在瀏覽器中敲入“...page.asp?x=1”,即可不經(jīng)過表單頁面直接進(jìn)入滿足“x=1”條件的頁面。因此,在驗(yàn)證或注冊(cè)頁面中,必須采取特殊措施來避免此類問題的產(chǎn)生。

二、提高IIS+ASP網(wǎng)站安全性的方法
   

  1.防止數(shù)據(jù)庫被下載
由于Access數(shù)據(jù)庫加密機(jī)制過于簡(jiǎn)單,有效地防止數(shù)據(jù)庫被下載,就成了提高ASP+Access解決方案安全性的重中之重。以下兩種方法簡(jiǎn)單、有效。
 ?。?)非常規(guī)命名法。為Access數(shù)據(jù)庫文件起一個(gè)復(fù)雜的非常規(guī)名字,并把它放在幾個(gè)目錄下。例如,對(duì)于網(wǎng)上書店的數(shù)據(jù)庫,我們不把它命名為“book.mdb”或“Store.mdb”,而是起個(gè)非常規(guī)的名字,例如:faq9jl.mdb,再把它放在如./akkt/kj61/acd/av5 的幾層目錄下,這樣黑客想通過猜的方式得到Access數(shù)據(jù)庫文件名就很難了。
 ?。?)使用ODBC數(shù)據(jù)源。在ASP程序設(shè)計(jì)中,如果有條件,應(yīng)盡量使用ODBC數(shù)據(jù)源,不要把數(shù)據(jù)庫名寫在程序中,否則,數(shù)據(jù)庫名將隨ASP源代碼的失密而一同失密,例如:
DBPath = Server.MapPath(“./akkt/kj61/acd/av5/faq9jl.mdb ”)  
conn.open “driver={Microsoft Access Driver (*.mdb)};dbq=”& DBPath  
可見,即使數(shù)據(jù)庫名字起得再怪異,隱藏的目錄再深,ASP源代碼失密后,也很容易被下載下來。如果使用ODBC數(shù)據(jù)源,就不會(huì)存在這樣的問題了:
conn.open “ODBC-DSN名”  
2.對(duì)ASP頁面進(jìn)行加密
  為有效地防止ASP源代碼泄露,可以對(duì)ASP頁面進(jìn)行加密。我們?cè)捎脙煞N方法對(duì)ASP頁面進(jìn)行加密。一是使用組件技術(shù)將編程邏輯封裝入DLL之中;二是使用微軟的Script Encoder對(duì)ASP頁面進(jìn)行加密。使用組件技術(shù)存在的主要問題是每段代碼均需組件化,操作比較繁瑣,工作量較大,而使用Encoder對(duì)ASP頁面進(jìn)行加密,操作簡(jiǎn)單、收效良好。Script Encoder的運(yùn)行程序是SCRENC.EXE,使用方法是:
SCRENC [/s] [/f] [/xl] [/l defLanguage ] [/e defExtension] inputfile outputfile
其中:/s 是屏蔽屏幕輸出;/f 指定輸出文件是否覆蓋同名輸入文件;/xl 指是否在.asp文件的頂部添加@Language指令;/l defLanguag指定缺省的腳本語言; /e defExtension 指定待加密文件的擴(kuò)展名。
3.注冊(cè)驗(yàn)證
  為防止未經(jīng)注冊(cè)的用戶繞過注冊(cè)界面直接進(jìn)入應(yīng)用系統(tǒng),我們采用Session對(duì)象進(jìn)行注冊(cè)驗(yàn)證。例如,我們制作了下面的注冊(cè)頁面。
設(shè)計(jì)要求注冊(cè)成功后系統(tǒng)啟動(dòng)hrmis.asp?page=1頁面。假設(shè),不采用Session對(duì)象進(jìn)行注冊(cè)驗(yàn)證,則用戶在瀏覽器中敲入“URL/hrmis.asp?page=1”即可繞過注冊(cè)界面,直接進(jìn)入系統(tǒng)。
在此,利用Session對(duì)象進(jìn)行注冊(cè)驗(yàn)證:
<%
’讀取使用者所輸入的賬號(hào)和密碼
UserID = Request(“UserID”)
Password = Request(“Password”)
’檢查UserID 及Password 是否正確
If UserID <>“hrmis” Or Password <>“password” Then
Response.Write “賬號(hào)錯(cuò)誤!”
Response.End
End If
’將Session 對(duì)象設(shè)置為通過驗(yàn)證狀態(tài)
Session(“Passed”) = True
%>
進(jìn)入應(yīng)用程序后,首先進(jìn)行驗(yàn)證:
<%
’如果未通過驗(yàn)證,返回Login狀態(tài)
If Not Session(“Passed”) Then
Response.Redirect “Login.asp”
End If
%>
通過對(duì)IIS+ASP+Access網(wǎng)上應(yīng)用系統(tǒng)安全性的研究,我們對(duì)現(xiàn)有系統(tǒng)進(jìn)行了改造,收到了較好的效果。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多