首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在不损坏文件系统的情况下将原始数据“签名”写入磁盘

在不损坏文件系统的情况下将原始数据“签名”写入磁盘
EN

Stack Overflow用户
提问于 2012-03-12 13:03:29
回答 3查看 1K关注 0票数 0

我正在尝试创建一个程序,它将以原始格式将一系列10-30个字母/数字写入磁盘(而不是操作系统将读取的文件)。也许为了使我的尝试更清晰,如果您在十六进制编辑器中打开磁盘,您将看到10-30个字母/数字,但文件管理器(如Windows资源管理器)将看不到它(因为数据不是文件)。

我的目标是能够使用一系列字符对磁盘进行“签名”,并且能够在我的程序中读写“签名”。我知道NTFS和其他文件系统一样,使用NTFS标记对其分区进行签名,我必须小心不要将签名写入任何关键部分。

在C++/C中有没有库可以帮助我在低级写入磁盘,以及我如何知道可以开始向其写入签名的安全扇区?要缩小范围,它只需要能够写入NTFS、FAT、FAT32、FAT16和exFAT文件系统并在Windows上运行即可。任何链接或参考资料都是非常感谢的!

编辑:经过一些研究后,USB驱动器只允许一个分区,而不会应用黑客技巧,因为黑客技巧会给用户带来更多问题。不幸的是,这排除了“分区思想”。

EN

回答 3

Stack Overflow用户

发布于 2012-03-12 13:36:45

首先,正如评论者所说,你应该看看为什么要这样做,看看这是否真的是一个好主意。大多数试图绕过用户使用计算机的正常用户界面的应用程序在不同方面都是“糟糕的”。

也就是说,您可以尝试查找一个众所周知的文件,该文件将始终位于系统中,并且在磁盘的块大小方面有一些松弛,并写入到松弛。我不认为大多数文件系统会关心冗余中的额外数据,如果文件碰巧被重新定位,它甚至可能会被复制(在磁盘级复制整个块更有效)。

这只是一个想法;不知道它有多可行,但在理论上似乎是可行的。

票数 2
EN

Stack Overflow用户

发布于 2012-03-12 13:17:23

虽然我认为这通常是一个相当糟糕的想法,但最明显的方法是将一个集群标记为“坏”,然后将其用于您自己的目的。

与此相关的问题:

  1. 将其标记为坏簇并不容易(在NTFS上,坏簇存储在一个类似$BadClus的文件中,但用户代码无法访问它(我甚至不确定设备驱动程序是否也能访问它)。
  2. 有各种程序可以扫描(并尝试修复)坏簇/扇区。因为我们甚至不认为这是真的很糟糕,所以几乎所有有效的方法都会发现它很好,并将其重新投入使用。
  3. 人们想要做这样的事情(比如将特定的软件安装与特定的计算机捆绑在一起)的大多数原因都是相当愚蠢的。
  4. 你必须扫描所有“不好”的部分,看看其中是否有包含你签名的部分。
票数 1
EN

Stack Overflow用户

发布于 2012-03-12 13:06:40

这是非常危险的,然而,填零程序做了同样的事情,所以你可以谷歌如何在C++中用零来擦除硬盘。

困难的部分是找到一个你知道的未被使用和不会被使用的地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9661998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档