ASP是基于 Server端的腳本運行環境,它簡單易用,不需要編譯和連接,腳本可以在 Server端直接運行,并且它支持多用戶、多線程,在 Web開發中得到了廣泛的應用。
但是,因為 ASP腳本是純文本格式,所以惡意者通過源代碼可以很容易地看到原本不該看到的頁面內容。例如, ASP源代碼中通常有系統數據庫的連接用戶名和口令,惡意者利用此用戶名和口令可以輕松地查看數據庫中的所有信息(包括系統機密信息),還可能篡改庫中信息,造成系統嚴重損壞。因此,保護 ASP腳本的源代碼顯得非常重要。
保護 ASP腳本源代碼通常可采用 3種方式:第一種方式是對訪問用戶進行限制,禁止非法用戶訪問;第二種方式是對 Server端環境進行處理,提高系統的健壯性;第三種方式是對源代碼進行加工,隱藏或部分隱藏腳本源代碼。這 3種方式互為補充,有效設置可以提高腳本源代碼的安全性。下面簡單介紹這 3種方式的實現方法。
限制訪問用戶
所謂限制訪問用戶是指只有授權的用戶才能訪問系統的 ASP腳本。這主要有兩種實現方法:第一種方法是通過 SSL( Secure Socket Layer)方法, Server端向 Client端發放證書(可以利用免費證書管理軟件), Client端將證書添加到瀏覽器中,只有擁有合法證書的用戶才能與 Server端建立鏈接,從而訪問系統。這種方法不需要編程,安全性較高,但證書的下發比較麻煩。另一種方法是通過常用的驗證用戶名、口令方法,用戶登錄時必須首先輸入用戶名和口令,只有合法的用戶名和口令才能訪問系統。這種方法安全性稍低,編程比較簡單。而且在實現時需要注意:不能簡單地在登錄窗口進行判別,因為如果用戶知道了登錄窗口下一步鏈接的文件名,可以直接在地址欄輸入該文件名而繞過登錄窗口。編程時可以在除登錄窗口文件外的每個文件的開頭檢查 Request(“ HTTP_REFERENCE“)項的 IP地址,看其是否是由系統內部的文件跳轉而來,如不是則跳轉到登錄窗口。代碼如下:
<%
dim iValid
iValid=instr(Request(“ HTTP_REFERENCE“),
“ http://131.252.88.71“)
if iValid= 0 then
Response.Redirect“ login.asp“
end if
......
% >
對 Server端進行處理
對 Server端進行處理主要有 3種方法:
●對系統權限進行設置
對 Server端設置詳細的安全權限,除了系統管理員,盡量降低用戶的存取權限;刪除不必要的共享,包括打印機的共享;關閉匿名服務等一些不必要的功能;對 ASP源代碼的目錄設置詳盡的訪問權限,關閉“讀”權限。
●經常下載安全補丁
一些惡意者經常利用系統的安全缺陷得到 ASP腳本的源代碼。例如,利用 ::$ DATA可以得到 ASP腳本的源代碼,或利用 Windows NT的一些安全缺陷可以登錄到系統,查看系統的目錄和文件,所以需要經常下載并安裝微軟公司提供的安全補丁。
●盡量不要在系統中下載、安裝不必要的軟件
一些下載軟件帶有“后門”,會將腳本源代碼泄露。例如,微軟有一個專門查看 ASP腳本源代碼的程序 code.asp,如果把它放到 Web服務器上,別人可以很容易地查看 ASP腳本源代碼(網上有不少類似免費軟件)。
處理 ASP腳本源代碼
對 ASP腳本源代碼進行處理主要有兩種方法:
●對 ASP腳本源代碼進行加密
利用微軟的 Windows Script Encoder,可以對 ASP腳本源代碼進行加密。不過客戶端加密后,只有 IE 5才能執行;服務器端腳本加密后,只有服務器上安裝有 Script Engine 5才能執行。
Windows Script Encoder是一個簡單的命令行加密工具,可以利用它加密 ASP腳本的源代碼。加密后,無論 Server端和 Client端都無法讀懂加密后的信息,如果改動加密后的信息,腳本就無法正常運行,從而有效地保護了 ASP腳本源代碼。
例如 ASP文件 Test.asp中有如下一條語句:
<%
Response.Write“ 123456”
% >
在 DOS方式下運行加密命令 : screnc c:\backiis\test.asp c:\backiis\testenc.asp
在 testenc.asp中保存加密后代碼,代碼如下:
<%# @~ ^IQAAAA==7@# @& 7“+ kwW/? ? MkO+ ,Jq+ 2c*+ E@# @& YQcAAA==^#~ @% >
將 test.asp文件保存到另外一臺機器上, Client端可以正常訪問 testenc.asp(訪問是透明的,就像訪問 test.asp一樣 ),但無論 Server端和 Client端都無法查看 test.asp腳本源代碼。
推薦設計
優秀海報設計精選集(8)海報設計2022-09-23
充滿自然光線!32平米精致裝修設計2022-08-14
親愛的圖書館 | VERSE雜誌版版式設計2022-07-11
生活,就該這麼愛!2022天海報設計2022-06-02
最新文章
最后加載廣告的JS代碼其他教程2012-05-23
網頁設計的標準尺寸其他教程2008-03-03
如何讓廣告代碼不影響網其他教程2007-12-11
網頁設計基礎:文字大小的其他教程2007-10-11