SCW Icons
hero bg no divider
Blog

安全编码技术:安全删除文件

Pieter De Cremer
Published Sep 10, 2017
Last updated on Mar 09, 2026

删除计算机系统上的文件很棘手。每个人,甚至你的母亲,以前都删除了太多文件,他们很高兴发现它仍然在垃圾箱里,能够恢复。

计算机系统中的数据由位序列表示。这意味着系统需要在文件系统中做一些记账才能知道哪些位代表哪个文件。这些信息包括文件的大小、上次修改时间、其所有者、访问权限等。这些簿记数据与文件内容分开存储。

通常,当文件被删除时,代表该文件的位不会发生任何变化,但是簿记数据会发生变化,因此系统知道存储的这一部分现在毫无意义并且可以重复使用。在另一个文件保存在此位置且该位置中的位被覆盖之前,您通常仍然可以恢复保存的数据。这不仅可以提高删除文件的速度,而且通常是撤消删除的有用功能。

但是,这种方法也有缺点。当计算机系统上的应用程序处理敏感信息时,它会将这些数据保存在文件系统的某个地方。在某个时候,当不再需要这些信息时,这些数据可能会被删除。如果不加小心,即使开发人员的意图是删除所有数据,这些数据仍然可以恢复。

完全擦除该数据的最简单方法是使用随机数据重写文件内容(有时甚至多次)。现有有几种安全文件删除方法,它们因存储类型和文件系统(例如Gutmann方法)而异。但是,对于应用程序的日常使用来说,这些有点矫揉造作,你可以自己重写数据。

不过要小心!不要全部使用零或其他低熵数据。许多文件系统可能会优化写入此类稀疏文件并保留一些原始内容。建议在删除文件本身之前,生成安全的随机数据以覆盖整个文件内容。

数据剩余是以某种方式被删除的数据的剩余物理表现形式。擦除存储介质后,可能存在一些允许重建数据的物理特征。

https://fas.org/irp/nsa/rainbow/tg025-2.htm

查看资源
查看资源

数据剩余是以某种方式被删除的数据的剩余物理表现形式。

对更多感兴趣?

Application Security Researcher - R&D Engineer - PhD Candidate

learn more

Secure Code Warrior可以帮助您的组织在整个软件开发生命周期中保护代码,并营造一种将网络安全放在首位的文化。无论您是 AppSec 经理、开发人员、首席信息安全官还是任何与安全相关的人,我们都可以帮助您的组织降低与不安全代码相关的风险。

预订演示
分享到:
linkedin brandsSocialx logo
作者
Pieter De Cremer
Published Sep 10, 2017

Application Security Researcher - R&D Engineer - PhD Candidate

分享到:
linkedin brandsSocialx logo

删除计算机系统上的文件很棘手。每个人,甚至你的母亲,以前都删除了太多文件,他们很高兴发现它仍然在垃圾箱里,能够恢复。

计算机系统中的数据由位序列表示。这意味着系统需要在文件系统中做一些记账才能知道哪些位代表哪个文件。这些信息包括文件的大小、上次修改时间、其所有者、访问权限等。这些簿记数据与文件内容分开存储。

通常,当文件被删除时,代表该文件的位不会发生任何变化,但是簿记数据会发生变化,因此系统知道存储的这一部分现在毫无意义并且可以重复使用。在另一个文件保存在此位置且该位置中的位被覆盖之前,您通常仍然可以恢复保存的数据。这不仅可以提高删除文件的速度,而且通常是撤消删除的有用功能。

但是,这种方法也有缺点。当计算机系统上的应用程序处理敏感信息时,它会将这些数据保存在文件系统的某个地方。在某个时候,当不再需要这些信息时,这些数据可能会被删除。如果不加小心,即使开发人员的意图是删除所有数据,这些数据仍然可以恢复。

完全擦除该数据的最简单方法是使用随机数据重写文件内容(有时甚至多次)。现有有几种安全文件删除方法,它们因存储类型和文件系统(例如Gutmann方法)而异。但是,对于应用程序的日常使用来说,这些有点矫揉造作,你可以自己重写数据。

不过要小心!不要全部使用零或其他低熵数据。许多文件系统可能会优化写入此类稀疏文件并保留一些原始内容。建议在删除文件本身之前,生成安全的随机数据以覆盖整个文件内容。

数据剩余是以某种方式被删除的数据的剩余物理表现形式。擦除存储介质后,可能存在一些允许重建数据的物理特征。

https://fas.org/irp/nsa/rainbow/tg025-2.htm

查看资源
查看资源

填写下面的表格下载报告

我们希望获得您的许可,以便向您发送有关我们的产品和/或相关安全编码主题的信息。我们将始终非常谨慎地对待您的个人信息,绝不会出于营销目的将其出售给其他公司。

提交
scw success icon
scw error icon
要提交表单,请启用 “分析” Cookie。完成后,可以随意再次禁用它们。

删除计算机系统上的文件很棘手。每个人,甚至你的母亲,以前都删除了太多文件,他们很高兴发现它仍然在垃圾箱里,能够恢复。

计算机系统中的数据由位序列表示。这意味着系统需要在文件系统中做一些记账才能知道哪些位代表哪个文件。这些信息包括文件的大小、上次修改时间、其所有者、访问权限等。这些簿记数据与文件内容分开存储。

通常,当文件被删除时,代表该文件的位不会发生任何变化,但是簿记数据会发生变化,因此系统知道存储的这一部分现在毫无意义并且可以重复使用。在另一个文件保存在此位置且该位置中的位被覆盖之前,您通常仍然可以恢复保存的数据。这不仅可以提高删除文件的速度,而且通常是撤消删除的有用功能。

但是,这种方法也有缺点。当计算机系统上的应用程序处理敏感信息时,它会将这些数据保存在文件系统的某个地方。在某个时候,当不再需要这些信息时,这些数据可能会被删除。如果不加小心,即使开发人员的意图是删除所有数据,这些数据仍然可以恢复。

完全擦除该数据的最简单方法是使用随机数据重写文件内容(有时甚至多次)。现有有几种安全文件删除方法,它们因存储类型和文件系统(例如Gutmann方法)而异。但是,对于应用程序的日常使用来说,这些有点矫揉造作,你可以自己重写数据。

不过要小心!不要全部使用零或其他低熵数据。许多文件系统可能会优化写入此类稀疏文件并保留一些原始内容。建议在删除文件本身之前,生成安全的随机数据以覆盖整个文件内容。

数据剩余是以某种方式被删除的数据的剩余物理表现形式。擦除存储介质后,可能存在一些允许重建数据的物理特征。

https://fas.org/irp/nsa/rainbow/tg025-2.htm

观看网络研讨会
开始吧
learn more

点击下面的链接并下载此资源的PDF。

Secure Code Warrior可以帮助您的组织在整个软件开发生命周期中保护代码,并营造一种将网络安全放在首位的文化。无论您是 AppSec 经理、开发人员、首席信息安全官还是任何与安全相关的人,我们都可以帮助您的组织降低与不安全代码相关的风险。

查看报告预订演示
查看资源
分享到:
linkedin brandsSocialx logo
对更多感兴趣?

分享到:
linkedin brandsSocialx logo
作者
Pieter De Cremer
Published Sep 10, 2017

Application Security Researcher - R&D Engineer - PhD Candidate

分享到:
linkedin brandsSocialx logo

删除计算机系统上的文件很棘手。每个人,甚至你的母亲,以前都删除了太多文件,他们很高兴发现它仍然在垃圾箱里,能够恢复。

计算机系统中的数据由位序列表示。这意味着系统需要在文件系统中做一些记账才能知道哪些位代表哪个文件。这些信息包括文件的大小、上次修改时间、其所有者、访问权限等。这些簿记数据与文件内容分开存储。

通常,当文件被删除时,代表该文件的位不会发生任何变化,但是簿记数据会发生变化,因此系统知道存储的这一部分现在毫无意义并且可以重复使用。在另一个文件保存在此位置且该位置中的位被覆盖之前,您通常仍然可以恢复保存的数据。这不仅可以提高删除文件的速度,而且通常是撤消删除的有用功能。

但是,这种方法也有缺点。当计算机系统上的应用程序处理敏感信息时,它会将这些数据保存在文件系统的某个地方。在某个时候,当不再需要这些信息时,这些数据可能会被删除。如果不加小心,即使开发人员的意图是删除所有数据,这些数据仍然可以恢复。

完全擦除该数据的最简单方法是使用随机数据重写文件内容(有时甚至多次)。现有有几种安全文件删除方法,它们因存储类型和文件系统(例如Gutmann方法)而异。但是,对于应用程序的日常使用来说,这些有点矫揉造作,你可以自己重写数据。

不过要小心!不要全部使用零或其他低熵数据。许多文件系统可能会优化写入此类稀疏文件并保留一些原始内容。建议在删除文件本身之前,生成安全的随机数据以覆盖整个文件内容。

数据剩余是以某种方式被删除的数据的剩余物理表现形式。擦除存储介质后,可能存在一些允许重建数据的物理特征。

https://fas.org/irp/nsa/rainbow/tg025-2.htm

目录

下载PDF
查看资源
对更多感兴趣?

Application Security Researcher - R&D Engineer - PhD Candidate

learn more

Secure Code Warrior可以帮助您的组织在整个软件开发生命周期中保护代码,并营造一种将网络安全放在首位的文化。无论您是 AppSec 经理、开发人员、首席信息安全官还是任何与安全相关的人,我们都可以帮助您的组织降低与不安全代码相关的风险。

预订演示下载
分享到:
linkedin brandsSocialx logo
资源中心

帮助您入门的资源

更多帖子
资源中心

帮助您入门的资源

更多帖子