如何阻止隐藏的系统文件被发现?

时间:2017-04-24 20:39:31

标签: c# security

我正在开发一个隐藏文件的程序。

File.SetAttributes()

命令将文件属性设置为hidden和system。但是仍然可以看到它们,因为已经设置了“显示隐藏文件,文件夹和驱动器”选项。

是否可以使用C#设置和取消设置隐藏受保护的操作系统文件(推荐)选项

我手动操作,无法看到设置了隐藏和系统属性的文件。

2 个答案:

答案 0 :(得分:1)

即使您弄清楚如何执行此操作,您的方法也存在一些问题。例如:

  • 用户可以手动更改设置,或
  • 用户可以使用特定开关运行dirls命令,并显示隐藏文件
  • 另一个程序将能够读取文件,即使它是隐藏的

您要做的是与rootkit /恶意软件接触。 rootkit执行此操作的方法是运行minifilter文件系统驱动程序。驱动程序接收特定的IO调用并简单地返回"未找到"如果IO请求发生在"隐藏"文件。驱动程序通常允许来自特定进程的调用(通过pid或证书标识)以允许读/写和其他IO操作

或者,根据您要实现的目标,您可以尝试类似容器的文件(请参阅TrueCrypt或其衍生产品)或以编程方式加密文件。

答案 1 :(得分:0)

我建议您使用Microsoft的NTFS或AD,.NET框架或API来管理它。正如原始答案所提到的,如果文件试图被隐藏,它们是揭示文件的其他可能方法。

考虑使用,

File.SetAttributes(path, FileAttributes.Hidden);

另一个答案的答案来源:How to hide file in C#?