1、對數據庫進行安全配置,例如你的程序連接數據庫所使用的帳戶/口令/權限,如果是浏覽新聞的,用只讀權限即可;可以對不同的模塊使用不同的帳戶/權限;另外,數據庫的哪些存儲過程可以調用,也要進行嚴格地配置,用不到的全部禁用(特別是cmd這種),防止注入後利用數據庫的存儲過程進行系統調用;
2、在獲取客戶端提交的參數時,進行嚴格的過濾,包括參數長短、參數類型等等;
3、對管理員後台進行嚴格的保護,有條件的話,應該設置為只允許特定的IP訪問(例如只允許管理員網段訪問)——這個要根據實際情況來看的;
4、對操作系統進行安全配置,防止注入後調用系統的功能,例如把
cmd.exe/tftp.exe/ftp.exe/net.exe
這些文件全部轉移到其他目錄,並對目錄進行嚴格的權限指派;
5、設置網絡訪問控制;
6、有條件的話,配置針對HTTP的內容過濾,過濾病毒、惡意腳本等;
7、如果有必要,可以考慮選擇HTTPS,這樣可以防止很多的注入工具掃描,我以前自己開發注入檢測工具的時候,考慮過做支持HTTPS方式的,但目前還沒付諸實施。
相信你也看出來了,總的來說程序方面主要考慮權限、參數過濾等問題;權限主要包括IIS浏覽權限、數據庫調用權限。除此以外,還要考慮數據庫、操作系統的安全配置。另外,不知道你們在開發過程中會不會用到其他人開發的組件,例如圖片上傳之類的,這類組件你們研究過其安全性麼?或者開發的過程中,絕大多數人會使用網上、書上提供的現成代碼,例如用戶登錄驗證等等,這些公開代碼,也要研究其安全性問題。