由于ASP的方便易用,越來越多的網站后臺程序都使用ASP腳本語言。但是, 由于ASP本身存在一些安全漏洞,稍不小心就會給黑客提供可乘之機。事實上,安全不僅是網管的事,編程人員也必須在某些安全細節(jié)上注意,養(yǎng)成良好的安全習慣,否則會給自己的網站帶來巨大的安全隱患。目前,大多數(shù)網站上的ASP程序有這樣那樣的安全漏洞,但如果編寫程序的時候注意一點的話,還是可以避免的。
1、用戶名與口令被破解
攻擊原理:用戶名與口令,往往是黑客們最感興趣的東西,如果被通過某種方式看到源代碼,后果是嚴重的。
防范技巧:涉及用戶名與口令的程序最好封裝在服務器端,盡量少在ASP文件里出現(xiàn),涉及與數(shù)據庫連接的用戶名與口令應給予最小的權限。出現(xiàn)次數(shù)多的用戶名與口令可以寫在一個位置比較隱蔽的包含文件中。如果涉及與數(shù)據庫連接,在理想狀態(tài)下只給它以執(zhí)行存儲過程的權限,千萬不要直接給予該用戶修改、插入、刪除記錄的權限。
2、驗證被繞過
攻擊原理:現(xiàn)在需要經過驗證的ASP程序大多是在頁面頭部加一個判斷語句,但這還不夠,有可能被黑客繞過驗證直接進入。
防范技巧:需要經過驗證的ASP頁面,可跟蹤上一個頁面的文件名,只有從上一頁面轉進來的會話才能讀取這個頁面。
3、inc文件泄露問題
攻擊原理:當存在ASP的主頁正在制作且沒有進行最后調試完成以前,可以被某些搜索引擎機動追加為搜索對象。如果這時候有人利用搜索引擎對這些網頁進行查找,會得到有關文件的定位,并能在瀏覽器中查看到數(shù)據庫地點和結構的細節(jié),并以此揭示完整的源代碼。
防范技巧:程序員應該在網頁發(fā)布前對它進行徹底的調試;安全專家則需要加固ASP文件以便外部的用戶不能看到它們。首先對.inc文件內容進行加密,其次也可以使用.asp文件代替.inc文件使用戶無法從瀏覽器直接觀看文件的源代碼。inc文件的文件名不要使用系統(tǒng)默認的或者有特殊含義容易被用戶猜測到的名稱,盡量使用無規(guī)則的英文字母。