1. 程式人生 > >系統安全性之十大措施

系統安全性之十大措施

一、MD5 加密使用者密碼

      使用者密碼採用MD5加密,這是一種安全性非常高的加密演算法,是普遍使用廣泛應用於檔案驗證,銀行密碼加密等領域,由於這種加密的不可逆性,在使用10位以上字母加數字組成的隨機密碼時,幾乎沒有破解的可能性。

二、COOKIES加密

      系統儲存COOKIES時,對保存於COOKIES中的資料採用了以MD5加密為基礎,加入隨機加密因子的改進型專用加密演算法。若使用的不是標準MD5加密,則系統COOKIES中儲存的資料不可能被解密。因此,黑客試圖用偽造COOKIES攻擊系統變得完全不可能,系統使用者資料變得非常安全。

三、SQL注入防護

      系統在防SQL注入方面,設定四道安全防護:
      第一、 系統級SQL防注入檢測。系統會遍歷檢測所有用GET、POST、COOKIES提交到伺服器上的資料,如發現有可能用於構造可注入SQL的異常程式碼,系統將終止程式執行,並記錄日誌。這一道安全防護加在連線資料庫之前,能在連線資料庫前擋處幾乎所有的SQL注入和危害網站安全的資料提交。  

      第二、 程式級安全仿SQL注入系統。在應用程式中,在構建SQL查詢語句前,系統將對由外部獲取資料,並帶入組裝為SQL的變數進行安全性合法性驗證,過濾可能構成注入的字元。
      第三、 禁止外部提交表單。系統禁止從本域名之外的其它域名提交表單,防止從外部跳轉傳輸攻擊性程式碼。
      第四、資料庫操作使用儲存過程。系統所有的重要資料操作,均使用儲存過程作引數查詢,避免組裝SQL字串,令即使通過了層層SQL注入過濾的攻擊性字元仍然無法發揮作用。

四、木馬和病毒防護

      針對可能的木馬和病毒問題,系統認為,在伺服器設定安全的情況下,外部帶來的安全問題,主要是使用者可能上傳病毒和木馬,系統作了如下四層的防護
   第一、 客戶端檔案檢測。在上傳之前,對準備上傳的檔案進行檢測,如果發現不是伺服器設定的允許上傳的檔案型別,系統拒絕進行上傳。如果客戶端遮蔽了檢測語句,則上傳程式同時被遮蔽,系統無法上傳任何檔案。
   第二、 伺服器端檔案安全性檢測。對上傳到伺服器的檔案,程式在將檔案寫入磁碟前,檢測檔案的型別,如發現是可能構成伺服器安全問題的檔案型別,即所有可以在伺服器上執行的程式,系統都拒絕寫入磁碟。以此保證不被上傳可能在伺服器上傳播的病毒和木馬程式。
   第三、對有許可權的伺服器。系統採用即上傳即壓縮策略,所有上傳的除圖片檔案、視訊檔案外,其它各種型別的檔案一但上傳,立即壓縮為RAR,因此,即使包含木馬也無法執行。不能對網站安全帶來威脅。
   第四、底層的檔案型別檢測。系統對檔案型別作了底層級檢測,由於不僅檢測副檔名,而是對檔案的實際型別進行檢測,所以無法通過改副檔名方式逃過安全性驗證。

五、許可權控制系統

      系統設定了嚴格有效的許可權控制系統,何人可以發信息,何人能刪除資訊等許可權設定系統一共有數十項詳細設定,並且網站不同欄目可以設定完全不同的許可權,所有許可權均在多個層次上嚴格控制權限。

六、IP記錄

      IP地址庫。除記錄所有重要操作的IP外,還記錄了IP所在地區,系統中內建約了17萬條IP特徵記錄。
      詳細的IP記錄。所有的建立記錄、編輯記錄行為(如發文章,發評論,發站內信等),均記錄此操作發生的IP,IP所在地區,操作時間,以便日後備查。在發現安全問題時,這些資料會非常關鍵和必要。

七、隱藏的程式入口

      系統可以全站生成HTML靜態檔案,使網站的執行程式不暴露在WEB服務中,HTML頁不和伺服器端程式互動,黑客很難對HTML頁進行攻擊,很難找到攻擊目標。

八、有限的寫檔案 

      系統所有的寫檔案操作只發生於一個UPFILE目錄,而此目錄下的檔案均為只需讀寫即可,可通過WINDOWS安全性設定, 設定此目錄下的檔案只讀寫,不執行,而程式所在的其它資料夾只要執行和讀許可權,從而使破壞性檔案無法破壞所有程式執行檔案,保證這些檔案不被修改。

九、作了MD5校驗的訂單資料

      在使用者輸入的資訊處理中,對提交的資訊作MD5校驗,從而保證資料不被非法修改。

十、編譯執行的程式碼

      基於.net 開發,程式碼編譯執行,更快,更安全。