本文章轉載自 http://www.xuebuyuan.com/60198.htmlphp
主要威脅:html
暴力攻擊(brute-force attack):這些攻擊經過嘗試全部可能的字符組合,以發現用戶證書。首先嚐試使用字典單詞、經常使用密碼或可預測的字符組合,優化暴力攻擊。web
帳戶劫持(account hijacking):這種威脅包括接管合法用戶的帳戶,有時甚至會拒絕合法用戶訪問本身的帳戶。算法
社會工程(social engineering):這是使用軟技巧(而不是軟件和硬件技術得到敏感信息(例如:密碼)的過程,這些信息可用於影響系統的安全性。數據庫
垃圾郵件(spamming):咱們都很熟悉這種威脅。它是將大量無用電子郵件發送給用戶或Web站點,從而堵塞因特網,有時甚至會引發服務器崩潰。 安全
1.2 創建用戶證書服務器
1.2.1 實施強密碼工具
小結:使用技術性方法和策略來確保強用戶密碼。post
威脅:暴力攻擊、帳戶劫持優化
可靠密碼策略:
攻擊工具:
http://neworder.box.sk/codebox.links.php?key=wwwcrks
http://www.securityfocus.com/tools/1127
字典:
http://www.gattinger.org/wordlists/download.html
http://neworder.box.sk/codebox.links.php?key=passdict
1.2.2 避免使用易於猜想的證書
小結:易於猜想的用戶名和密碼將使用帳戶容易受到攻擊
威脅:暴力攻擊、帳戶猜想、帳號劫持
安全策略:
禁止使用聽起來「官方化」的名字(如:administrator,support,root,postmaster,abuse,webmaster,security等
1.2.3 防止證書獲取
小結:證書獲取將用戶暴露在各類攻擊之下
威脅:暴力攻擊、社會工程、垃圾郵件
安全策略:
1.2.4 限制空閒的帳戶
小結:空閒的帳戶更容易成爲電腦黑客的目標
威脅:帳戶劫持
安全策略:
若帳戶長時間空閒,應該對其進行控制,這須要一個相似於密碼檢索過程的從新激活過程
避免將任何代表某個帳戶是空閒的信息提供給其餘人
在改變任何帳戶信息,或者執行重要事務後,經過電子郵件、信件或其餘方式通知用戶,以防該動做不是同用戶本人完成的
使用反欺騙技術,例如:監控殿堂的帳戶活動
不要自動地爲使用離線帳戶的客戶激活在線帳戶訪問
1.3 管理密碼
1.3.1 存儲密碼
小結:對於應用程序和其餘人來講,存儲在數據庫中的密碼是一種危險
威脅:帳戶劫持、潛在的可能性
安全策略:
絕對不要在普通文本中存儲密碼,也不要使用可逆加密方法
使用強哈希算法,例如MD五、SHA-1,SHA256或SHA512
1.3.2 密碼時效和歷史記錄
小結:舊密碼或重用的密碼將給攻擊者提供更多的機會
威脅:暴力攻擊、帳戶劫持
安全策略:
設置適合於應用程序和用戶的最長密碼時效
保持最近密碼列表,以防止密碼重用
若是可能,實施密碼從新設置之間的最短期間隔
1.3.3 改變密碼
小結:簡化並鼓勵用戶按期改變密碼
威脅:暴力攻擊、帳戶劫持
安全策略:
老是容許用戶本身改變密碼
用戶能夠直觀並簡單地改變密碼
提醒或強迫用戶按期改變密碼
須要知道原有的密碼才能改變新密碼
須要用戶輸入兩次新密碼,以確保準確性
經過電子郵件或其餘通訊方式確認帳戶改變
改變密碼後,終止全部活動的會話,而且要求驗證
1.4 從新設置丟失或被貴忘的密碼
1.4.1 從新設置密碼
小結:按照精心計劃的過程從新設置被丟失或遺忘的密碼
威脅:暴力攻擊、帳戶劫持
安全策略:
將從新設置密碼做爲安全事件對待,記錄客戶端的IP地址,而且採起其餘實際的安全措施
絕對不要找回用戶的密碼;只容許用戶設置新密碼
絕對不要使用密碼提示來提醒用戶實際密碼
經過回答安全問題或提供與帳戶相關的信息,請求用戶代表對該帳戶的瞭解程序。絕對不容許匿名從新設置密碼
發送給用戶一封電子郵件,確認從新設置密碼,提供一個安全連接以完成該過程
若是可行的話,清除任何使用帳戶存儲的敏感信息,例如:信用卡號
在從新設置密碼後終止全部現有的會話
1.4.2 經過電子郵件發送信息
小結:電子郵件是不安全的,不該該使用它傳送敏感信息
威脅:敏感信息泄漏、帳戶劫持、用戶隱私
安全策略:
絕對不要經過電子郵件發送敏感信息,例如:用戶證書或信用卡信息
絕對不要只依賴電子郵件來驗證用戶的身份
不要使用電子郵件來保存包含敏感信息的Web表單提交結果
若是可能的話,數字化簽名或加密電子郵件通訊
1.4.3 分配臨時密碼
小結:除非強迫執行,不然用戶不會改變臨時密碼
威脅:帳戶劫持、密碼猜想
安全策略:
避免容許客服表明設置臨時密碼
若是必須使用臨時密碼,則使用強隨機密碼生成器
若是必須使用臨時密碼,則提供很短的過時日期,或者將密碼設置爲已通過期
1.4.4 使用祕密問題
小結:祕密問題並非密碼的代替品
威脅:敏感信息泄漏、帳戶劫持、用戶隱私
比較好的祕密問題示例:
a)
第一個男友或女友的姓名是什麼?
b)
在童年時代,印象最深的電話號碼是哪個?
c)
在孩童年代,最喜歡去的地方是哪兒?
d)
喜好的演員、音樂家和藝術家分別是誰?
安全策略:
祕密問題自身並不安全,絕對不該該等同於密碼進行使用
容許用戶在須要的時候改變祕密問題和答案
檢測對祕密問題的暴力攻擊
1.5 受權用戶
1.5.1教育用戶
小結:用戶必須知道如何保護他們的帳戶
威脅:帳戶劫持、社會工程、身份竊取
安全策略:
經過各類媒體,教育用戶使用Web應用程序時所涉及的各類安全風險
若是可能的話,給用戶提供一個論壇來討論安全問題
絕對不要發送給用戶的電子郵件中提供連接或表單,要求他們登陸到帳戶
1.5.2 讓用戶置身其中
小結:讓用戶參與安全性防禦將提升用戶對安全性的理解,而且有助於限制各類攻擊
威脅:帳戶劫持、社會工程
安全策略:
容許用戶訪問安全事務和事件的歷史記錄
提供給用戶一種清楚並簡單的方法來報告安全事故,而且要求他們報告任何可疑事件若是可能的話,給用戶提供一個論壇來討論安全問題和事故容許須要使用高級安全安全選項的用戶訪問這些選項給用戶提供一種方法來廢除他們再也不但願使用的帳戶