Password Management: Hardcoded Password
生活随笔
收集整理的這篇文章主要介紹了
Password Management: Hardcoded Password
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、摘要
硬編碼密碼可能會以一種不易補救的方式危害系統(tǒng)安全。2、解釋
硬編碼密碼從來不是個好主意。不僅硬編碼的密碼允許所有項目的開發(fā)人員查看密碼, 它也使得解決問題極其困難。代碼投入生產(chǎn)后,如果不修補軟件,就無法更改密碼。 如果受密碼保護的帳戶受到損害,則系統(tǒng)所有者必須在安全性和可用性之間進行選擇。3、例
1. DriverManager.getConnection(url, "scott", "tiger");此代碼將成功運行,但任何可以訪問它的人都可以訪問密碼。程序發(fā)布后,很 可能無法用“tiger”密碼更改數(shù)據(jù)庫用戶“scott”,除非程序已修補。有權(quán)訪問此 信息的員工可以使用此信息進入系統(tǒng)。更糟糕的是,如果攻擊者能夠訪問應用 程序的字節(jié)碼,他們可以使用javap-c命令訪問反匯編代碼,反匯編代碼將包含 使用的密碼值。在移動環(huán)境中,由于設備丟失的可能性如此之高,密碼管理尤其重要。 2.webview.setWebViewClient(new WebViewClient() {public void onReceivedHttpAuthRequest(WebView view,HttpAuthHandler handler, String host, String realm) {handler.proceed("guest", "allow");} });4、建議及提醒
密碼不應硬編碼,通常應在外部源中進行模糊處理和管理。將密碼以純文本存儲在系統(tǒng)中的任何 位置都允許具有足夠權(quán)限 的任何人讀取并可能誤用密碼。至少,在存儲密碼之前,應該對其 進行哈希運算。一些第三方產(chǎn)品聲稱能夠以更安全的方式管理密碼。例如,websphereapplicationserver4.x使用 一個簡單的XOR加密算法來混淆值,但對這些功能持懷疑態(tài)度。WebSphere和其他應用服務器提 供了過時且相對較弱的加密機制,這些機制不足以滿足安全敏感環(huán)境的需要。如今,安全通用解 決方案的最佳選擇是自己創(chuàng)建一個專有機制。對于Android以及其他使用SQLite數(shù)據(jù)庫的平臺,SQLCipher是一個很好的選擇。SQLCipher是 SQLite數(shù)據(jù)庫的擴展,它為數(shù)據(jù)庫文件提供透明的256位AES加密。因此,憑證可以存儲在加密 的數(shù)據(jù)庫中。5、解決方案
將用戶名密碼等敏感信息保存在配置文件中,使用時再去讀取,如果再高級一點,可以對敏感信息 進行加密,使用時再解密操作(如果可以的話定義變量名盡量避開password,pwd。。。等有關(guān)密碼名稱)。總結(jié)
以上是生活随笔為你收集整理的Password Management: Hardcoded Password的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: go php password_hash
- 下一篇: fooview辅助功能 shell_FV