1.首先,我們需要過濾所有客戶端提交的內(nèi)容,其中包括?id=N一類,另外還有提交的html代碼中的操作數(shù)據(jù)庫的select及asp文件操作語法,大家可以把提交的字符轉(zhuǎn)義,然后再存入數(shù)據(jù)庫。
2.然后需要對訪問Access數(shù)據(jù)庫的頁面進(jìn)行授權(quán),針對顯示數(shù)據(jù)頁面只能使用select語句,過濾其他的update,asp文件則分為許可訪問數(shù)據(jù)庫頁面和限制訪問頁。
3.修改數(shù)庫據(jù)連接文件名conn.asp為類似123ljuvo345l3kj34534v.asp文件。
4.修改數(shù)據(jù)庫名為類似q397d0394pjsdlkfgjwetoiu.asp文件。
5.給Access數(shù)據(jù)庫加上連接密碼(雖然可以破解,對付菜鳥,和防止上傳文件無限制連接數(shù)據(jù)庫)。
6.用Access軟件對數(shù)據(jù)庫進(jìn)行編碼加密。
7.用md5等加密算法加密用戶密碼,密碼提示問題一類的字段。
8.限制搜索引擎對相關(guān)頁面的搜索。
9.防止數(shù)據(jù)庫被下載工具下載,如在數(shù)據(jù)庫里加入等防止向客戶端輸出的語句。
10做好asp上傳文件模板的安全管理,防止上傳asp木馬。
11.拒絕客戶端訪問數(shù)據(jù)庫存連接文件,只準(zhǔn)服務(wù)器asp文件訪問。
12.限制同一客戶端ip訪問數(shù)據(jù)庫次數(shù)。
13.如果有必要對存入數(shù)據(jù)庫的內(nèi)容進(jìn)行加密,返回給客戶端進(jìn)行解密,就算數(shù)據(jù)庫被下載了,也不可能輕易得到加密的原始內(nèi)容。
14.對連接服務(wù)的頭內(nèi)容進(jìn)行限制,如只許可IE訪問。
15.防止通過文件查看方式,得到數(shù)據(jù)庫信息,可用客戶端輸入密碼,對密碼和內(nèi)容,用一定算法存入數(shù)據(jù)庫,輸出時(shí),讓客戶端輸入密碼,對內(nèi)容進(jìn)行解密。
16.你可以把表名和字段名改為aslkejrwoieru,werkuwoeiruwe類似的字符。
17.防止在數(shù)據(jù)庫里加入讓改名為.asp的數(shù)據(jù)執(zhí)行,可轉(zhuǎn)義代碼等讓asp執(zhí)行出錯的內(nèi)容。
18.最后需要注意的是,最好用odbc連接數(shù)據(jù)庫,并要加上連接的密碼。
19.腳本之家提供的方法,就是一般的虛擬主機(jī)都會提供一個data目錄,將.mdb數(shù)據(jù)庫放到這個目錄,這樣無論如何都是不能被下載的。如果是單獨(dú)的服務(wù)器,那么加一個.mdb文件的解析,用一個新建的空dll文件解析。
20、針對sql的注入比較厲害,很多asp程序員寫的時(shí)候沒有注意到安全問題,建議大家使用360的asp防助于asp文件。
https://www.jb51.net/codes/375281.html