0%

最新 Win10 下 COM 组件 IFileOperation 越权复制文件的可行性

早期复现三好学生师傅的文章《通过 COM 组件 IFileOperation 越权复制文件》可以没有 UAC 确认弹窗就复制文件,但是最近发现又有弹窗了,并且说 Win10 已修复云云。然而实际编译了一下最新版本的 UACME,其中使用 IFileOperation 的方法(如 22、23),仍然可以无弹窗实现向 System32 目录写文件。

为此看了一下 UACME 的源码,发现 SetOperationFlags 的参数还取决于 Windows 的 Build Number:

1
2
3
4
5
6
7
8
9
10
11
12
if (NtBuildNumber > 14997) {
Context->IFileOperationFlags = FOF_NOCONFIRMATION |
FOFX_NOCOPYHOOKS |
FOFX_REQUIREELEVATION;
}
else {
Context->IFileOperationFlags = FOF_NOCONFIRMATION |
FOF_SILENT |
FOFX_SHOWELEVATIONPROMPT |
FOFX_NOCOPYHOOKS |
FOFX_REQUIREELEVATION;
}

在较新版本的 Win10(实验版本:10.0.19043.1415)下将 SetOperationFlags 的参数设置为 FOF_NOCONFIRMATION | FOFX_NOCOPYHOOKS |FOFX_REQUIREELEVATION,即可无弹窗越权操作文件。所以这个问题并没有修复,不过不同 Windows 版本参数需要改变的原因尚未弄懂。

---------------感谢您的阅读---------------