在ASP.NET編程中的十種安全措施 二維碼
61
發(fā)表時間:2015-11-27 00:00
一、 MD5 加密用戶密碼 本系統(tǒng)用戶密碼采用MD5加密,這是一種安全性非常高的加密算法,是普遍使用廣泛應(yīng)用于文件驗證,銀行密碼加密等領(lǐng)域,由于這種加密的不可逆性,在使用10位以上字母加數(shù)字組成的隨機密碼時,幾乎沒有************的可能性。 二、 COOKIES加密a 保存COOKIES時,對保存于COOKIES中的數(shù)據(jù)采用了以MD5加密為基礎(chǔ),加入隨機加密因子的改進型專用加密算法。由于使用的不是標(biāo)準(zhǔn)MD5加密,因此COOKIES中保存的數(shù)據(jù)不可能被解密。因此,黑客試圖用偽造COOKIES攻擊系統(tǒng)變得完全不可能,系統(tǒng)用戶資料變得非常安全。 三、 SQL注入防護 系統(tǒng)在防SQL注入方面,設(shè)置了四道安全防護: **、 系統(tǒng)級SQL防注入檢測,系統(tǒng)會遍歷檢測所有用GET、POST、COOKIES提交到服務(wù)器上的數(shù)據(jù),如發(fā)現(xiàn)有可能用于構(gòu)造可注入SQL的異常代碼,系統(tǒng)將終止程序運行,并記錄日志。這一道安全防護加在連接數(shù)據(jù)庫之前,能在連接數(shù)據(jù)庫前擋處幾乎所有的SQL注入和危害網(wǎng)站安全的數(shù)據(jù)提交。 第二、 程序級安全仿SQL注入系統(tǒng),在應(yīng)用程序中,在構(gòu)建SQL查詢語句前,系統(tǒng)將對由外部獲取數(shù)據(jù),并帶入組裝為SQL的變量進行安全性驗證,過濾可能構(gòu)成注入的字符。 第三、 禁止外部提交表單,系統(tǒng)禁止從本域名之外的其它域名提交表單,防止從外部跳轉(zhuǎn)傳輸攻擊性代碼。 第四、數(shù)據(jù)庫操作使用存儲過程 系統(tǒng)所有的重要數(shù)據(jù)操作,均使用存儲過程完成,避免組裝SQL字符串,令即使通過了層層SQL注入過濾的攻擊性字符仍然無法發(fā)揮作用。 四、 木馬和病毒防護 針對可能的木馬和病毒問題,系統(tǒng)認為,在服務(wù)器設(shè)置安全的情況下,外部帶來的安全問題,主要是用戶可能上傳病毒和木馬,作了如下四層的防護 **、 客戶端文件檢測,在上傳之前,對準(zhǔn)備上傳的文件進行檢測,如果發(fā)現(xiàn)不是服務(wù)器設(shè)置的允許上傳的文件類型,系統(tǒng)拒絕進行上傳。如果客戶端屏蔽了檢測語句,則上傳程序同時被屏蔽,系統(tǒng)無法上傳任何文件。 第二、 服務(wù)器端文件安全性檢測,對上傳到服務(wù)器的文件,程序在將文件寫入磁盤前,檢測文件的類型,如發(fā)現(xiàn)是可能構(gòu)成服務(wù)器安全問題的文件類型,即所有可以在服務(wù)器上執(zhí)行的程序,系統(tǒng)都拒絕寫入磁盤。以此保證不被上傳可能在服務(wù)器上傳播的病毒和木馬程序。 第三、對有權(quán)限的服務(wù)器,系統(tǒng)采用即上傳即壓縮策略,所有上傳的除圖片文件、視頻文件外,其它各種類型的文件一但上傳,立即壓縮為RAR,因此,即使包含木馬也無法運行。不能對網(wǎng)站安全帶來威脅。 第四、底層的文件類型檢測系統(tǒng)對文件類型作了底層級檢測,由于不僅檢測擴展名,而是對文件的實際類型進行檢測,所以無法通過改擴展名方式逃過安全性驗證。 五、 權(quán)限控制系統(tǒng) 系統(tǒng)設(shè)置了嚴格有效的權(quán)限控制系統(tǒng),何人可以發(fā)信息,何人能刪除信息等權(quán)限設(shè)置系統(tǒng)一共有數(shù)十項詳細設(shè)置,并且網(wǎng)站不同欄目可以設(shè)置完全不同的權(quán)限,所有權(quán)限均在多個層次上嚴格控制權(quán)限。 六、IP記錄 IP地址庫 除記錄所有重要操作的IP外,還記錄了IP所在地區(qū),系統(tǒng)中內(nèi)置約了17萬條IP特征記錄。 詳細的IP記錄所有的創(chuàng)建記錄、編輯記錄行為(如發(fā)文章,發(fā)評論,發(fā)站內(nèi)信等),均記錄此操作發(fā)生的IP,IP所在地區(qū),操作時間,以便日后備查。在發(fā)現(xiàn)安全問題時,這些數(shù)據(jù)會非常關(guān)鍵和必要。 七、隱藏的程序入口 有全站生成靜態(tài)頁 系統(tǒng)可以全站生成HTML靜態(tài)文件,使網(wǎng)站的執(zhí)行程序不暴露在WEB服務(wù)中,HTML頁不和服務(wù)器端程序交互,黑客很難對HTML頁進行攻擊,很難找到攻擊目標(biāo)。 八、有限的寫文件 系統(tǒng)所有的寫文件操作只發(fā)生于一個UPFILE目錄,而此目錄下的文件均為只需讀寫即可,可通過WINDOWS安全性設(shè)置,設(shè)置此目錄下的文件只讀寫,不執(zhí)行,而程序所在的其它文件夾只要執(zhí)行和讀權(quán)限,從而使破壞性文件無法破壞所有程序執(zhí)行文件,保證這些文件不被修改。 九、作了MD5校驗的訂單數(shù)據(jù) 在商城訂單處理中,對提交的訂單信息作了MD5校驗,從而保證數(shù)據(jù)不被非法修改。 十、編譯執(zhí)行的代碼 由于基于.net開發(fā),代碼編譯執(zhí)行,不但更快,也更安全 我用這些辦法,作的網(wǎng)站程序叫網(wǎng)站快車,大家去看看,是不是安全。
|