數據庫加密變得越來越普遍,但由于缺乏加密也有一些重要的數據泄漏。姑且認為你開發(fā)過程中每一步都很謹慎,開發(fā)的web應用程序也有足夠的能力對抗跨站腳本攻擊,SQL注入和其他常見web漏洞,并熟悉所有安全項目的條款(OWASP),也知道所有的數據傳輸,在數據數據庫的敏感字段加密。但是下一步你要把加密密鑰放在哪里呢?是否有硬件安全模塊(HSM)?大多數公司不使用HSM,他們應該出于安全考慮使用HSM。存儲明文密碼相當于把鑰匙放在門墊上而沒有任何安全感。
Web應用程序框架
讓我們從一個常見的Web應用程序框架開始。在典型的數據庫加密Web應用程序中,應用程序將密鑰直接存儲在服務器的某個角落。這將被放置在逆向工程攻擊中,并將導致一些操作安全問題。這是不使用HSM的結果,所以您應該使用HSM。
如何顯著提高加密數據庫的安全性?
科普:什么是HSM?
HSM本質上是一個聯合處理器。在計算機體系結構方面,HSM可能包含了von neumann機器的所有組件,包括存儲、內存和處理能力。電腦使用二進制算法和內存,指令和數據可以存儲在內存中,并且可以做出同樣的處理,通過這種方式、不僅可以大大簡化計算機的結構,并實現自動操作控制和提高操作速度提供了一個良好的條件。
HSM為主機本身提供了專用的離線加密服務。
如何顯著提高加密數據庫的安全性?
HSM致力于處理保護加密和加密過程,服務器內存無法訪問重要數據,用戶無法看到清晰的密鑰,因此您可以確保應用程序和加密數據存在一個可信路徑。在這一點上、你可能認為會有物理入侵,但是沒有必要擔心,HSM有一個防篡改的密封圈,可以阻止攻擊者的電子竊聽和無線電監(jiān)控。
HSM可以用來預防什么?
HSM可以防止攻擊者從敏感數據庫中竊取信息。如果攻擊者獲得應用服務器的訪問特權(存儲明文密鑰),則可以檢索密碼。無論密碼多么復雜,即使它被編譯、打包或更改,它也可以給逆向工程。從安全工程的角度來看,這不是最好的方法。
從操作安全的角度來看,讓別人看到敏感的、加密的數據是不明智的。其中包括終端用戶、開發(fā)團隊、系統(tǒng)管理員和數據庫管理員。從系統(tǒng)的角度來看,您不希望看到從產品服務器傳播到工作服務器或開發(fā)服務器的敏感數據。如果您的數據庫包含敏感數據,最好不要讓任何人訪問它。
HSM是如何實施的?
由于HSM是由應用程序開發(fā)團隊部署的,所以它屬于程序安全領域,而不是基礎設施安全。應用程序必須使用HSM供應商提供的應用程序編程接口(API)來創(chuàng)建專用于加密的操作。這些api包括常見的加密功能,如對稱算法、非對稱算法和解密操作、散列消息認證碼、密碼消息認證碼、RSA、數字簽名算法、diffie-hellman密鑰交換、隨機數生成、初始生成和格式。HSM編程接口可以由特定的供應商提供,例如IBM發(fā)布的通用加密體系結構,或者按照通用標準,比如pkcs11。顯然、有人需要做一些謹慎的購物,以確保有合適的功能。
遵從FIPS-140-2標準
然而、HSM不受PCI合規(guī)的托管,它們?yōu)榇蠖鄶抵Ц斗桨甘褂。當前HSM的管理標準為來自美國國家標準和技術委員會,稱為美國聯邦信息處理標準(縮寫:FIPS-140-2)。事實上、若你需要儲存信用卡數據,你非常應該使用HSM。2009年PCI安全需求查看請點這里,2012年更新內容可以在這里查看。
然而,HSM并不是由PCI管理的,它被用于大多數支付方案。目前HSM的管理標準來自美國的國家標準和技術委員會,即美國聯邦信息處理標準(縮寫:FIPS-140-2)。事實上,如果您需要存儲信用卡數據,您非常應該使用HSM。
當HSM遵循fips-140-2標準,廣泛應用于支付行業(yè)時,所有行業(yè)數據庫的安全系數都得到了極大的提高。記住、你的醫(yī)療記錄對網絡犯罪而言比你的信用卡更有價值,所以要保持警惕。
如何開始使用加密?
幸運的是,HSM認證產品有一個“票據交換所”,同時也有很多關于硬件安全模型的討論,包括基于網絡模塊存儲系統(tǒng)設計,以及其他定制設計。然而,本文的目的是對HSM進行高層次的介紹,同時鼓勵用戶去SANS研究所和Stack Exchange(一系列問答網站,每個網站都包含了不同的問題)來做一些深入的閱讀。
Copyright© 2004-2020 河南海騰電子技術有限公司 版權所有 經營性ICP/ISP證 備案號:B1-20180452 豫公網安備 41019702002018號 電子營業(yè)執(zhí)照