当前安全方面的担忧是,使用同步工具会导致“数据泄漏”;例如,同步工具生成的索引在未加密的情况下存储在磁盘上。
您认为索引存在数据泄露风险是正确的。风险的多少取决于索引的具体内容。
不久前,我领导了一个项目来构建一个有点像 Dropbox 的东西。为了跨运行比较目录,我们使用了路径名、内容的 sha256 哈希(如果尚未计算)、各种时间戳信息等。
显然,如果同步工具要存储有关存储在加密容器中的文件的信息,攻击者也可以访问它们。确切的风险实际上取决于您给定的场景。
但是,我怀疑游戏中的风险比您想象的要大。例如,假设在打开文件时,您的无辜软件会创建一个副本,以免损坏个人 - 但是,您已以只读方式安装文件系统,因此它可以轻松创建文件的副本在您的临时文件夹中。太好了,除了 - 它只是将您的数据从加密分区复制到未加密分区,从而泄漏了它。
同步工具也是如此。这将是一种相当糟糕的构建方法 - 但可以想象该工具可以将文件复制到正在进行的临时位置。同样,您有泄漏问题。
更现实一点 - 让我们假设同步工具通过mmaping 和在它们之间复制来复制内存中的文件。如果您在此更新期间遇到系统崩溃并且您的应用恰好被核心转储了怎么办?哎呀,如果 truecrypt 驱动程序的内存也被核心转储了,会发生什么?它很可能包含未加密的文件数据。
事实是,您不太可能从任何这些场景中推断出整个文件的内容 - 但就像在您的房子里变湿一样,某处会泄漏一些东西。完全确定你已经完成所有事情的唯一方法是做显而易见的事情:加密整个批次。交换,磁盘,一切。
因此,回答您提出的问题:攻击者可以清除同步工具存储的任何内容。看一看。抓取Process Monitor,查看它存储数据的位置,然后查看其中的内容。这将准确地告诉您哪些数据正在泄漏。
要回答您没有问的问题:没有办法绝对确定您不会在未加密的系统上使用 truecrypt 容器泄漏某些内容。