在 bash 中的命令替换中解密 PGP/GnuPG 加密文件的安全隐患

在 bash 中的命令替换中解密 PGP/GnuPG 加密文件的安全隐患

我用澳新银行通过 HCBI 下载我的银行对账单。通常,aqbanking 会在下载过程中要求提供银行登录凭据,但您也可以将这些凭据存储在未加密的 pinfile 中,并在命令行上将 pinfile 的路径传递给 aqbanking。

我不想将未加密的 pinfile 存储在硬盘上。我使用全盘加密,但我有点担心在未加密的备份中意外泄露 pinfile。

我的想法是使用 GnuPG 加密 pinfile,然后使用 bash 中的进程替换动态解密 pinfile。

而不是运行:

aqbanking-cli -P /path/to/unencrypted-pin-file ...

我在跑步:

aqbanking-cli -P <(gpg -q --decrypt /path/to/encrypted/pinfile) ...

这是可行的,但我担心潜在的安全隐患。

我的假设是,该文件仅在内存中解密,其内容作为内存映射文件访问。未加密的内容永远不会存储在磁盘上。真的吗?

我在 macOS 上,但在 Linux 上,我怀疑使用文件系统的 root 用户可能可以访问内容的输出proc真的吗?

我的方法还存在哪些其他的安全隐患?

注:我最初问的是Stack Overflow 上的这个问题但由于偏离主题,所以那里被关闭了,建议将其发布在这里。

相关内容