Download 是否可以绕过缓存并将文件下载/打开到RAM?

Download 是否可以绕过缓存并将文件下载/打开到RAM?,download,hardware,hard-drive,firmware,Download,Hardware,Hard Drive,Firmware,序言: 最近我遇到了一个有趣的故事,关于那些似乎正在发送包含儿童色情文件的电子邮件的人。这是一个例子(这个是jpeg,但我听说它是用PDF完成的,通常不能预览) 这可能对调查性新闻中的人们构成真正的威胁,因为即使在临时打开文件后删除该文件,该文件仍可能被取证软件恢复。即使只是打开了文件,你也会犯重罪 这也会给团队的安全顾问带来真正的问题。假设某人A通过电子邮件发送犯罪档案,某人B怀疑电子邮件,并将其转发给安全经理,以供其程序使用。为了分析文件,顾问可能必须将其下载到硬盘上,即使他们将其加载到虚拟

序言: 最近我遇到了一个有趣的故事,关于那些似乎正在发送包含儿童色情文件的电子邮件的人。这是一个例子(这个是jpeg,但我听说它是用PDF完成的,通常不能预览) 这可能对调查性新闻中的人们构成真正的威胁,因为即使在临时打开文件后删除该文件,该文件仍可能被取证软件恢复。即使只是打开了文件,你也会犯重罪

这也会给团队的安全顾问带来真正的问题。假设某人A通过电子邮件发送犯罪档案,某人B怀疑电子邮件,并将其转发给安全经理,以供其程序使用。为了分析文件,顾问可能必须将其下载到硬盘上,即使他们将其加载到虚拟机或沙箱中。即使他们弄清楚了自己到底是什么,他们仍然处在这个合法的地雷区,不恰当的时机可能会让他们坐牢20年。考虑到这一点,如果内存只进入RAM,那么一旦断电,这个打开的文件的所有痕迹都会消失


问题:我对计算机体系结构是如何工作的有一个很好的理解,但是前面提到的这个问题让我开始思考。在操作系统、硬件或固件级别是否存在限制,阻止程序打开直接到RAM的下载信息流?如果不是,比如说你试图打开一个pdf,那么它打开的文件是否有可能以下载字节流的形式传递给程序,然后重写/否则就无法在硬盘上保留最终文件?

不幸的是,我只能给出一个基于Linux/Unix的答案,但希望它能有所帮助,并扩展到Windows

有许多方法可以在程序之间传递数据,而无需写入硬盘,这通常更多的是软件应用程序是否支持它的问题(例如,web浏览器和pdf阅读器)。流可以通过管道和套接字传递,但这里的问题是,接收程序可能更方便地在某些点在流中查找,而不是将所有数据存储在内存中。这可能也是更有效地利用资源。因此,许多程序不这样做。事实上,可以使管道看起来像文件,但如果应用程序尝试向后搜索,则会导致错误

如果有更多的应用程序对流式数据的需求,可能会在更多的情况下看到,尽管没有重大障碍。目前,如果PDF是在插件中查看而不是下载的,则更常见的做法是将PDF存储在临时文件中。不过,视频可能会有所不同

另一种方法是使用,Linux系统通常在默认情况下至少设置一个(),尽管Windows似乎需要安装其他软件。使用其中一个可以消除上述限制,而且设置web浏览器以将其用于临时文件相当容易