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