最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

高手支招ASP+Access的安全隱患及對策

來源:懂視網(wǎng) 責編:小采 時間:2020-11-09 07:59:01
文檔

高手支招ASP+Access的安全隱患及對策

高手支招ASP+Access的安全隱患及對策:http://tech.ccidnet.com/art/1099/20070420/1066767_1.html 隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后,ASP作為一種典型的服務器端網(wǎng)頁設計技術(shù),被廣泛地應用在網(wǎng)上銀行、電子商務、搜索引擎等各種互聯(lián)網(wǎng)應用中。同時Acces
推薦度:
導讀高手支招ASP+Access的安全隱患及對策:http://tech.ccidnet.com/art/1099/20070420/1066767_1.html 隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后,ASP作為一種典型的服務器端網(wǎng)頁設計技術(shù),被廣泛地應用在網(wǎng)上銀行、電子商務、搜索引擎等各種互聯(lián)網(wǎng)應用中。同時Acces

http://tech.ccidnet.com/art/1099/20070420/1066767_1.html 隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后,“ASP”作為一種典型的服務器端網(wǎng)頁設計技術(shù),被廣泛地應用在網(wǎng)上銀行、電子商務、搜索引擎等各種互聯(lián)網(wǎng)應用中。同時Access數(shù)

http://tech.ccidnet.com/art/1099/20070420/1066767_1.html

隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后, “ASP”作為一種典型的服務器端網(wǎng)頁設計技術(shù),被廣泛地應用在網(wǎng)上銀行、電子商務、搜索引擎等各種互聯(lián)網(wǎng)應用中。同時Access數(shù)據(jù)庫作為微軟推出的 以標準JET為引擎的桌面型數(shù)據(jù)庫系統(tǒng),由于具有操作簡單、界面友好等特點,具有較大的用戶群體。因此ASP+Access成為許多中小型網(wǎng)上應用系統(tǒng)的 首選方案。但ASP+Access解決方案在為我們帶來便捷的同時,也帶來了不容忽視的安全問題。

ASP+Access的安全隱患ASP+Access解決方案的主要安全隱患來自Access數(shù)據(jù)庫的安全性,其次在于ASP網(wǎng)頁設計過程中的安全漏洞。

1、Access數(shù)據(jù)庫的存儲隱患

在ASP+Access應用系統(tǒng)中,如果獲得或者猜到Access數(shù)據(jù)庫的存儲路徑 和數(shù)據(jù)庫名,則該數(shù)據(jù)庫就可以被下載到本地。例如:對于網(wǎng)上書店的Access數(shù)據(jù)庫,人們一般命名為book.mdb、store.mdb等,而存儲的 路徑一般為“URL/database”或干脆放在根目錄(“URL/”)下。這樣,只要在瀏覽器地址欄中敲入地址: “URL/database/store.mdb”,就可以輕易地把store.mdb下載到本地的機器中。

2、Access數(shù)據(jù)庫的解密隱患

由于Access數(shù)據(jù)庫的加密機制非常簡單,所以即使數(shù)據(jù)庫設置了密碼,解密也很容 易。該數(shù)據(jù)庫系統(tǒng)通過將用戶輸入的密碼與某一固定密鑰進行異或來形成一個加密串,并將其存儲在*.mdb文件中從地址“&H42”開始的區(qū)域內(nèi)。由于異或 操作的特點是“經(jīng)過兩次異或就恢復原值”,因此,用這一密鑰與*.mdb文件中的加密串進行第二次異或操作,就可以輕松地得到Access數(shù)據(jù)庫的密碼。 基于這種原理,可以很容易地編制出解密程序。

由此可見,無論是否設置了數(shù)據(jù)庫密碼,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。

3、源代碼的安全隱患

由于ASP程序采用的是非編譯性語言,這大大降低了程序源代碼的安全性。任何人只要進入站點,就可以獲得源代碼,從而造成ASP應用程序源代碼的泄露。

4、程序設計中的安全隱患

ASP代碼利用表單(form)實現(xiàn)與用戶交互的功能,而相應的內(nèi)容會反映在瀏覽器 的地址欄中,如果不采用適當?shù)陌踩胧?,只要記下這些內(nèi)容,就可以繞過驗證直接進入某一頁面。例如在瀏覽器中敲入“……page.asp?x=1”,即可 不經(jīng)過表單頁面直接進入滿足“x=1”條件的頁面。因此,在設計驗證或注冊頁面時,必須采取特殊措施來避免此類問題的發(fā)生。

提高數(shù)據(jù)庫的安全性由于Access數(shù)據(jù)庫加密機制過于簡單,因此,如何有效地防止Access數(shù)據(jù)庫被下載,就成了提高ASP+Access解決方案安全性的重中之重。

1、非常規(guī)命名法

防止數(shù)據(jù)庫被找到的簡便方法是為Access數(shù)據(jù)庫文件起一個復雜的非常規(guī)名字,并 把它存放在多層目錄下。例如,對于網(wǎng)上書店的數(shù)據(jù)庫文件,不要簡單地命名為“book.mdb”或“store.mdb”,而是要起個非常規(guī)的名字,例 如:faq19jhsvzbal.mdb,再把它放在如./akkjj16t/kjhgb661/acd/avccx55 之類的深層目錄下。這樣,對于一些通過猜的方式得到Access數(shù)據(jù)庫文件名的非法訪問方法起到了有效的阻止作用。

2、使用ODBC數(shù)據(jù)源

在ASP程序設計中,應盡量使用ODBC數(shù)據(jù)源,不要把數(shù)據(jù)庫名直接寫在程序中,否則,數(shù)據(jù)庫名將隨ASP源代碼的失密而一同失密。例如:

DBPath = Server.MapPath(“./akkjj16t/ 
kjhgb661/acd/avccx55/faq19jhsvzbal.mdb ”)
conn.Open “driver={Microsoft Access Driver (*.mdb)};dbq=” & DBPath

可見,即使數(shù)據(jù)庫名字起得再怪異,隱藏的目錄再深,ASP源代碼失密后,數(shù)據(jù)庫也很容易被下載下來。如果使用ODBC數(shù)據(jù)源,就不會存在這樣的問題了:conn.open
“ODBC-DSN名”

對ASP頁面進行加密為有效地防止ASP源代碼泄露,可以對ASP頁面進行加密。一般有兩種 方法對ASP頁面進行加密。一種是使用組件技術(shù)將編程邏輯封裝入DLL之中;另一種是使用微軟的Script Encoder對ASP頁面進行加密。筆者認為,使用組件技術(shù)存在的主要問題是每段代碼均需組件化,操作比較煩瑣,工作量較大;而使用Script Encoder對ASP頁面進行加密,操作簡單、收效良好。

Script Encoder方法具有許多優(yōu)點:

1.HTML仍具有很好的可編輯性。Script Encoder只加密在HTML頁面中嵌入的ASP代碼,其他部分仍保持不變,這就使得我們?nèi)匀豢梢允褂肍rontPage或Dreamweaver等常 用網(wǎng)頁編輯工具對HTML部分進行修改、完善,只是不能對ASP加密部分進行修改,否則將導致文件失效。

2.操作簡單。只要掌握幾個命令行參數(shù)即可。Script Encoder的運行程序是screnc.exe,其使用方法如下:

screnc [/s] [/f] [/xl] [/l defLanguage ] [/e defExtension] inputfile outputfile

其中的參數(shù)含義如下:

s:屏蔽屏幕輸出;

f:指定輸出文件是否覆蓋同名輸入文件;

xl:是否在.asp文件的頂部添加@Language指令;

l:defLanguag指定缺省的腳本語言;

e:defExtension 指定待加密文件的擴展名。

3.可以批量加密文件。使用Script Encoder可以對當前目錄中的所有的ASP 文件進行加密,并把加密后的文件統(tǒng)一輸出到相應的目錄中。

4. Script Encoder是免費軟件。該加密軟件可以從微軟網(wǎng)站下載。

利用Session對象進行注冊驗證,為防止未經(jīng)注冊的用戶繞過注冊界面直接進入應用系統(tǒng),可以采用Session對象進行注冊驗證。Session對象最大的優(yōu)點是可以把某用戶的信息保留下來,讓后續(xù)的網(wǎng)頁讀取。例如,要設計如圖1所示的注冊頁面。

設計要求用戶注冊成功后系統(tǒng)啟動hrmis.asp?page=1頁面。如果不采用 Session對象進行注冊驗證,則用戶在瀏覽器中敲入“URL/hrmis.asp?page=1”即可繞過注冊界面,直接進入系統(tǒng)。利用 Session對象可以有效阻止這一情況的發(fā)生。相關(guān)的程序代碼如下:

<% ' 讀取用戶輸入的賬號和密碼 
UserID = Request(“UserID”)
Password = Request(“Password”)
' 檢查UserID 及Password 是否正確(實際程序可能會比較復雜)
If UserID <> “hrmis” Or Password <>
“password” Then
Response.Write “賬號錯誤!”
Response.End
End If
'將Session 對象設置為通過驗證狀態(tài)
Session(“Passed”) = True
%>
進入應用程序后,首先進行驗證:
<% '如果未通過驗證,返回Login狀態(tài)
If Not Session(“Passed”) Then
Response.Redirect “l(fā)ogin.htm”
End If
%>

(t003)

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

高手支招ASP+Access的安全隱患及對策

高手支招ASP+Access的安全隱患及對策:http://tech.ccidnet.com/art/1099/20070420/1066767_1.html 隨著Internet的發(fā)展,Web技術(shù)日新月異。繼通用網(wǎng)關(guān)接口(CGI)之后,ASP作為一種典型的服務器端網(wǎng)頁設計技術(shù),被廣泛地應用在網(wǎng)上銀行、電子商務、搜索引擎等各種互聯(lián)網(wǎng)應用中。同時Acces
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top