无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 8208|回复: 28
打印 上一主题 下一主题

[分享] 一个另类的U盘写保护方式

  [复制链接]
跳转到指定楼层
1#
发表于 2018-12-23 22:34:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
以前很多U盘都带有写保护开关可以做到防止写入感染病毒,但现在很多U盘受制于成本和需求等问题已基本取消物理写保护开关功能了。然而这个功能对于一些专业人员来说还是需要的,但是在没有硬件方面支持的情况下就只能去选择通过软件方面来实现写保护特性了。
本篇文章通过另辟蹊径利用了一个另类的方法实现了磁盘分区的写保护特性,在实际的测试中顺利通过没有问题后就决定分享这套方案了。

注意事项:
1、此方法基于文件系统底层中的TFAT保护机制,因此仅支持在“exFAT”文件系统中使用。
2、由于Win10操作系统会无视此机制的存在因此在设置写入保护后还是可正常读写,但在Win7、Mac等其他操作系统中则没有这个问题(具体可查看此贴:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=403678)。
3、该方法对U盘、硬盘等常见的存储设备都适用。
4、写入保护以分区为单位,对于未上保护的其他分区可正常读写不受影响。
5、只要系统能够支持识别exFAT文件系统并就可以手动触发写保护机制。
6、写入保护可以在受支持的Windows下运行chkdsk或Linux下运行fsck修复方式去除或格式化强制解除。

exFAT的写保护原理:
在TFAT功能的支持下,FAT簇链表采用双索引机制,写入数据时先快速生成一个临时索引后开始数据写入,数据写入完毕后再将生成的临时索引转存为标准索引并标记为已完成状态。当设备接入后系统每次识别exFAT卷时都会先校验文件分配表中是否有未成功转存的临时索引和未标记为已完成的事件,以判断数据写入的完整性决定是否触发TFAT只读保护机制。
此方法利用了这个特性强制阻止其索引的更替,以达到能够人为地控制触发TFAT并利用其写保护特性的目的。

以下为操作步骤,此方案不会丢失数据:
1、首先确保U盘中没有已经打开的文件,如果有请提前保存并关闭以防丢失。
2、打开想要上保护的分区,新建一个空的文本文档。
另外仅首次操作才需要新建一个,已有建的文档只要没删除就不用新建了。

3、打开新建或已有的文本文档,直接点击文件菜单→鼠标放在保存按钮上。
重点来了,不要急着点保存,这时用手捏好U盘,在点击保存的瞬间(1秒内)迅速将U盘拔出。

4、然后重新插入U盘后系统默认每次会弹出扫描并修复窗口时不用管或选不扫描,现在该分区已被上保护处于只读状态不能写入数据。
写保护时对于读取数据则没有任何影响,此时可以在已中毒的电脑上使用U盘而不会被写入病毒了。

5、如想去除写入保护,可在这个弹窗中点击扫描并修复。

6、直接点击开始扫描后,等待自动修复完成即可解除写保护状态。

7、也可以使用CMD命令行手动输入chkdsk 盘符: /F命令扫描卷来解除写保护状态。

8、检查修复完成后该分区可恢复正常读写,如需再次上写入保护请重新按照以上步骤操作即可。
PS:请认真参考以上步骤操作,错误的方式出现问题概不负责。
2#
 楼主| 发表于 2018-12-23 22:37:21 | 只看该作者
本帖最后由 朱玛12345678 于 2018-12-24 12:27 编辑

PS:此方案为直接修改底层数据实现控制写保护开关,具有一定的危险性,建议数据恢复有一定经验的专业人员使用,对于手残党之类的人群请用1L的方案。
提醒:此方案修改数据如果操作不当改错地方将会直接导致该卷损坏无法打开,此时需要改回原值才能恢复正常。
解析:exFAT分区的写保护开关在其第一扇区中(DBR)的0x6A Hex偏移处,当此数值为00时该卷处于读写开放状态,当此数值为02时该卷处于写入保护状态,将此数值改其他值时该卷均为未格式化非法状态。
对于本地硬盘或不方便插拔U盘想要上保护,可以采用这个方案:

首先在改之前为未保护正常状态:


以下为操作步骤:
确保该exFAT分区中所有占用的文件和程序全部关闭↓
打开“WinHex”十六进制编辑器↓

点击工具菜单(或按下F9)后点打开磁盘↓

选择想要上保护的物理驱动器并点确定打开↓
在目录浏览器中点击想要上保护的分区会自动定位至第1扇区位置↓
在16进制表中找到0x6A偏移处(图片中的紫色标记处)↓

将该值00改为02↓

点击文件菜单后点保存扇区(或直接按下Ctrl+S)并确定修改↓

桌面右键我的电脑点击管理后再点磁盘管理↓
在之前修改的磁盘位置右键点脱机(如果无法脱机就直接重启生效)↓

然后再右键点一次联机↓

完成后系统会有提示是否要扫描修复卷即为上保护成功。


如需去除写入保护,其操作方法为:重新在其扇区的0x6A偏移处将数值02改回00并保存后手动刷新一次即可解除写入保护。
回复

使用道具 举报

3#
 楼主| 发表于 2018-12-23 22:56:32 | 只看该作者
本帖最后由 朱玛12345678 于 2018-12-27 02:36 编辑

另外顺便还测试了当exFAT分区作为系统盘运行Windows时,通过触发写保护处于只读状态时还能启动Win8到桌面也没报错,说明Windows是可以在只读介质或分区中运行的,只不过在重启后和RAMOS一样所有的设置都不会保存。

详见此贴:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=388226
回复

使用道具 举报

4#
发表于 2018-12-23 23:05:10 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

5#
发表于 2018-12-24 00:16:22 | 只看该作者
楼主都不怕把优盘搞坏了吗?毕竟有时候不写入时拔出来就坏了,何况是写入时立即拔出

这方法又如何判断文件系统真的出了问题需要执行chkdsk

个人目前用的是NTFS+文件权限的方式,比较方便,而且是正规手段。
回复

使用道具 举报

6#
发表于 2018-12-24 02:37:11 | 只看该作者
本帖最后由 makimaki2 于 2018-12-24 02:52 编辑

1.开关成本就几毛吧,没开关却是很麻烦
篱笆这东西要防贼没什么用,防猪与哥布林跑进你家捣乱却是很好

2.就算有开关,问题在于这些防写都是以软体的形式来实现在驱动,韧体层中,
而且USB都是在线烧写韧体没有韧体防写开关
只要黑客采用替换的驱动或是韧体就可以无视防写

3.隐藏磁区也是一样道理,window是给用户看的,把头埋洞里只是自己心安,
黑客自备驱动同样可以读的到磁区,也可以写病毒或是偷改数据破坏资料

4.目前攻防的观察,黑客甚至可以写数据到未使用硬盘或是USB空白区域,来隐藏资料
或是通过BAD USB渗透内网,用空白区域搬数据

5.所谓知己知彼,黑客也知道你U盘报错会执行checkdisk.exe ,把染病毒的档案替换掉原档等你执行,这就是一种社会工程

6.这世上没有不能黑的软体,软体是不可靠的,MS制肘exfat同时也证明了这点
回复

使用道具 举报

7#
发表于 2018-12-24 05:23:06 来自手机 | 只看该作者
这不能叫写保护,这种做法不可取。
回复

使用道具 举报

8#
发表于 2018-12-24 12:02:13 | 只看该作者
lz你的w7pe该更新了
回复

使用道具 举报

9#
 楼主| 发表于 2018-12-24 12:26:43 | 只看该作者
nttwqz 发表于 2018-12-24 00:16
楼主都不怕把优盘搞坏了吗?毕竟有时候不写入时拔出来就坏了,何况是写入时立即拔出

这方法又如何判断文 ...

1L的方案主要是给那些小白或手残党之类的人群用的,以免不懂的去直接改扇区数据可能会改错地方出大问题。如果你怕热插拔会搞坏U盘,那就去用2L最直接的方案。
首先在发表此文章之前我有足够的信心表明没有问题,我曾至少在使用时拔过U盘不下上百次,热插拔硬盘数十次,甚至在电脑运行时也直接拔掉过几次系统盘等等这些到至今都没有坏过。
因为我常用的存储设备都是选择正规渠道的大品牌,大厂的产品保证质量的同时在设计时就对热插拔做了深度的优化,尤其是USB外部接口和内部IC控制器堆料足抗压能力高,所以是不会这么容易就被插坏的。
当然如果你指的是那种偷工减料了的杂牌盘或山寨扩容盘之类的话那就当我没说。

在每次运行chkdsk时系统都会作为一个事件会在系统日志中详细记录下来,如果按照我的拔盘方法在检查修复的日志中就显示只有一个临时索引被更正,检查的其他部分均没有问题,这个要判断的话查一下日志信息一看就知道。

两者各有各的好处,要看你如何去使用。
回复

使用道具 举报

10#
 楼主| 发表于 2018-12-24 12:50:57 | 只看该作者
makimaki2 发表于 2018-12-24 02:37
1.开关成本就几毛吧,没开关却是很麻烦
篱笆这东西要防贼没什么用,防猪与哥布林跑进你家捣乱却是很好

需要写保护开关的人群还是少数,厂商会趋向于服从多数就基本都取消了
U盘厂商并不只生产几个,几毛钱的成本如果堆积起来也是一笔很大的开销。

黑客要发动攻击也是有成本的,在不会得到任何好处的情况下是不会闲得蛋疼专门去攻击没有价值的东西。
保护是相对的,不存在绝对的防御,当前的保护对于日常需要来说是足够的,这个就没有必要较真了。
回复

使用道具 举报

11#
 楼主| 发表于 2018-12-24 12:55:59 | 只看该作者
窄口牛 发表于 2018-12-24 05:23
这不能叫写保护,这种做法不可取。

不管采用什么方式,实际能够达到相同效果即可。
另外标题中已经明确说明了这是属于非常规思维的一种方式,当然也不排除对于一些人来说会存在一些见解类的问题。
回复

使用道具 举报

12#
 楼主| 发表于 2018-12-24 12:56:53 | 只看该作者

当发布终结版后即再无更新
回复

使用道具 举报

13#
发表于 2018-12-24 21:07:46 | 只看该作者
这都让你发现了 ,高手呀
回复

使用道具 举报

14#
发表于 2018-12-24 21:24:26 | 只看该作者
方法1出现过。以前也奇怪。为什么其他人总说U盘中毒了,我的U盘感觉没有,提示修复只是我懒,直接忽略
但是我U盘格式是NTFS的,不是楼主所说的,有些奇怪。
回复

使用道具 举报

15#
 楼主| 发表于 2018-12-24 23:17:26 | 只看该作者
2013ertert 发表于 2018-12-24 21:24
方法1出现过。以前也奇怪。为什么其他人总说U盘中毒了,我的U盘感觉没有,提示修复只是我懒,直接忽略
...

正常,几乎所有的文件系统在写入数据的时候拔盘或断电后下次接入时都会提示修复卷。
与此同时只有exFAT才会触发其特有的写保护机制,而NTFS没有TFAT这个机制则不会。
回复

使用道具 举报

16#
发表于 2018-12-25 01:23:05 | 只看该作者
学习了,技术贴,感谢楼主!
回复

使用道具 举报

17#
发表于 2018-12-25 08:49:36 | 只看该作者
我怎么感觉二楼的方法比一楼的安全呢?
回复

使用道具 举报

18#
发表于 2018-12-25 13:35:57 | 只看该作者



请教:我的U盘是闪迪64G,文件系统是exFAT的,昨日用的没问题,今天打开发现被写入保护,正常修复及格式化都试过了没用,还有其它方法么?
回复

使用道具 举报

19#
 楼主| 发表于 2018-12-25 17:32:25 | 只看该作者
rgy 发表于 2018-12-25 08:49
我怎么感觉二楼的方法比一楼的安全呢?

你只要不搞错就可以优先用二楼的方法,有经验高手都会用这种方法。
回复

使用道具 举报

20#
 楼主| 发表于 2018-12-25 17:37:38 | 只看该作者
lfc0411 发表于 2018-12-25 13:35
请教:我的U盘是闪迪64G,文件系统是exFAT的,昨日用的没问题,今天打开发现被写入保护,正常修复及 ...

你这个是正常用着被写保护,还是用我的方法被写保护?
U盘具体是什么型号,U盘本身有写保护开关没?
你先把重要数据备份一下,这种情况你去试一下低格能不能解除。
回复

使用道具 举报

21#
发表于 2018-12-26 14:51:07 | 只看该作者
朱玛12345678 发表于 2018-12-25 17:37
你这个是正常用着被写保护,还是用我的方法被写保护?
U盘具体是什么型号,U盘本身有写保护开关没?
你 ...

闪迪至尊高速酷豆™ USB 3.0 闪存盘 64G,试过了低格也保护,正常使用下的被保护,前日是正常插拔使用的,第二天就不能写入了,是否还有其他方法?
回复

使用道具 举报

22#
发表于 2018-12-26 15:25:45 来自手机 | 只看该作者
一楼方法不可取,二楼图文并茂,感觉有人会和我一样不去仔细看。
然后是我想说的,映像中有这样的命令行工具,好像是国外的,作者的其它小工具都挺出名的,他的程序有个特点,可以GUI,也可以命令行。
回复

使用道具 举报

23#
 楼主| 发表于 2018-12-26 15:42:31 | 只看该作者
lfc0411 发表于 2018-12-26 14:51
闪迪至尊高速酷豆™ USB 3.0 闪存盘 64G,试过了低格也保护,正常使用下的被保护,前日是正常插拔使 ...

这种情况量产可以解决,只要主控有相对应的量产工具就可以。
但闪迪的话..那你还是去找售后保修吧......
回复

使用道具 举报

24#
发表于 2018-12-26 16:19:49 | 只看该作者
朱玛12345678 发表于 2018-12-26 15:42
这种情况量产可以解决,只要主控有相对应的量产工具就可以。
但闪迪的话..那你还是去找售后保修吧......

好吧,多谢了
回复

使用道具 举报

25#
发表于 2020-7-7 22:21:48 | 只看该作者
请教一下,FAT32格式写保护开关的位置在哪里呢?exFAT分区的写保护开关在其第一扇区中(DBR)的0x6A Hex偏移处,当此数值为00时该卷处于读写开放状态,当此数值为02时该卷处于写入保护状态
回复

使用道具 举报

26#
发表于 2020-7-7 23:03:16 | 只看该作者
朱玛12345678 发表于 2018-12-26 15:42
这种情况量产可以解决,只要主控有相对应的量产工具就可以。
但闪迪的话..那你还是去找售后保修吧......

版主,有没有NTFS分区修改扇区,像2楼那种来达到读写和只读呢?
回复

使用道具 举报

27#
 楼主| 发表于 2020-7-8 00:35:42 | 只看该作者
huama 发表于 2020-7-7 22:21
请教一下,FAT32格式写保护开关的位置在哪里呢?exFAT分区的写保护开关在其第一扇区中(DBR)的0x6A Hex偏移 ...

FAT32的卷标志位在0x41 Hex偏移处,但FAT32本身不支持写保护机制更改此值没有实际意义。
回复

使用道具 举报

28#
 楼主| 发表于 2020-7-8 00:36:03 | 只看该作者
austere 发表于 2020-7-7 23:03
版主,有没有NTFS分区修改扇区,像2楼那种来达到读写和只读呢?

没有,NTFS不支持此功能。
回复

使用道具 举报

29#
发表于 2020-7-8 19:26:22 | 只看该作者
nttwqz 发表于 2018-12-24 00:16
楼主都不怕把优盘搞坏了吗?毕竟有时候不写入时拔出来就坏了,何况是写入时立即拔出

这方法又如何判断文 ...

ntfs+权限的方式也防不了杀毒软件。。。。。

尤其是联想笔记本上自带的麦咖啡,直接无视你的权限,想删就删。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-4-20 10:30

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表