我们的要求是“在休息时”和“数据库”加密我们服务器中的数据--简而言之,就是整个基础设施。
威胁模型--保护可能的数据--敌人(或未经授权的实体)的入侵、人身盗窃(或安全处置)和安全复制(安全备份)。
问题--我们是一个“SaaS”,处理大量用户来回请求数据(从我们的服务器)--因此,我们计划加密的数据应该保持高度可访问性(用户文件、消息等)并同时加密--而不需要用户端的公钥/私钥模式,这就建立了以下概念。
精确关注:在覆盖上述威胁模型的同时,哪种加密方案能够有效地保持(可靠)可用,以及有效处理这些操作的首选系统架构是什么?
关键是要尽可能地保护存储在我们一方的数据,而不影响整体性能。
我将非常感谢你在这方面的启示。
发布于 2016-01-05 21:52:34
我是一家SaaS公司的安全专家,去年早些时候我们正在研究同样的问题。
你会遇到的主要问题是成本。如果您希望您的数据库随时可用,但加密的“休息时”,您基本上需要一个服务器的猛兽,除了处理加密/解密过程。由于解密您需要读取的数据将给您带来性能问题,即使是一个巨大的框,您仍然将得到至少1或2毫秒的延迟添加到您的查询。
我们研究了SafeNet的ProtectDB,但由于我们目前不打算遵循PCI或HIPPA,我们认为~$50k+的投资成本不值得获得有限的收益。
编辑: ProtectDB基本上是一个单独的服务器,存放所有加密密钥,并对数据库进行扫描以查看数据在哪里。在进行数据库查询时,ProtectDB框将接收通信量,并与数据库进行加密连接,解密列/表并返回数据。这样就使得您的devs/用户不再直接连接到数据库,而是连接到ProtectDB框。
实际上,你只得到了两个好处:防止某人进入你的数据中心/ DR站点和窃取物理盒,这就是安全人员和物理锁所要防止的。或者,如果您遇到了严重的外部网络漏洞,而有人设法得到您的数据库。在这两种情况下,您实际上只是增加了时间,它将需要多长时间来打破无论如何。
老实说,我建议你把这些钱投资到WAF上(如果你还没有),就像In荚膜一样。
https://security.stackexchange.com/questions/109820
复制相似问题