2012-02-10 103 views
0

我想找出解決方案,我遇到了一個項目,我正在爲一個新的合資企業工作過的'雞和蛋'問題。如何爲守護進程或服務提供加密密鑰?

該系統正在處理信用卡數據,因此需要將卡號等加密存儲在數據庫中。爲了符合PCI要求,我們使用每個「商家」的唯一密鑰對對數字進行加密,因此,如果一個商家遭到入侵,就不可能訪問其他商戶持卡人數據。

這對於人類與系統的交互是很好的,因爲人類可以輸入密碼來解鎖私鑰,然後解密數據,但是當涉及到需要訪問數據的自動化服務時(即在稍後的日期處理事務),如何最好地向服務/守護進程提供憑證存在問題。

在系統上一點背景:

  • 卡號碼與非對稱密鑰對加密的
  • 私鑰是密碼保護的
  • 這個密碼短語,然後用一個「主」密鑰對加密
  • 解鎖主密鑰的密碼然後被操作員授予權限(呃,實際上他們是用他們自己的密鑰對加密的副本,他們只知道密碼)。
  • 守護進程將作爲其自己的用戶和組在Linux系統上運行。

對於守護進程能夠解密我正在考慮中的數據如下:

  • 設置類似於如何.pgpass工作
  • 在文件中存儲的主目錄守護口令文件用戶
  • 設置權限爲0600的文件
  • 設置一個文件完整性監測系統,諸如絆通知的任何變化的安全組(或類似)的文件或權限秒。
  • 爲守護進程用戶禁用登錄,因爲它僅用於進程。

鑑於上述,我想知道這是否足夠。顯然,系統管理員面臨的弱點是 - 這些(即2)在安全系統上值得信任 - 因爲他們可以提升他們的權限(即以root身份),然後更改文件所有權或權限以便讀取密碼 - 但是再一次,這可能是通過監視文件校驗和變化,FIM校驗和等來緩解的。

那麼,我是否正在處理這種錯誤的方式,或者是否存在其他有關如何處理此問題的建議?

回答

2

不知道有多少幫助,因爲您的目標是符合PCI-DSS,您需要說服的人是您的QSA。

大多數QSA公司都樂於以諮詢的方式工作,並且幫助您找到合適的解決方案,而不是單純以評估能力工作,因此儘早讓他們參與並與他們合作,以獲得他們樂意簽署的解決方案兼容。

可能值得讓他們記錄爲什麼它也足夠,以便如果您將來更改QSA,可以在主題再次出現的情況下采取推理。

基於上述解決方案,他們可能會提及的一件事是密鑰管理的分解知識。這聽起來像是一個單一的管理員擁有訪問PCI(3.6.6)需要對手動明文密鑰管理程序進行分離知識和雙重控制的密鑰所需的全部知識。

+0

我們與我們的QSA(這可能是審覈以來關係中最有價值的部分)進行了討論,他建議我們使用我們的一個運營商帳戶(其中只有用戶知道密碼)來解鎖服務帳戶細節。這就像一個嵌套的俄羅斯娃娃設置,但它似乎工作,並意味着我們可以根據需要輕鬆旋轉鍵。 – 2012-04-11 01:12:05

相關問題