有哪些选项可用于在由气隙分隔的 unix 机器之间传输数据?
- USB 闪存驱动器
- 光学媒体,例如 CD 和 DVD
- 打印纸和扫描+OCR
- 二维码软件、显示器或打印机以及相机
- 笔、纸和打字!
- 智能卡 / ISO 7816
- 非接触式 / NFC / ISO 14443
这些都有优点和缺点,我很难确定最聪明的方法来将证书、私钥和公钥以及其他相对较短的数据等内容移入和移出离线机器。
有哪些选项可用于在由气隙分隔的 unix 机器之间传输数据?
这些都有优点和缺点,我很难确定最聪明的方法来将证书、私钥和公钥以及其他相对较短的数据等内容移入和移出离线机器。
一般来说,你有几个目标:
如果您正在移动对称密钥或复制私钥,您可能还需要在两个气隙之间设置 pub/private 密钥,如果您通过一些手动机制(例如复制到闪存驱动器)来执行此操作,即使闪存驱动它自己加密,因此只有在存在私钥的情况下才能解密所基于的秘密。如果您只是移动公钥,则可能不需要相同级别的安全性。
我们来看看二维码场景中的一些风险。你需要用一些程序生成二维码,然后打印出来。您需要确保打印机是安全的(即使打印机在气隙中,以后有人可以检查打印机的内存,强制重新打印最后一页等)。您还存在该值将存储在不安全的临时文件或磁盘上某处的打印缓存中的风险,以后可以检索这些文件。现在当二维码的人在站点之间移动它时,他们可以拍照吗?他们是否确保打印出来的照片是安全的、可能被篡改的照片,所以我们可以确保他们不会在此过程中将其切换为恶意打印输出,并且气隙之间没有摄像机窃取照片?在另一个气隙处,如何读回 QR 码?相机/扫描仪是否安全,读取二维码的程序是否会在临时文件中留下痕迹?您是否需要将 QR 码值存储在临时文件中以读取到加密存储或 HSM?
我会说 QR 码可能是一个糟糕的选择。理想情况下,您需要提供加密安全、防篡改(对人或在空中截取或复制的设备)以及两个站点之间的篡改证据的东西。
某种类型的 HSM 将是一个不错的选择。除此之外,使用适当的公钥/私钥加密的一次性写入 CD/DVD 可能是一个不错的选择,因为您可以在双方都使用受信任的硬件,然后廉价而轻松地销毁光盘。但是,您将无法检测到未经授权的复制。USB 设备更容易感染恶意软件,并且更难检测或阻止(查看今年 blackhat 的演示文稿)。使用任何方法,您都可能希望拆分密钥并需要两个信使,这样就需要串通来泄露密文。一个不错的功能是,如果您的设备只写回该值一次,然后不再写(写后自毁),因此如果您无法阻止泄漏,您至少可以检测到它。
(正如我在评论中所指出的,我仍在寻找是否能找到这些设备;我发现回去的那些设备是针对特定的专有军事系统的)。
您可能对与此相关的一些NIST SP-800指南感兴趣:
SP 800-152 草案的第 6.6.1 节密钥传输地址密钥传输,SP 800-130 的第 6.6.1 节也非常相似。
SP 800-57 第 2 部分有一些展示密钥管理的场景,并且非常技术性。FIPS PUB 140-2中解决了更多技术细节
如何移动数据没有“黄金法则”。您列出的选项让您在安全性和便利性之间进行权衡。您应该考虑威胁模型并分析您的安全需求。
当机器上有我想保护的数据时,我会使用方便的方式(如 CD 或一次性 USB 棒)将数据传输到机器上,因为我知道恶意软件可能已经传输到机器上,并且是非常安全的方法(如 QR 码软件或论文和打字)以取回它们。当然,如果数据真的很重要,我会确保有一个良好的气隙来防御类似 badbios(超声波)的通信方法,或者使用非常安全的方法来防止恶意软件进入隔离的机器.
我总是建议在移动敏感数据时使用 FIPS 3 级 (140-2) 认证设备(非政府工作人员不能购买 4 级设备)。3 级设备将阻止任何人 [除了政府] 访问您的加密数据。设备需要输入密钥来解锁驱动器以访问加密数据,并且在 x 次尝试错误(用户设置,但不能超过 10 次)时,设备会自行擦除。3 级非常防篡改。
根据希捷的说法(很多其他消息来源都说了类似的话,但希捷包括了所有方面):
“Level 3 增加了对拆卸或修改的物理防篡改功能,使其极难被黑客入侵。如果检测到篡改,设备必须能够擦除关键安全参数。Level 3 还包括强大的加密保护和密钥管理、基于身份的身份验证,以及关键安全参数进入和离开的接口之间的物理或逻辑分离。”
这些 USB 驱动器之一的示例是:http: //www.apricorn.com/aegis-secure-key.html