敏感信息泄露
- 我們常說數據的安全性是極為重要的, 而在程序人員的編程過程中, 由於有些需求或是設計的問題, 往往會造成特別是機密數據的安全性得不到保證, 常見的不安全的數據存儲中的數據進行破解。
- 敏感信息泄露設計兩個方面:
1 、存儲
2 、傳輸過程 http、https
敏感信息泄露表現形式
- 在這個領域最常見的漏洞是應該加密的數據不進行加密。
- 在使用加密的情況下, 常見的問題是不安全的密鑰生成和冒理和使用弱算法是很普遍的, 特別是使用弱的哈希算法來保護密碼。
- 瀏覽器的漏洞也很普遍, 且可以很輕易的檢測到, 但是很難大規模的利用。
- 敏感信息
加密算法如下:
常見敏感信息
運維層面:
- 日志
- 備份文件
- 配置文件
應用層面:
- 用戶信息
- 通信錄
- 郵箱
敏感信息泄露案例
- 案例1 : 一個網站上所有需要身份驗證的網頁都沒有使用SSL 。攻擊者只需監控網絡數據流( 比如一個開放的無線網絡或其社區的有線網絡) , 並竊取一個已驗證的受害者的會話cookie 。
然后, 攻擊者利用這個cookie 執行重放攻井接管用戶的會話從而訪問用戶的隱私數據。
- 案例2 : 密碼數據庫使用unsalted 的哈希算法去存儲每個人的密碼。一個文件上傳漏洞使黑客能夠獲取密碼文件。所有這些unsalted哈希的密碼通過彩虹表暴力破解方式破解。
敏感數據防護檢查
對於敏感數據, 應當確保:
1 · 當這些數據被長期存儲的時候, 無論存儲在哪里, 它們是否都被加密,特別是對這些數據的備份
2 · 無論內部數據還是外部數據, 在互聯網中傳輸明文數據是非常危險的。
3 · 是否還在使用任何舊的或脆弱的加密算法
4 · 加密密鑰的生成是否是脆弱的, 或者缺少恰當的密鑰管理或缺少密鑰回轉?
敏感信息泄露的預防
1 · 順測一些威脅, 加密這些數據的存儲以確保免受這些威脅。
2 · 對於沒必要存放的、重要的敏感數據, 應當盡快清除。
3 · 確保使用了合適的強大的標准去和強大的密匙, 井且密匙管理到位
4 · 確保使用密碼專用算法存儲密碼, 如: bcrypt 、PBKDF2 或scrypt
5 · 禁用自動完成防止敏感數據收集, 禁用包含敏感數據的緩存頁面。