为什么用360粉碎机能删除电脑上有管理员权限的文件?
简单说一下删除原理。win下,进程要删除文件,必须要调用ZwSetInformationFile这个Api,但有些文件可能会删除失败,系统内核会检查当前进程的执行权限,如果访问控制列表拒绝该用户,系统就拒绝执行,但进程可提权,请求获取SE_Backup权限,从而实现访问任意文件,除了用户权,但还有几种情况,比如文件正在使用或正在运行,正在使用指该文件句柄正在被其它进程访问,正在运行指该文件作为一个模块已经在内存中加载,通常是exe或dll,这两种情况都无法删除,但内核驱动可修改执行代码进行欺骗,比如欺骗系统让其以为文件并没有在运行。还有种情况,只读文件也无法删除,删除之前必须撤掉文件“只读”属性。除了标准删除,还有种方法就是文件系统层删除,一般采用直接磁盘操作技术,从底层清除文件目录表项,释放文件簇链,这样便从根本上删除了它,同时也是粉碎类工具常用的手段,360是内核程序,既能底层过滤API调用,又能直接访问磁盘,所以它能删除explorer无法删除的文件,也就不足为奇了。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有