4月1日,愚人节,周一,记不清天气了,是一周的开始,也是噩梦的开始。
早上,还没走到办公室,就接到电话。
快来看看,XXX的电脑打不开了,提示什么密码过期。
我想了想,哎呀,是不是我上周把一些员工的口令清除了,也不应该啊,不会清除到XXX吧,应该没啥问题。
到了电脑前才发现,是进不了 Windows 系统了。
提示密码过期,需要更改密码,但是更改密码又提示”拒绝访问”。
当时拍了个视频。
所幸的是,那个时候还没开工,还有时间够我修一下。
网上随手搜了下,看到百度知道的一篇教程。
https://jingyan.baidu.com/article/2c8c281d99b87b0008252ab2.html
但是 net user
并没有当前的用户,只是提示“运行命令有错误”,强制设置密码提示找不到这个用户。
反射弧过长的我突然想到,当时这批win10可是有3台,我都是这样设置的,那么每台会不会都有这个问题。其中有一台可是在一个很关键的位置————用于共享9个电脑要使用的打印机。
想到这,脑袋瞬间炸裂,头皮发麻。
赶紧去了下那台电脑,还好已经进入系统了,我试着切换用户,登陆,提示“密码过期,需要重置”。
妈耶,这不是完了🐎?我 tm 今天要死在这了。。
硬着头皮试试重置密码,居然成功了,没有出现“拒绝访问”,松了一口气,那么现在只需要处理那台电脑了。
突然想起了上次拯救过我一次的教程:
http://www.xitongcheng.com/jiaocheng/win10_article_33911.html
但是,因为除了Administrator
还存在一个用户,所以
在安全模式下,系统会自动从默认是禁用的 Administrator 账户登录进桌面
所以这个没有成功。
其实,我当时候已经有解决思路了,只需要能进系统,把密码永不过期勾选上就行了。
或者,我只需要一个 shell,将 Administrator 用户启动,禁用当前的普通用户,然后就能进到系统里了。
只能试试方法二,当时已经没抱什么希望了,这种歪网站上的教程,一般都行不通的。反正死马当活马医吧。
因为我当时手边没有 PE 盘,只有个之前的 kali persistence u盘,效果都一样的。
设置 BIOS
我们需要修改 BIOS 的 boot 设置,来使计算机从 u盘 启动。
这台计算机的型号是 Dell Vostro 3670
这个 BIOS 设置还是第一次见
禁用 Secure Boot
Settings - Secure Boot - Secure Boot Enable
右侧取消勾选禁用 PPT
Settings - Security - PPT Security
右侧取消勾选修改启动顺序
Settings - General - Boot Sequence
Boot List Option
- Legacy External Devices
在下面点击 Apply 应用
然后会在上面的框中看到 USB Storage Devices
按右边上键,将其调整为 第一启动项
最后点击 Exit 退出,重新启动就可以进入u盘系统了。
从 Kali 启动
熟悉的 Kali Boot Menu。
我将 win10 的系统盘挂载,准备拷贝时,发现不可写。
mount
查看一下,挂载参数为 ro
,read-only。1
2
3
4
5
6root@kali:~# mount
[unimportant message]
/dev/sdc2 on /media/root/Kali Live type vfat (rw,nosuid,nodev,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
/dev/sda3 on /media/root/9824A53D24A51F6E type fuseblk (ro,relatime,user_id=0,group_id=0,allow_other,blksize=4096)
卸载后尝试手动挂载1
2
3
4
5
6
7root@kali:~# umount /dev/sda3
root@kali:~# mount -t ntfs-3g /dev/sda3 /media/root/9824A53D24A51F6EWindows is hibernated, refused to mount.
The disk contains an unclean file system (0, 0).
Metadata kept in Windows cache, refused to mount.
Falling back to read-only mount because the NTFS partition is in an
unsafe state. Please resume and shutdown Windows fully (no hibernation
or fast restarting.)
这是复盘时报的错误,实际上当时的错误和这个差不多。
卸载 sda3
,使用 ntfsfix
修复1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22root@kali:~# umount /dev/sda3
root@kali:~# ntfsfix /dev/sda3
Mounting volume... Windows is hibernated, refused to mount.
FAILED
Attempting to correct errors...
Processing $MFT and $MFTMirr...
Reading $MFT... OK
Reading $MFTMirr... OK
Comparing $MFTMirr to $MFT... OK
Processing of $MFT and $MFTMirr completed successfully.
Setting required flags on partition... OK
Going to empty the journal ($LogFile)... OK
Windows is hibernated, refused to mount.
Remount failed: Operation not permitted
root@kali:~# mount -o rw /dev/sda3
mount: can't find /dev/sda3 in /etc/fstab
root@kali:~# ntfsfix /dev/root/^C
root@kali:~# mount -o rw /dev/sda3 /media/root/9824A53D24A51F6E/
Windows is hibernated, refused to mount.
Falling back to read-only mount because the NTFS partition is in an
unsafe state. Please resume and shutdown Windows fully (no hibernation
or fast restarting.)
重新挂载
1 | root@kali:~# umount /dev/sda3 |
没有报错,好像挂载成功了
进入 Windows/System32
目录
将 sethc.exe
备份为 sethc.exe.bak
然后使用 cmd.exe
覆盖 sethc.exe
1 | root@kali:~# cd /media/root/9824A53D24A51F6E/Windows/System32 |
再复制cmd.exe到当前目录(\system32)下的 dllcache 目录里改名为sethc.exe;
这里,我没有找到 dllcache
目录,此步略过。
从 Win10 硬盘启动
像刚刚那样,修改 boot 启动顺序,将硬盘启动放在第一启动项。
在登陆界面,双击 shift,弹出了终端窗口。
输入 net user
,返回的信息里有当前的这个用户。这样就好办了。
禁用当前用户(比如我当前的用户叫user,事实上也是)1
net user user /active:no
启用 Administrator1
net user administrator /avtive:yes
重启电脑,默认使用 Administrator 进入了系统。
在计算机管理 - 用户和用户组 ,
设置 user 用户 - 属性 - 勾选密码永不过期。
禁用 Administrator 用户
开启 user 用户
切换成 user 用户进入系统,一切搞定~!
参考:
- http://www.xitongcheng.com/jiaocheng/win10_article_33911.html (拯救了我两次
- https://jingyan.baidu.com/article/3d69c55126805bf0cf02d7ed.html
- https://askubuntu.com/questions/204166/how-do-i-mount-a-hibernated-ntfs-partition
- https://askubuntu.com/questions/462381/cant-mount-ntfs-drive-the-disk-contains-an-unclean-file-system