当前位置: 首页 > news >正文

Windows提权(一)———系统内核溢出漏洞提权

声明

本博客内容仅供技术学习与安全研究之用,严禁用于任何非法或未授权的活动。转载需注明出处。因不当使用导致的后果,作者不承担责任。

溢出漏洞是一种计算机程序的可更正性缺陷。溢出漏洞的全名:缓冲区溢出漏洞。因为它是在程序执行的时候在缓冲区执行的错误代码,所以叫缓冲区溢出漏洞。缓冲溢出是最常见的内存错误之一,也是攻击者入侵系统时所用到的最强大、最经典的一类漏洞利用方式。成功地利用缓冲区溢出漏洞可以修改内存中变量的值,甚至可以劫持进程,执行恶意代码,最终获得主机的控制权。

利用Windows系统内核溢出漏洞提权是一种很通用的提权方法,攻击者通常可以使用该方法绕过系统中的所有安全限制。攻击者利用该漏洞的关键是目标系统有没有及时安装补丁,如果目标系统没有安装某一漏洞的补丁且存在该漏洞的话,攻击者就会向目标系统上传本地溢出程序,溢出Administrator权限。

系统信息收集常用命令

目标系统的名称、版本和补丁

systeminfo | findstr /L /C:OS /C:KB

主机名称和所有环境变量

主机名称:hostname 环境变量:SET

查看用户信息

查看当前用户权限:whoami 查看所有用户:net user或net1 user 查看管理员用户组:net localgroup administrators或net1 localgroup administrators 查看远程终端在线用户:query user或quser

查看远程桌面端口

#通过注册表查看RDP端口 REG query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber #通过命令行查看 获取对应的 PID 号:tasklist /svc | find "TermService" 通过 PID 号查找端口:netstat -ano | find "1044"

查看网络情况

网络配置情况:ipconfig /all 路由器信息:route print 查看 ARP 缓存:arp –a 查看网络连接:netstat –ano 查看防火墙规则,命令如下: netsh firewall show config netsh firewall show state

应用程序和服务

查看服务的进程 ID:tasklist /SVC 查看已安装驱动程序的列表:DRIVERQUERY 查看已经启动的 Windows 服务:net start 查看目录和文件权限:icacls "C:/Program Files/" 查看计划任务详情:schtasks /query /fo LIST /v 查看服务的详细配置:sc qc 服务名(TermService)

使用WMIC枚举目标信息

WMIC可以描述为一组管理Windows系统的方法和功能。我们可以把它当作API来与Windows系统进行相互交流,WMIC在渗透测试中的价值在于它不需要下载和安装,因为WMIC是Windows系统自带的功能,而且整个运行都在计算机的内存中发生,不会留下任何痕迹。

查看计算机补丁安装详情:wmic qfe list 查看系统位数:wmic cpu get addresswidth 查看服务列表:wmic service list brief 查看进程列表:wmic process list brief 获取进程路径:wmic process get description,executablepath 查看启动项列表:wmic startup list brief 查看共享:wmic share get name,path 查看已安装软件版本:wmic product get name,version 查看是否为虚拟机:wmic bios list full | find /i "vmware" 查看没有加引号的服务路径:wmic service get name,displayname,pathname,startmode | findstr /i "Auto" | findstr /i /v "C:\\Windows\\" | findstr /i /v """ 查看环境变量:wmic ENVIRONMENT 查看path环境变量:wmic ENVIRONMENT where "name='path'" get UserName,VariableValue

手动查找系统潜在漏洞

获取目标主机的一个普通用户的shell后,执行如下命令,查看目标系统上安装了那些补丁:

systeminfo 或 wmic qfe get caption,description,hotfixid,installedon

可以看到系统就装了哪些补丁,使用目标机上没有的安装的补丁号对应的EXP进行提权。

Windows不同系统提权的漏洞和相应的补丁请见

https://github.com/SecWiki/windows-kernel-exploits#%E6%BC%8F%E6%B4%9E%E5%88%97%E8%A1%A8

https://www.exploit-db.com/

在线补丁对比平台

https://i.hacking8.com/tiquan

https://www.adminxe.com/CompareSys/

自动查找系统潜在漏洞

1、Windows Exploit Suggester

Windows-Exploit-Suggester是受Linux_Exploit_Suggester的启发而开发的一款提权辅助工具。通过下载微软公开漏洞库到本地“生成日期+mssb.xls”文件,然后根据操作系统版本,跟systeminfo生成的文件进行比对。同时此工具还会告知用户针对于此漏洞是否有公开的exp和可用的Metasploit模块。

微软公开漏洞库下载地址:http://www.microsoft.com/en-gb/download/confirmation.aspx?id=36982

安装

下载地址:https://github.com/GDSSecurity/Windows-Exploit-Suggester

安装xlrd库,安装时指定xlrd库版本为1.2.0:pip2 install xlrd==1.2.0。因为xlrd2.0.1版本后不支持xlsx,只支持.xls文件,运行时会报错。

使用

更新获取漏洞库详细信息,执行完之后会生成一个后缀为“-mssb.xls”文件,该文件记录详细的漏洞信息;

python2 windows-exploit-suggester.py --update

通过各种途径方法获取目标操作系统的systeminfo,生成系统信息文件 ,并将生成的systeminfo信息的文件放在windows-exploit-suggester.py文件同一个目录下;

systeminfo > systeminfo.txt

执行python脚本文件,查看目标网站存在的未修复漏洞信息,并且给出漏洞的利用POC详细地址

python2 windows-exploit-suggester.py --database xxxxx-mssb.xls --systeminfo systeminfo.txt

2、MSF local_exploit_suggester 模块

Metasploit内置模块提供了各种可用于提权的local exploits,并会基于架构,平台(即运行的操作系统),会话类型和所需默认选项提供建议。

获取Session会话后:

background use post/multi/recon/local_exploit_suggester set session 1 exploit

3、MSF enum_patches 模块

会用metasploit中的post/windows/gather/enum_patches模块可以根据漏洞编号快速找出系统中缺少的补丁。

run post/windows/gather/enum_patches

总结

在实战查找潜在漏洞的过程中,建议手动结合自动,同时还可以使用一些相关脚本辅助

有不足的地方希望各位师傅补充。

http://www.jsqmd.com/news/868670/

相关文章:

  • git指令学习
  • 【Feed 高并发架构实战】:雪花 ID + 三级缓存 + 计数旁路设计详解
  • 运算符的种类以及基本用法
  • Linux 进程地址空间
  • HTML实现DOCX文档版题库图文考试系统(修订)
  • ikd-Tree:FAST-LIO2中的增量式地图管理结构
  • 求职用前程无忧还是智联招聘?选对平台少走弯路
  • prerender-loader完全指南:轻松实现Webpack预渲染提升首屏加载速度
  • nodejs后端服务如何接入taotoken实现异步调用多模型对话能力
  • S200驱动器报A1489故障
  • Oracle Redo日志与Undo回滚段损坏恢复实战
  • 企业直播核心功能深度指南:互动、录制与数据分析
  • 基于FPGA实现ADC366X系列芯片配置及数据采集
  • 终极指南:快速掌握Vue 3树形结构组件的完整使用技巧
  • Paper2Poster深度解析:多智能体架构如何重塑学术海报生成范式
  • 【电池】插电式混合动力汽车PHEVs性能的模拟【含Matlab源码 15452期】
  • 你的 FlashAttention 真的在跑吗?几个简单方法确认
  • Linux库制作与使用(二):ELF文件与链接过程
  • 2026年靠谱的温州卡包批量定做公司哪家好 - 品牌宣传支持者
  • Android动态换肤终极指南:5分钟掌握零入侵皮肤切换框架
  • 快速复习C语言
  • 【飞机】数据驱动的多传感器飞机健康监测系统【含Matlab源码 15551期】
  • 3大实战技巧:使用mootdx高效获取与处理通达信财务数据
  • 老木匠、临界质量与Log曲线——一个46岁架构师的AI生存哲学
  • 2026聚氨酯砂浆生产厂家哪家好?聚氨酯砂浆定制厂家技术全解析 - 栗子测评
  • ascend-transformer-boost (ATB) - Transformer推理加速实战
  • JDK6→JDK7→JDK8 重点技术更新(精简背诵版)
  • 【仅限首批200名开发者】Gemini多模态搜索性能诊断工具包(含Latency Heatmap生成器+跨模态Embedding可视化插件)
  • TranslucentTB:重构Windows任务栏视觉体验的技术架构深度解析
  • 陈,跳台记录仪 大鼠跳台记录仪 小鼠跳台记录仪