Windows最最最常见的几种提权方法

2023-12-12 19:28

本文主要是介绍Windows最最最常见的几种提权方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

提权,提高自己在服务器中的权限,主要针对网站渗透过程中,当渗透某一网站时,通过各种漏洞提升WEBSHELL权限以夺得该服务器权限,通常提权是把普通用户的权限提升到管理员权限或者系统权限

在渗透测试过程中,拿到一个webshell之后,一般来说,我们的权限都是目标服务器中间件的权限。

这个时候就需要利用各种漏洞来提升自己的权限,从而能够获得对目标服务器的控制。

1.补丁查询法
简介
补丁一般都是为了应对计算机中存在的漏洞,为了更好的优化计算机的性能,而去使用一种安全措施。

当拿到目标应用的webshell之后,可以通过补丁查询的方法,来查看目标系统是否有未打补丁从而造成的某些安全隐患,从而可以被我们利用。

复现
第一步:执行命令 systeminfo ,将执行结果复制。

第二步:粘贴到补丁查询的网页上进行查询。

ps:http://bugs.hacking8.com/tiquan/ # 提权辅助页面

第三步:在查询的结果中,找到对应的影响系统以及补丁编号,寻找可利用工具,下载利用即可。

第四步:将工具放到目标服务器内执行即可

2.CVE-2016-3225(MS16-075)提权
简介

Windows SMB 服务器特权提升漏洞(CVE漏洞编号:CVE-2016-3225)当攻击者转发适用于在同一计算机上运行的其他服务的身份验证请求时,Microsoft 服务器消息块 (SMB) 中存在特权提升漏洞,成功利用此漏洞的攻击者可以使用提升的特权执行任意代码。

若要利用此漏洞,攻击者首先必须登录系统。

然后,攻击者可以运行一个为利用此漏洞而经特殊设计的应用程序,从而控制受影响的系统。

影响版本


复现
使用烂土豆工具进行提权

3.CVE-2014-4113 (MS14-058)提权
简介

Microsoft Windows下的 win32k.sys是Windows子系统的内核部分,是一个内核模式设备驱动程序,它包含有窗口管理器、后者控制窗口显示和管理屏幕输出等。

如果Windows内核模式驱动程序不正确地处 理内存中的对象,则存在一个特权提升漏洞。

成功利用此漏洞的攻击者可以运行内核模式中的任意代码。

攻击者随后可安装程序;查看、更改或删除数据;或者创建拥有完全管理权限的新帐户。

影响版本
所有Windows x64,包括Windows 7 和 Windows Server 2008 R2 及以下版本。

复现
使用工具Win64在目标服务器内执行即可

4.CVE-2020-0787 提权
简介

当Windows Background Intelligent Transfer Service(BITS)未能正确地处理符号链接时,存在权限提升漏洞。

成功利用此漏洞的攻击者可以覆盖导致提升状态的目标文件。要利用此漏洞,攻击者首先必须登录到系统。

然后,攻击者可以运行巧尽心思构建的应用程序,利用此漏洞并控制受影响的系统。

影响版本

Microsoft Windows 7 SP1,Windows 8.1,Windows RT 8.1,Windows 10,Windows
Server 2008 SP2,Windows Server 2008 R2 SP1,Windows Server 2012,Windows
Server 2012 R2,Windows Server 2016,Windows Server 2019,Windows
10版本1607,Windows 10版本1709,Windows 10版本1803,Windows 10版本1809,Windows
10版本1903,Windows 10版本1909,Windows Server版本1803,Windows
Server版本1903,Windows Server版本1909。

复现
需要登录目标服务器后,再运行工具BitsArbitraryFileMoveExploit

5.本地dll劫持提权
简介

通过劫持一个重要的系统函数,执行任意代码。

由于webshell提权,一般来说只要放到有网络行为的程序目录下就可以。

最好是有自升级功能的,例如杀毒软件,输入法等,输入法目录一般权限较低,比较好利用。

复现
第一步:用火绒剑分析进程执行时加载了哪些dll

第二步:用MSF生成dll文件,并且设置监听

第三步:用MSF生成的dll替换掉分析出来的dll文件

第四步:打开应用,接受到反弹

6.mysql UDF提权
简介

在mysql 中可以使用自定义函数进行提权,udf(user defined function)用户自定义函数,对于自定义的函数,在mysql5.1版本以后就需要放在插件插件目录 /lib/plugin ,文件后缀是dll,c语言编写。(sys_eval())

利用条件:

1.MySQL数据库没有开启安全模式。

2.已知的数据库账号具有对MySQL数据库insert和delete的权限,最好是root最高权限。3. 有写入到数据库安装目录的权限。

复现
第一步:使用语句查询plugin插件目录

第二步:将编译好的函数文件放到目标的plugin插件目录里面,这里我采用16进制写进去。

select 0x7f454c···· into dumpfile ‘/www/server/mysql/lib/plugin/woaini.so’

第三步:生成函数

create function sys_eval returns string soname ‘woaini.so’;

第四步:利用mysql去使用自定义函数,来完成命令执行

第五步:结果是16进制的,所以可以解密出来。

免费领取安全学习资料包!

渗透工具

技术文档、书籍

 

面试题

帮助你在面试中脱颖而出

视频

基础到进阶

环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等

 

应急响应笔记

学习路线

 

这篇关于Windows最最最常见的几种提权方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/485685

相关文章

Android 12解决push framework.jar无法开机的方法小结

《Android12解决pushframework.jar无法开机的方法小结》:本文主要介绍在Android12中解决pushframework.jar无法开机的方法,包括编译指令、框架层和s... 目录1. android 编译指令1.1 framework层的编译指令1.2 替换framework.ja

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

Android实现定时任务的几种方式汇总(附源码)

《Android实现定时任务的几种方式汇总(附源码)》在Android应用中,定时任务(ScheduledTask)的需求几乎无处不在:从定时刷新数据、定时备份、定时推送通知,到夜间静默下载、循环执行... 目录一、项目介绍1. 背景与意义二、相关基础知识与系统约束三、方案一:Handler.postDel

在.NET平台使用C#为PDF添加各种类型的表单域的方法

《在.NET平台使用C#为PDF添加各种类型的表单域的方法》在日常办公系统开发中,涉及PDF处理相关的开发时,生成可填写的PDF表单是一种常见需求,与静态PDF不同,带有**表单域的文档支持用户直接在... 目录引言使用 PdfTextBoxField 添加文本输入域使用 PdfComboBoxField

SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法

《SQLyog中DELIMITER执行存储过程时出现前置缩进问题的解决方法》在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为,本文给大家介绍了详... 目录问题根源正确写法示例永久解决方案为什么命令行不受影响?最佳实践建议问题根源SQLyog的语句分

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

windows和Linux使用命令行计算文件的MD5值

《windows和Linux使用命令行计算文件的MD5值》在Windows和Linux系统中,您可以使用命令行(终端或命令提示符)来计算文件的MD5值,文章介绍了在Windows和Linux/macO... 目录在Windows上:在linux或MACOS上:总结在Windows上:可以使用certuti

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义