LinEnum
更多信息请访问 www.rebootuser.com
注意:导出功能目前处于实验阶段。
一般用法:
版本 0.982
- 示例:./LinEnum.sh -s -k keyword -r report -e /tmp/ -t
选项:
- -k 输入关键字
- -e 输入导出位置
- -t 包含详细(耗时)测试
- -s 提供当前用户密码以检查 sudo 权限(不安全)
- -r 输入报告名称
- -h 显示此帮助文本
无选项运行时 = 有限扫描/无输出文件
- -e 需要用户输入输出位置,例如 /tmp/export。如果该位置不存在,则会创建。
- -r 需要用户输入报告名称。报告(.txt 文件)将保存到当前工作目录。
- -t 执行详细(慢速)测试。不使用此开关时,执行默认的‘快速’扫描。
- -s 使用当前用户及其提供的密码检查 sudo 权限 - 请注意这并不安全,仅适用于 CTF 场景!
- -k 一个可选开关,用户可以在多个文件中搜索单个关键字(如下所述)。
参见 CHANGELOG.md 获取更多详细信息
LinEnum 执行的检查/任务的高级摘要:
- 内核与发行版版本信息
- 系统信息:
- 主机名
- 网络详情:
- 当前 IP
- 默认路由详情
- DNS 服务器信息
- 用户信息:
- 当前用户详情
- 最后登录的用户
- 显示已登录到主机的用户
- 列出所有用户(包括 uid/gid 信息)
- 列出 root 账户
- 提取密码策略和哈希存储方法信息
- 检查 umask 值
- 检查密码哈希是否存储在 /etc/passwd 中
- 提取‘默认’ uid(如 0, 1000, 1001 等)的完整信息
- 尝试读取受限文件,例如 /etc/shadow
- 列出当前用户的 history 文件(例如 .bash_history, .nano_history 等)
- 基本 SSH 检查
- 特权访问:
- 哪些用户最近使用过 sudo
- 判断 /etc/sudoers 是否可访问
- 判断当前用户是否可以在没有密码的情况下使用 sudo
- 已知的‘良好’逃逸二进制文件是否可通过 sudo 使用(例如 nmap, vim 等)
- root 的家目录是否可访问
- 列出 /home/ 的权限
- 环境:
- 作业/任务:
- 列出所有 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 容器中