A. 系统重装后加密文件打不开怎么办
这个问题很复杂,我在网上找到一段资料,希望对你有帮助,谢谢。
声明:本文参考了国外一篇“牛”文,由于要掌握这篇国外文章,读者必须具备一些NTFS底层知识,否则难窥其堂奥。故此笔者四处网罗资料,加上穿凿附会,希望能帮助读者诸君更方便省时地领会这篇文章,舞好EFS这把双刃剑。文章链接如下:
http://www.beginningtoseethelight.org/efsrecovery/index.php
这里需要提醒用户注意:本文并非为了证明微软的EFS存在 “漏洞”,也不是专为马大哈们准备的包治百病的“后悔药”。事实上如果没有导出EFS证书和私钥,那么一旦删除用户、或者重装系统,EFS加密文件就不属于你了。
提示 本文适用于Windows XP Professional单机环境,并假设没有恢复代理(DRF)和共享访问帐户(多个DDF)。
任务描述
如果某个用户把自己的登录帐户删除,那么其他用户将无法访问其EFS加密文件。更可恶的是,一旦公司里的某个用户心怀怨气,恶意加密了本属于别的用户的重要文件,将会导致严重问题。一般情况下,这些EFS加密文件已经被判了死刑,但是实际上只要满足以下条件的话,我们还是可以在末日来临之前打开逃生的天窗:
(1) 必须知道该被删帐户的密码。
(2) 该被删帐户的配置文件必须存在。如果使用“本地用户和组”管理单元删除帐户,则配置文件保留的机会很大,如果使用“用户帐户”控制面板删除帐户,则有一半机会保留配置文件。如果配置文件不幸被删,则只能祈祷可以借助Easy Recovery之类的数据恢复工具进行恢复。
可能有些朋友会觉得这两个条件比较苛刻,此处卖个关子先……
EFS加密原理
大家知道,EFS加密实际上综合了对称加密和不对称加密:
(1) 随机生成一个文件加密密钥(叫做FEK),用来加密和解密文件。
(2) 这个FEK会被当前帐户的公钥进行加密,加密后的FEK副本保存在文件$EFS属性的DDF字段里。
(3) 要想解密文件,首先必须用当前用户的私钥去解密FEK,然后用FEK去解密文件。
看到这里,似乎EFS的脉络已经很清晰,其实不然,这样还不足于确保EFS的安全性。系统还会对EFS添加两层保护措施:
(1) Windows会用64字节的主密钥(Master Key)对私钥进行加密,加密后的私钥保存在以下文件夹:
%UserProfile%\Application Data\Microsoft\Crypto\RSA\SID
提示 Windows系统里的各种私有密钥,都用相应的主密钥进行加密。Windows Vista的BitLocker加密,也用其主密钥对FVEK(全卷加密密钥)进行加密。
(2) 为了保护主密钥,系统会对主密钥本身进行加密(使用的密钥由帐户密码派生而来),加密后的主密钥保存在以下文件夹:
%UserProfile%\Application Data\Microsoft\Protect\SID
整个EFS加密的密钥架构如图1所示。
图1
提示 EFS密钥的结构部分,参考自《Windows Internals 4th》的第12章。
回到“任务描述”部分所述的两个条件,现在我们应该明白原因了:
(1) 必须知道该被删帐户的密码:没有帐户密码,就无法解密主密钥。因为其加密密钥是由帐户密码派生而来的。
提示 难怪Windows XP和2000不同,管理员重设帐户密码,也不能解密EFS文件。
(2) 该被删帐户的配置文件必须存在:加密后的私钥和主密钥(还包括证书和公钥),都保存在配置文件里,所以配置文件万万不可丢失,否则就会彻底“鬼子不能进村”。重装系统后,原来的配置文件肯定被删,这时候当然不可能恢复EFS文件。
可能有用户会想,只需新建一个同名的用户帐户,然后把原来配置文件复制给新帐户,不就可以解密EFS文件了?原因在于帐户的SID,因为新建用户的SID不可能和老帐户一样,所以常规方法是不可能奏效的。我们必须另辟蹊径,让系统再造一个完全一样的SID!
恢复步骤
为了方便描述,这里假设被删帐户的用户名为Admin,Windows安装在C盘。
1.再造SID
注意 本方法取自“声明”部分提到的那篇文章。
首先确认被删帐户的SID,这里可以进入以下文件夹:
C:\Documents and Settings\Admin\Application Data\Microsoft\Crypto\RSA
在其下应该有一个以该被删帐户的SID为名的文件夹,例如是S-1-5-21-4662660629-873921405-788003330-1004(RID为1004)
现在我们要设法让新建帐户同样具有1004的RID,这样就能达到目的。
在Windows中,下一个新建帐户所分配的RID是由HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account注册表项的F键值所确定的。F键值是二进制类型的数据,在偏移量0048处的四个字节,定义下一个帐户的RID。那么也就是说,只需要修改0048处的四个字节,就能达到目的(让新建帐户获得1004的RID)
确认好以后,别忘记把Admin帐户的配置文件转移到别的地方!
(1) 默认情况下,只有system帐户才有权限访问HKEY_LOCAL_MACHINE\SAM,这里在CMD命令提示符窗口,运行以下命令,以system帐户身份打开注册表编辑器:
pexec -i -d -s %windir%\regedit.exe
提示 可以在以下网站下载psexec:
http://www.sysinternals.com/Utilities/PsExec.html
(2) 定位到HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account注册表项,双击打开右侧的F键值。
(3) 这里要说明一下,Windows是以十六进制、而且以反转形式保存下一个帐户的RID。什么意思呢?也就是说,如果是1004的RID,对应十六进制就是03EC,但是我们必须把它反转过来变成EC03,再扩展为4个字节,就是EC 03 00 00。
所以,我们应该把F键值的0048偏移量处,把其中四个字节改为“EC 03 00 00”,如图2所示。
图2
(4) 重要:别忘了重启计算机!
(5) 重启以后,新建一个同名帐户Admin,它的SID应该和以前是完全一样。如果不相信的话,可以借助GetSID或者PsGetSID等工具测试一下。
2.“破解”EFS
接下来的方法就非常简单了,用新建的Admin帐户身份登录系统,随便加密一个文件,然后注销,用管理员帐户登录系统,把原来保留的配置文件复制到C:\Documents and Settings\Admin文件夹下。
再用Admin帐户登录系统,现在可以解密原来的EFS文件了。
疑难解答
1.如果已经重装系统,那怎么办?
“声明”部分提到的那篇文章里提到,如果还记得原来帐户的密码,并且配置文件没有被删除的话,还有希望。这时候可以借助sysinternals的NEWSID工具把系统的计算机SID重设为原来的值,再用前面描述的方法构造所需的RID,这样就可以获得所需的帐户SID。剩余步骤完全一样。
http://www.sysinternals.com/Utilities/NewSid.html
2.有用户曾经遇到这样的问题:登录系统时收到提示说密码过期,需要重设,重设密码登录后发现打开EFS文件。
KB890951提到这个问题。其解释是因为在修改密码时,系统还没有加载配置文件(有点语焉不详),原文如下:
This problem occurs because the user profile for the current user is not loaded correctly after you change the password.
配置文件和EFS有何相干?看完本文,大家应该知道,EFS的私钥和主密钥都是保存在配置文件里的。由于配置文件没有加载,所以主密钥的加密版本没有得到更新(没有跟上帐户密码的变化),导致主密钥无法正确解密,从而无法解密私钥和FEK。这就是问题的真正原因。
该KB提供了一个内部补丁,可以解决这个问题。KB890951的链接如下:
http://support.microsoft.com/kb/890951
3.有关公钥的问题
为了容易理解,笔者故意忽略了公钥。公钥保存也保存在帐户的配置文件里:
%UserProfile%\Application Data\Microsoft\SystemCertificates\My\Certificates
在EFS恢复的操作中,必须确保公钥也要复制到新帐户的配置文件里。尽管看起来公钥与EFS解密无关(它负责加密)。
原来,加密文件$EFS属性的DDF字段里除了有帐户SID和加密的FEK副本外,还有公钥的指纹信息(Public Key Thumbprint)和私钥GUID信息(私钥的某种散列值)。
系统在扫描加密文件$EFS属性中的DDF字段时,根据用户配置文件里的公钥中所包含的公钥指纹和私钥GUID信息,当然还有帐户的SID,来判断该帐户是否具有对应的DDF字段,从而判断该用户是否属于合法的EFS文件拥有者。
所以公钥也很重要。
当然公钥是可以“伪造”的(可以伪造出所需的公钥指纹和私钥GUID),以欺骗EFS系统,具体方法可以参考国外的那篇原稿,此处不再赘述。
加强EFS的安全
由于EFS把所有的相关密钥都保存在Windows分区,所以这可能给EFS带来一定的安全隐患。目前有一些第三方工具号称可以破解EFS,这些工具首先攻击SAM配置单元文件,尝试破解帐户密码,从而破解帐户密码→主密钥的加密密钥→主密钥→EFS私钥→FEK的“密钥链”。
为了防止攻击者窥视我们的EFS文件,可以借助以下三种方法:
1.导出删除私钥
可以用证书向导导出EFS加密证书和私钥,并且在“证书导出向导”对话框里选择删除私钥,如图3所示。
图3
删除私钥以后,攻击者就没有办法访问EFS加密文件了,而我们需要访问时,只需导入先前备份的证书和私钥即可。
2.System Key提供额外的保护
System Key可以对SAM配置单元文件和EFS私钥提供额外保护。Windows XP的System Key默认保存在本地
B. 电脑重装系统后,以前加密的文件打不开了,还可以恢复吗
你好!你装系统是备份还原,还有用同一光盘应该是没问题,你可以先取消加密方式试试看,你重装系统数据可能无法恢复!一些软件不行的!祝你开心!
C. 系统重装,加密文件无法打开,求高手帮忙解决
这个相当的简单,加密的文件安装的是那款免费的加密软件???在安装一次,对文件解密后再卸载了重启看看文件是不是OK了,因为你之前加密的文件是经过你那个加密软件的算法加密的,只有知道他的密钥或者算法再逆运算过去就OK了,所以你再重新安装下之前的加密软件,解密后卸载掉就oK了,我从事软件行业,QQ921242792
D. 加密文件打不开怎么办
可能没救了,如果你忘记了密码的话,可以试试这招。
一般来说,要看看你的加密软件使用什么样的加密方法,有的只是用些小花招(隐藏文件,文件属性修改,比如:高强度文件夹加密大师)。有些则非常恐怖,会把数据经过某种加密运算,一般方式无法打开。(比如微软着名的EFS加密法)
你首先用WinRAR打开你所在的文件夹,看看有没有什么目录,如果有的话打开看看,里面可能就会有你所要的文件。如果有的话就复制出来。(这招可以用来破解高强度文件夹加密大师移动加密的文件夹)
或者在开始=>运行=>cmd.exe,输入DIR
D:\00\(假设你的目录是这个),然后会显示几个目录(带DIR的那个),继续DIR
D:\00\med\(假设这是你看到的目录),如果有文件的话,就用Copy命令(Copy
D:\00\med\文件名
D:\01\,假设是这样)。复制完打开看看,如果是的话就可以了。
如果这招不行,或是你的加密法类似于EFS,是重写过数据的话,要恢复几乎是不可能的。或者你大概的想一下你的密码,用穷举法破解。除此以外,就是要专用的破解工具了。
经过长达两个小时的测试,我已经找到了完善的破解方法,这种方法可以用于任何一种带密码输入框的加密软件,变通一下即可。
测试过程中,我首先对加密文件下了一番手脚(用Windows的记事本、WinHex),可是一无所获。之后我又对加密软件的源程序下了一番手脚(WinHex、PEiD)。是除了一堆无意义的代码(可能是技术问题,不过我确实看不懂这些源码中的一部分,看懂的也派不上什么用场)。
之后我又稍稍改变了思路,准备采用调试法破解。首先,我打开了Wopti
文件加密的程序,输入了一个错误的密码,软件出现错误提示框。
这个时候,我就用增强版的任务管理器(传说是从新版Windows“盗”来的),单击“调试”,可是由于VS.NET
2003被我卸载了,无法调试。
正在“山重水复疑无路”的时候,我用右键单击了“创建转储文件(C)”,待转储完毕后,我按照提示路径打开了这个文件。我试着看懂这些乱码(这时候我用的是Windows自带的记事本),可是没有结果。接着我试着搜索文件的正确密码,本来我并不抱多大的希望,可没想到,竟然搜索到了,就在“WomCompress”
的右边,在这后面有“请输入密码:”。
一般来说,只要搜索“请输入密码:”(不包括引号),并在前面几行里的“WomCompress”
的右边,就是我们所需要的密码。
剩下的就不用说了,解密就是了(这个不用教了吧?)
我只知道这么多,希望能解决你的问题。
E. win7系统,前两天对文件夹进行加密,重启之后文件就打不开了,想要取消加密却提示管理员权限不够
属性,安全,编辑,添加,高级,立即查找,找到users,把这个添加进去,再把权限的勾打上
不过我怎么也感觉你登错账户了呢
F. 电脑重启后加密文件打不开了
打不开的文件可能因为重装系统对系统安全属性的重新设定而无法访问这些文件。我们可以通过取得文件夹的所有权来访问这个文件或删除此文件。请按照下面的步骤来取得这个文件夹的所有权。
一.如果重装的系统是 Windows XP Professional,则必须禁用“简单文件共享”。默认情况下,Windows XP Professional 在没有加入域时会使用“简单文件共享”。
要禁用简单文件共享,请按照下列步骤操作:
1. 单击“开始”,然后单击“我的电脑”。
2. 在“工具”菜单上,单击“文件夹选项”,然后单击“查看”选项卡。
3. 在“高级设置”部分中,清除“使用简单文件共享(推荐)”复选框。
4. 单击“确定”。
二. 右键单击打不开的文件夹,然后单击“属性”。
三. 单击“安全”选项卡,然后单击“安全”消息(如果出现)中的“确定”。
四. 单击“高级”,然后单击“所有者”选项卡。
五. 在“名称”列表中,单击您的用户名;如果您是以管理员身份登录的,请单击“Administrator”或“Administrators”组。如果您希望取得该文件夹内容的所有权,请选中“替换子容器及对象的所有者”复选框。
六. 单击“确定”,然后在收到以下消息时单击“是”:
您无权阅读 folder name 目录中的内容。是否用“完全控制”权限替换目录权限?
如果选择“是”,所有权限都将被替换。
注意:folder name 是您要取得其所有权的文件夹的名称。
七. 单击“确定”,然后对该文件或文件夹及其内容重新应用您所希望的权限和安全设置。
现在应该可以打开这个文件夹了。
如果您重装的系统是Windows XP Home Edition,我们需要在安全模式下完成上述操作。要进入安全模式,请按照下面的步骤:
1. 重新启动计算机并开始按键盘上的 F8 键。在一台配置为启动到多操作系统的计算机上,当看到启动菜单时可以按 F8 键。
2. 显示 Windows 高级选项菜单时,选择某个选项,然后按 Enter 键。
3. 当启动菜单再次出现并且蓝色文字“安全模式”出现在屏幕底部时,选择您想启动的安装,然后按 Enter 键。
G. 电脑重装系统后加密文件打不开怎么办
重装系统后,要打开加密文件,就要重新安装(使用)当初使用的加密软件,恢复当初的加密环境。关键还是加密时输的密码不能忘记。
H. 电脑重装了系统以后加密文件打不开
选文件夹属性的高级属性,加密内容以便保护数据,但这种方法重装系统或出错后,你加密的文件就再也打不开了。
所以我建议你下载专业的加密软件,比如文件夹加密超级大师。
文件夹加密超级大师支持所有windows系统,可以加密文件夹,加密文件,保护磁盘和数据粉碎,使用起来非常方便。
非常好用,操作方便强烈推荐。
I. 电脑文件加密后,打不开是怎么回事
打不开的文件可能因为重装系统对系统安全属性的重新设定而无法访问这些文件。我们可以通过取得文件夹的所有权来访问这个文件或删除此文件。请按照下面的步骤来取得这个文件夹的所有权。
一.如果重装的系统是
Windows
XP
Professional,则必须禁用“简单文件共享”。默认情况下,Windows
XP
Professional
在没有加入域时会使用“简单文件共享”。
要禁用简单文件共享,请按照下列步骤操作:
1.
单击“开始”,然后单击“我的电脑”。
2.
在“工具”菜单上,单击“文件夹选项”,然后单击“查看”选项卡。
3.
在“高级设置”部分中,清除“使用简单文件共享(推荐)”复选框。
4.
单击“确定”。
二.
右键单击打不开的文件夹,然后单击“属性”。
三.
单击“安全”选项卡,然后单击“安全”消息(如果出现)中的“确定”。
四.
单击“高级”,然后单击“所有者”选项卡。
五.
在“名称”列表中,单击您的用户名;如果您是以管理员身份登录的,请单击“Administrator”或“Administrators”组。如果您希望取得该文件夹内容的所有权,请选中“替换子容器及对象的所有者”复选框。
六.
单击“确定”,然后在收到以下消息时单击“是”:
您无权阅读
folder
name
目录中的内容。是否用“完全控制”权限替换目录权限?
如果选择“是”,所有权限都将被替换。
注意:folder
name
是您要取得其所有权的文件夹的名称。
七.
单击“确定”,然后对该文件或文件夹及其内容重新应用您所希望的权限和安全设置。
现在应该可以打开这个文件夹了。
如果您重装的系统是Windows
XP
Home
Edition,我们需要在安全模式下完成上述操作。要进入安全模式,请按照下面的步骤:
1.
重新启动计算机并开始按键盘上的
F8
键。在一台配置为启动到多操作系统的计算机上,当看到启动菜单时可以按
F8
键。
2.
显示
Windows
高级选项菜单时,选择某个选项,然后按
Enter
键。
3.
当启动菜单再次出现并且蓝色文字“安全模式”出现在屏幕底部时,选择您想启动的安装,然后按
Enter
键。