Linux提权辅助工具
0x01 LinEnum工具介绍LinEnum 是一个高级 Bash 脚本,它从目标系统中提取了大量有用的信息,可以复制文件并进行导出,同时可以搜索包含关键字的文件。项目地址:https://github.com/rebootuser/LinEnumLinEnum 执行的检查/任务的高级摘要:内核和发行版详细信息系统信息:主机名网络详情当前IP默认路由详情DNS 服务器信息用户信息:当前用户详细信
0x01 LinEnum
工具介绍
LinEnum 是一个高级 Bash 脚本,它从目标系统中提取了大量有用的信息,可以复制文件并进行导出,同时可以搜索包含关键字的文件。
- 项目地址:https://github.com/rebootuser/LinEnum
LinEnum 执行的检查/任务的高级摘要:
内核和发行版详细信息
系统信息:
主机名
网络详情
当前IP
默认路由详情
DNS 服务器信息
用户信息:
当前用户详细信息
最后登录的用户
显示登录到主机的用户
列出所有用户,包括 uid/gid 信息
列出 root 帐户
提取密码策略和哈希存储方法信息
检查 umask 值
检查密码哈希是否存储在 /etc/passwd
提取“默认”uid 的完整详细信息,例如 0、1000、1001 等
尝试读取受限文件,即 /etc/shadow
列出当前用户历史文件(即 .bash_history、.nano_history 等)
SSH 基础检查
特权访问:
哪些用户最近使用过 sudo
确定 /etc/sudoers 是否可访问
确定当前用户是否在没有密码的情况下具有 Sudo 访问权限
是否可以通过 Sudo(即 nmap、vim 等)获得已知的“good”突破二进制文件
是否可以访问 root 的主目录
列出 /home/ 的权限
环境:
显示当前 $PATH
显示环境信息
工作/任务:
列出所有 cron 作业
找到所有全局可写的 cron 作业
找到系统其他用户拥有的 cron 作业
列出活动和非活动的 systemd 计时器
服务:
列出网络连接 (TCP & UDP)
列出正在运行的进程
查找和列出进程二进制文件和相关权限
列出 inetd.conf/xined.conf 内容和相关的二进制文件权限
列出 init.d 二进制权限
版本信息(以下):
Sudo
MYSQL
Postgres
Apache
检查用户配置
显示启用的模块
检查 htpasswd 文件
查看 www 目录
默认/弱凭据:
检查默认/弱 Postgres 帐户
检查默认/弱 MYSQL 帐户
搜索:
找到所有 SUID/GUID 文件
找到所有全局可写的 SUID/GUID 文件
找到 root 拥有的所有 SUID/GUID 文件
找到“有趣”的 SUID/GUID 文件(即 nmap、vim 等)
使用 POSIX 功能定位文件
列出所有全局可写文件
查找/列出所有可访问的 *.plan 文件并显示内容
查找/列出所有可访问的 *.rhosts 文件并显示内容
显示 NFS 服务器详细信息
找到包含在脚本运行时提供的关键字的 *.conf 和 *.log 文件
列出所有位于 /etc 的 *.conf 文件
.bak 文件搜索
查找邮件
平台/软件特定测试:
检查以确定是否在 Docker 容器中
检查主机是否安装了 Docker
检查以确定是否在 LXC 容器中
工具使用
一般用法,将LinEnum脚本执行结果保存到指定目录(/tmp/)下
# 示例:
./LinEnum.sh -r results.txt -e /tmp/ -t
# 参数:
-k 输入在收集信息的过程中需要匹配的关键字
-e 生成的文件放在哪个目录下
-t 记录测试的过程
-s 输入密码用来检测sudo权限的信息
-r 输入报告的名称
-h 显示帮助信息
执行完成后,会在LinEnum脚本同目录下生成一个报告文件(result.txt-日期)
同时也会在指定目录(/tmp/)下生成一个LinEnum的文件夹,里面保存了LinEnum脚本搜集到的文件,并对其进行分类
0x02 linux-smart-enumeration
工具介绍
这个项目的灵感来自 https://github.com/rebootuser/LinEnum 并使用了它的许多测试。与 LinEnum 不同,lse它试图从隐私的角度根据其重要性逐步公开信息。该 shell 脚本将显示有关本地 Linux 系统安全性的相关信息,有助于提升权限。
- 项目地址:https://github.com/diego-treitos/linux-smart-enumeration
工具使用
下载工具到本地
# 方法一:
wget "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh" -O lse.sh;chmod 700 lse.sh
# 方法二:
curl "https://github.com/diego-treitos/linux-smart-enumeration/releases/latest/download/lse.sh" -Lo lse.sh;chmod 700 lse.sh
该脚本执行命令有 3 个详细级别显示结果,可以控制看到的信息量。
- 默认级别0( ./lse.sh) ,可能会看到系统中非常重要的安全漏洞。
- 级别1( ./lse.sh -l1) 显示有趣的信息,可以帮助您获得隐私。
- 级别2( ./lse.sh -l2) 只会转储它收集的有关系统的所有信息。
在脚本执行结果的最后,会输出目标系统可能存在的漏洞。
0 级(默认)输出样本
1 级详细程度输出示例
2 级详细输出示例
0x03 Linux_Exploit_Suggester
工具介绍
Linux_Exploit_Suggester是一款根据Linux操作系统版本号自动查找相应提权脚本的工具,旨在帮助检测给定 Linux 内核/基于 Linux 的机器的安全缺陷。
- 项目地址:https://github.com/mzet-/linux-exploit-suggester
对于工具检测出的每个漏洞,都会计算其存在的可能性:
- Highly probable:评估的内核很可能受到影响,并且 PoC 漏洞利用很有可能不用在任何重大修改的情况下开箱即用
- Probable:漏洞利用可能会起作用,但很可能需要定制 PoC 漏洞利用以适合目标使用
- Less probable:需要额外的手动分析来验证内核是否受到影响
- Unprobable:内核极不可能受到影响(漏洞利用不会显示在工具的输出中)
工具使用
直接执行脚本即可自动查找相应的提权漏洞
./linux-exploit-suggester.sh
使用-k参数指定版本号查找相应漏洞
./Linux_Exploit_Suggester.pl -k 3.0.0
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)