開源時代,追求開發效率的同時如何保障敏感憑據安全?

雲鼎實驗室發表於2020-05-19

       Github對程式設計師的影響力是不言而喻的。世界上眾多程式設計師都在透過github公開原始碼,同時支援著自己日常的開發。尤其是在程式碼從開發到生產的快速跟蹤流程上,GitHub可算是走在其他資料倉儲的前頭。但是,高效便捷的同時也會帶來一些負面影響,如敏感憑據洩露。

2019年北卡羅納州立大學針對Github上的金鑰洩露進行研究後發現,Github上超十萬個程式碼庫洩露了API或其他加密金鑰,其中有19%在洩露後的16天內被刪除,81%仍然對外可見。

開源時代,追求開發效率的同時如何保障敏感憑據安全?

Github上洩露的金鑰型別Top6

        這使得企業不得不面臨因敏感憑據洩露而導致的業務重要資訊洩露及許可權失控的安全風險。

敏感資料洩露既是安全意識問題,也是技術問題。

        大部分的敏感憑據洩露都是無意識的,主要是使用者對敏感憑據的重要性認知不夠,上傳非敏感程式碼時不小心夾帶。

以API金鑰洩露為例:

開源時代,追求開發效率的同時如何保障敏感憑據安全?

在技術層面上,先於駭客發現敏感憑據洩露風險,是解決金鑰洩露問題的第一步;而從源頭上對敏感憑據進行保護,是進一步保障金鑰不被惡意利用的關鍵。

為了防範敏感憑據洩露帶來的安全風險,騰訊安全推出集“檢測、防護、告警”於一體的敏感憑據防護解決方案。


騰訊安全敏感憑據防護方案


方案詳情請檢視影片



拒絕“散養”憑證資訊,拒絕明文硬編碼

       由不安全的配置、原始碼洩露及硬編碼等內部威脅引起的資料洩露事件比例逐漸上升。對開發者個人而言,需要加強開發工作中敏感憑據的加密意識,拒絕明文硬編碼;對於企業而言,需要加強對各種不同型別的憑據的統一管理問題。

       後臺服務需要配置資料庫連線、敏感 IP埠、Tokens、SSH金鑰等敏感憑據,這些配置資訊大量的以明文或者硬編碼的方式存在,一旦洩露將造成嚴重的後果。因此對這類配置檔案的敏感資訊需要應用密碼技術進行加密保護,推薦採用憑據管理系統SSM進行託管式管理和硬體級加密儲存。

接入前後的對比示例如下圖所示:

開源時代,追求開發效率的同時如何保障敏感憑據安全?

       在訪問API介面服務時,需要API鑑權的金鑰或者Token。API金鑰如果洩露,無異於整個賬戶被暴露,一旦被惡意利用,後果不堪設想。對於這類特殊金鑰的保護場景,推薦使用白盒加密的方式來保護金鑰的安全。KMS白盒金鑰管理將演算法與金鑰進行混淆融合,以查詢表的形式有效保護金鑰資訊,在不暴露任何金鑰的情況下實現加密與解密,並透過裝置繫結的方式進一步確保金鑰的安全。

開源時代,追求開發效率的同時如何保障敏感憑據安全?

騰訊雲已上線憑據管理系統SSM和白盒金鑰管理,使用指引可以參考:

憑據管理SSM詳情:https://cloud.tencent.com/product/ssm

白盒金鑰管理詳情:https://cloud.tencent.com/document/product/573/43178


相關文章