cetinkayaismail/talaria-privesc

GitHub: cetinkayaismail/talaria-privesc

一款用 Go 编写的高性能 Linux 本地提权侦察工具,通过并发扫描和智能关联引擎在数秒内完成全面系统审计并精准定位可利用的攻击路径。

Stars: 2 | Forks: 0

Talaria Logo

# Talaria - Linux 提权扫描器 [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Go 版本](https://img.shields.io/badge/Go-1.20%2B-blue.svg)](https://golang.org/) [![平台](https://img.shields.io/badge/Platform-Linux-lightgrey.svg)](https://en.wikipedia.org/wiki/Linux) 开发和维护一个 LPE 框架需要针对最新的内核补丁和安全配置进行持续的研究和测试(如果我遗漏了新的攻击向量,请提交一个 PR)。如果 Talaria 帮助你拿下了目标机器,在烦人的实验环境中提升了权限,或者你仅仅是欣赏这款工具。 **Talaria** 是一款专为 **Linux 提权** 设计的高性能且高度优化的侦察工具。它使用 Go 语言编写,专为需要快速、可靠且低噪声替代方案(相较于传统扫描器)的网络安全专业人员和 CTF 爱好者而设计。 通过利用原生系统调用和并发的 goroutine,Talaria 可以在几秒钟内(通常不到 10 秒)完成完整的系统审计,积极过滤误报以突出显示最关键的攻击向量。有时它甚至能展示直接的攻击链!!! ### 实战测试 在 **TryHackMe Common Linux Privesc** 房间中的扫描结果示例可以在 [screenshots/](screenshots/) 目录中找到。这些截图展示了 Talaria 如何以极低的噪声识别复杂的 SUID 向量、NFS 错误配置以及 root 定时任务。如果你愿意,完全可以禁用 secrets(机密信息)模块,但说实话,在某些情况下它真的非常有用,只是会产生一点噪声。 ## 主要特性 - **智能引擎:** 独特的关联引擎,可通过**智能路径解析**检测链式攻击向量(例如:将可写脚本与 root 定时任务结合)。 - **低噪声与高信噪比:** 高级过滤(包括符号链接解析)可将误报减少 98%,专注于可利用的攻击路径。 - **极致性能:** 超过 20 个模块全部使用优化的 goroutine 并行运行,可在几秒钟内完成整体扫描。 - **独立二进制文件:** 零依赖。一次编译,即可在任意 Linux 环境中运行。我建议使用 `make build` 命令,因为它能生成一个无 C 库依赖问题的静态二进制文件。 - **注重隐蔽性:** 在安全评估期间提供可选的抖动和延迟功能,以实现行为规避。老实说,这在大多数情况下并不是那么重要,但有总比没有好。 ## 扫描模块(总计 20+) Talaria 审计广泛的本地提权(LPE)向量: ### 核心提权 - **SUID/SGID 二进制文件:** 针对 GTFOBins 和危险组所有权(例如:`shadow`、`disk`)进行精心筛选的扫描。现已包含针对解释器的**库劫持检测**。 - **Linux Capabilities:** 深度递归扫描可利用的 capabilities(`cap_setuid`、`cap_sys_admin` 等)。 - **Sudo 分析:** 解析 `sudo -l`、`NOPASSWD` 条目以及 `env_keep`,以查找 `LD_PRELOAD` 注入路径。 ### 持久化与计划任务 - **Cron 任务与 Systemd Timers:** 检测配置错误的计划任务以及**通配符注入**漏洞(`tar *`、`chown *`)。 - **深度服务分析:** 递归检查由 root 服务(`ExecStart`)执行的二进制文件和脚本的可写性。 ### 文件系统与权限 - **可写敏感文件:** 查找全局可写的系统文件(`/etc/passwd`、`/etc/sudoers.d/`)。 - **PATH 劫持:** 扫描当前环境 `$PATH` 中的可写目录或点条目(dot entries)。 - **SSH 密钥审计:** 识别可写的 `.ssh` 目录和可读的私钥,用于横向移动。 ### 容器与运行时 - **容器逃逸:** 检测 Docker/LXC/K8s 环境,并检查是否处于 `--privileged` 模式或暴露了 Docker socket。 - **进程分析:** 扫描敏感参数、调试工具(GDB/Strace)以及未受限制的 `ptrace_scope`。 ## 开始使用 ### 前置条件 - [Go](https://golang.org/doc/install)(1.20 或更高版本)。编译好的二进制文件不需要任何依赖,此要求仅用于代码的开发。 ### 安装 ``` # Clone 仓库 git clone https://github.com/cetinkayaismail/talaria-privesc.git # 进入目录 cd talaria # 构建 standalone binary make build ``` ### 使用方法 ``` # 以默认设置运行所有 modules ./talaria -scan all # 运行特定的 modules(例如,suid 和 secrets) ./talaria -scan "suid,secrets" -path /home/user # 保存 output 到 report 文件 ./talaria -scan all -o report.txt -format text ``` 有关详细的命令说明,请查看 [USAGE.md](USAGE.md)。 ## ⚖️ 免责声明 Talaria 仅用于教育目的、授权的安全审计和渗透测试。请勿在未获得明确测试授权的系统上使用此工具。作者对因使用(或滥用)此工具造成的任何误用或损害不承担任何责任。 ## 📄 许可证 基于 MIT 许可证发布。有关更多信息,请参见 `LICENSE`。
标签:Cronjob, EVTX分析, Golang, Go语言, LPE, NFS, SUID, 加密, 协议分析, 子域名枚举, 安全编程, 密码提取, 对称加密, 并发, 扫描, 提权, 提权脚本, 数据展示, 日志审计, 本地提权, 权限提升, 漏洞扫描器, 程序破解, 系统安全, 红队, 网络安全, 网络安全审计, 自动化审计, 防御绕过, 隐私保护