利用metasploit绕过UAC的5种方式
副标题[/!--empirenews.page--]
大家好,今天,我们将浅析用户帐户控制(简称UAC)。我们还将了解它如何保护你免受恶意软件的入侵,如若忽略UAC提示,可能会对你的系统造成不良影响。 一、用户账户控制(UAC)介绍 1. 什么是用户账户控制? 在Microsoft Windows Vista和Windows Server 2008操作系统中引入了结构良好的用户帐户控制,因为不必要的系统范围的更改是难以避免的,而UAC策略可以防止这种更改,并且只需要很少的工作量。 换句话说,它是Windows的一项安全功能,它可以让我来防止对操作系统进行未经授权的修改。UAC确保某些修改只能在administrator授权下才能进行。如果administrator不允许更改,则不会执行这些更改,Windows保持不变。 2. UAC工作原理? UAC阻止程序执行涉及系统更改/特定任务的任何任务。除非尝试执行它们的进程以管理员权限运行,否则这些操作将无法运行。如果以管理员身份运行程序,它会具有更多权限,因为与未以管理员身份运行的程序相比,它的权限得到了提升。 没有管理员权限就无法完成的一些事情:
UAC不会自动阻止恶意软件,目的并不是判断程序是否是恶意软件。是不是恶意软件还是得取决于用户。如果要以管理员权限执行程序,UAC将提醒用户并且需要用户进行确认。 二、绕过UAC的5种方法 首先对目标机器进行漏洞利用以获取meterpreter会话。获得meterpreter会话1后,输入以下命令以检查系统权限和特权。
如果你没有系统/管理员权限,那么你就需要绕过目标系统的UAC保护。 1. Windows升级UAC保护绕过 此模块将通过进程注入利用受信任的发布者证书绕过Windows UAC。这将产生第二个shell,而且UAC保护已经关闭。
从下图可以看到,又建立了一个meterpreter会话2连接,现在输入getsystem和getuid两条命令来查看系统权限: 太好了,我们获得了NT AUTHORITYSYSTEM权限。现在你只要输入shell命令,你就会进入一个具有管理员权限的命令行窗口。 2. Windows升级UAC保护绕过(内存注入) 此模块将通过进程注入利用受信任的发布者证书绕过Windows UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块使用反射DLL注入技术仅删除DLLpayload二进制文件而不是删除标准技术中的三个单独的二进制文件。但是,它需要选择正确的体系结构(对于SYSWOW64系统也使用x64)。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。
从下图中可以看出,meterpreter 会话2已经成功打开,现在输入getsystem和getuid两条命令来查看权限。 最终,你也会拿到NT AUTHORITYSYSTEM权限,现在只需要输入shell命令,就可以进入一个具有管理员权限的命令行窗口。 3. Windows升级UAC保护绕过(FodHelper注册表键值绕过) 此模块将通过在当前用户配置单元下劫持注册表中的特殊键并插入将在启动Windows fodhelper.exe应用程序时调用的自定义命令来绕过Windows 10 UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块修改注册表项,但在调用payload后清除该项。该模块不要求payload的结构与OS匹配。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。
从下图中,可以看到,meterpreter会话2已经成功打开,输入getsystem和getuid两条命令来查看权限 非常不错,我们获得了NT AUTHORITYSYSTEM权限,输入shell命令,,就能拿到管理员的命令行窗口了。 4. Windows升级UAC保护绕过(Eventvwr注册表键值绕过) 此模块将通过在当前用户配置单元下劫持注册表中的特殊键并插入自定义命令,这个命令将在启动Windows fodhelper.exe应用程序时调用来绕过Windows 10 UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块修改注册表项,但在调用payload后清除该项。该模块不要求payload的结构与OS匹配。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。 (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |