SUID/SGID位检测与全盘扫描:GTFONow二进制权限漏洞检测代码实现
SUID/SGID位检测与全盘扫描GTFONow二进制权限漏洞检测代码实现【免费下载链接】GTFONowAutomatic privilege escalation for misconfigured capabilities, sudo and suid binaries using GTFOBins.项目地址: https://gitcode.com/gh_mirrors/gt/GTFONowGTFONow 是一款运行在 Linux/Unix 系统上的SUID/SGID 二进制权限漏洞检测工具它以 GTFOBins 漏洞库为引擎自动扫描系统中的 SUID、SGID 位、Linux Capabilities 和 sudo 配置找出可被利用的本地提权点并一键给出可用的利用载荷。对刚接触渗透测试的新手来说它把「找漏洞 查利用方法 执行利用」这三步合并成了一条命令。本文带你读懂它最核心的SUID/SGID 位检测逻辑和全盘扫描实现。先搞懂什么是 SUID / SGID 位Linux 文件权限除了 rwx还有两个特殊位权限位符号八进制作用风险SUIDs4000执行该程序时临时获得文件属主的权限属主是 root 时可被利用获得 root shellSGIDs2000执行该程序时临时获得文件属组的权限可获得高权限组的身份用ls -l观察时它们会显示为-rwsr-xr-x 1 root root ... /usr/bin/find # SUID 位属主 root -rwxr-sr-x 1 root root ... /usr/bin/uuencode # SGID 位 为什么危险普通用户执行 SUID root 的find时进程会以 root 身份运行。而find恰好支持-exec参数——于是一个普通用户就能执行任意 root 命令。这就是 SUID 权限位检测与利用的经典场景。GTFONow 的两级 SUID/SGID 检测流程GTFONow 对 SUID/SGID 的检测分为「快速扫描」和「全盘扫描」两级流程图如下┌─────────────────────────────────────────────────────────────┐ │ 第 1 级默认PATH 快速扫描 check_suid_bins() │ │ 遍历内置 GTFOBins 候选表suid_bins→ 在 PATH 中定位 │ │ → check_suid_sgid() 按位检测 S_ISUID / S_ISGID │ │ → 命中则匹配 GTFOBins 利用载荷 │ ├─────────────────────────────────────────────────────────────┤ │ 第 2 级--level 2全盘扫描 check_suid_full_disk() │ │ find / -perm -4000 → 全盘找出所有 SUID 文件 │ │ find / -perm -2000 → 全盘找出所有 SGID 文件 │ │ → 跳过 PATH 内已检测项 → 逐个查 GTFOBins 库匹配载荷 │ └─────────────────────────────────────────────────────────────┘ ↓ 结果排序root 属主 / Shell 类载荷优先 → 交互式选择或自动利用核心检测函数check_suid_sgid()所有检测最终都汇聚到一个 30 行的函数check_suid_sgid()。它的原理非常朴素——用os.stat()拿到文件权限位再做两次**按位与bitwise AND**判断is_suid bool(mode stat.S_ISUID) # 检测 SUID 位4000 is_sgid bool(mode stat.S_ISGID) # 检测 SGID 位2000如果命中函数还会顺带查出文件的属主名和属组名通过pwd.getpwuid()/grp.getgrgid()并返回形如{SUID: True, SGID: False, Owner: root, Group: root}的结构。这个属主信息很关键SUID 位只有当属主是root时才最有价值后续的结果展示和排序都会用到它。快速扫描在 PATH 中「按名单排查」check_suid_bins() 的思路是「名单制」程序内置了一张由 GTFOBins 持续更新的候选表suid_bins约 100 多个已知可利用的二进制见 gtfonow/gtfonow.py#L2095。函数逐一遍历这张表用get_binary_path()相当于 Python 版which在PATH环境变量里定位二进制调check_suid_sgid()判断 SUID/SGID 位是否被设置命中则把该二进制的全部 GTFOBins 载荷展开记入提权候选列表。之所以只查 PATH是因为普通用户只能直接执行 PATH 中的程序——PATH 之外的 SUID 文件虽然也可能有用但默认扫描不必全盘遍历保证速度。全盘扫描find 两条命令找出「漏网之鱼」加上--level 2后check_suid_full_disk() 接手更彻底的搜索核心就是两条经典 find 命令find / -perm -4000 -type f 2/dev/null # 全系统找 SUID 文件 find / -perm -2000 -type f 2/dev/null # 全系统找 SGID 文件实现细节见 gtfonow/gtfonow.py#L4010-L4015。随后它做三件事去重跳过已经在 PATH 中检测过的二进制is_binary_in_path()判断匹配把文件名对照suid_bins载荷表命中则附上利用载荷未命中的会打印提示「发现 SUID/SGID 文件但暂无已知 GTFOBins 利用」提醒人工关注记录同样通过check_suid_sgid()补全属主/属组信息。 全盘扫描的价值很多系统会把特殊工具放在/opt、/usr/local等非 PATH 目录只有全盘扫描才能抓到这些「漏网之鱼」。运行效果与结果排序获取源码并运行git clone https://gitcode.com/gh_mirrors/gt/GTFONow cd GTFONow python gtfonow/gtfonow.py --level 2 -v # level 2 全盘扫描程序结束时会打印编号列表例如[1] find Shell、[2] dd Arbitrary write。排序逻辑在 order_priv_escs()属主为 root 的 SUID 二进制排在最前user_priority 0载荷类型按 Shell 任意读 任意写 权限变更 排序。也就是说列表第一项基本就是「最容易拿到 root」的路径。常用参数参数说明--level 1/21 为快速扫描默认2 增加全盘 SUID 与 Capability 扫描--risk 1/21 为安全操作默认2 允许修改文件等激进操作CTF 场景常用--auto跳过交互自动执行利用-v输出 DEBUG 级日志方便学习检测过程动手验证看看测试是怎么写的如果想直观理解检测函数最好的入口是 gtfonow/tests/test_privesc.py 中的test_check_suid_bins()第 14 行它断言扫描结果里包含{Binary: find, Path: /usr/bin/find, Type: SUID/SGID Binary, SUID: root, ...}这样的记录——正是check_suid_bins()的真实输出形态。小结位检测原理os.stat()取权限位mode stat.S_ISUID / S_ISGID两次按位与一行代码判定 SUID/SGID 位。两级扫描默认按 GTFOBins 名单快速扫 PATH--level 2用find / -perm -4000/-2000全盘扫描补齐 PATH 之外的目标。结果优先root 属主 Shell 类载荷排最前新手直接选第一项即可。项目亮点单文件、纯标准库、兼容 Python 2/3 与任意 Unix 架构可无文件化直接管道执行。⚠️ 安全提醒GTFONow 设计用于 CTF 与获得授权的渗透测试pentest环境请勿对未授权系统运行--risk 2会修改目标文件务必确认你理解它的行为。【免费下载链接】GTFONowAutomatic privilege escalation for misconfigured capabilities, sudo and suid binaries using GTFOBins.项目地址: https://gitcode.com/gh_mirrors/gt/GTFONow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

从使用者到贡献者:Reveil 系统与安全分析工具社区和 CI 发布完全指南

从使用者到贡献者:Reveil 系统与安全分析工具社区和 CI 发布完全指南

从使用者到贡献者:Reveil 系统与安全分析工具社区和 CI 发布完全指南 【免费下载链接】Reveil Bringing back the most advanced system and security analysis tool. 项目地址: https://gitcode.com/gh_mirrors/re/Reveil Reveil 是一款运行在 iOS 上的开源…

2026/8/25 17:24:40 阅读更多 →
建站综合评估:几款主流产品表现分析

建站综合评估:几款主流产品表现分析

引言随着数字化转型加速,企业及个人对建站系统的需求日益多样化。从基础官网搭建到复杂商城运营,不同场景对功能、体验、扩展性提出了差异化要求。本文基于公开资料与用户反馈,选取林琼科技及其他同类产品进行综合分析,从功能特性…

2026/8/25 17:24:40 阅读更多 →
05-本地化部署的优势:Ollama + Weaviate保护数据隐私

05-本地化部署的优势:Ollama + Weaviate保护数据隐私

本地化部署的优势:Ollama Weaviate保护数据隐私 前言 在数据隐私日益重要的今天,企业对AI应用的本地化部署需求越来越强烈。本文将深入探讨本地化部署的优势,以及如何使用Ollama和Weaviate构建完全私有的AI系统。 适合读者: 企…

2026/8/25 17:23:39 阅读更多 →

最新新闻

LunaTranslator 游戏翻译工具:三步跑通视觉小说的日文实时翻译

LunaTranslator 游戏翻译工具:三步跑通视觉小说的日文实时翻译

LunaTranslator 游戏翻译工具:三步跑通视觉小说的日文实时翻译 【免费下载链接】LunaTranslator 视觉小说翻译器 / Visual Novel Translator 项目地址: https://gitcode.com/GitHub_Trending/lu/LunaTranslator LunaTranslator 是一款开源免费的游戏翻译工具…

2026/8/25 18:02:10 阅读更多 →
MySQL日志系统深度解析:redo log与binlog的协同机制与实战应用

MySQL日志系统深度解析:redo log与binlog的协同机制与实战应用

1. 面试官为什么会“老脸一红”?这个话题挺有意思的,我猜很多朋友看到这个标题,第一反应是“面试官被问倒了”?其实恰恰相反。在数据库,尤其是MySQL的面试里,redo log和binlog几乎是必考题,但能…

2026/8/25 18:02:10 阅读更多 →
tstock Docker部署完整指南:容器化安装与AlphaVantage API Key安全注入

tstock Docker部署完整指南:容器化安装与AlphaVantage API Key安全注入

tstock Docker部署完整指南:容器化安装与AlphaVantage API Key安全注入 【免费下载链接】tstock 📈A command line tool to view stock charts in the terminal. 项目地址: https://gitcode.com/gh_mirrors/ts/tstock 📈 tstock 是一款…

2026/8/25 18:02:10 阅读更多 →
AI 驱动的全域内容中台:统一口径下的内容资产与规划体系

AI 驱动的全域内容中台:统一口径下的内容资产与规划体系

【摘要】生成式搜索将信源治理边界从官网扩展到全域多平台后,口径漂移、资产碎片化、版本同步滞后成为制约矩阵效能的核心卡点。以官网实体库为真值源头,构建全局口径复用、AI 智能规划、统一标签管理、版本全链路管控的中台能力体系,可实现跨…

2026/8/25 18:02:10 阅读更多 →
如何一键打开老 Flash 游戏:Ruffle 完整指南

如何一键打开老 Flash 游戏:Ruffle 完整指南

如何一键打开老 Flash 游戏:Ruffle 完整指南 【免费下载链接】ruffle A Flash Player emulator written in Rust 项目地址: https://gitcode.com/GitHub_Trending/ru/ruffle Ruffle 是一款用 Rust 编写的 Flash 播放器,把浏览器里已经打不开的 SW…

2026/8/25 18:02:10 阅读更多 →
为什么你的 Go 代码被评审吐槽?effective-go 命名规范完整指南(变量名、Initialisms、包名一次讲透)

为什么你的 Go 代码被评审吐槽?effective-go 命名规范完整指南(变量名、Initialisms、包名一次讲透)

为什么你的 Go 代码被评审吐槽?effective-go 命名规范完整指南(变量名、Initialisms、包名一次讲透) 【免费下载链接】effective-go a list of effective go, best practices and go idiomatic 项目地址: https://gitcode.com/gh_mirrors/e…

2026/8/25 18:01:10 阅读更多 →

日新闻

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表

【题目来源】 https://www.luogu.com.cn/problem/P7912 【题目描述】 小熊的水果店里摆放着一排 n 个水果。每个水果只可能是苹果或桔子,从左到右依次用正整数 1,2,…,n 编号。连续排在一起的同一种水果称为一个“块”。小熊要把这一排水果挑到若干个果篮里&#x…

2026/8/25 0:00:34 阅读更多 →
Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG 【免费下载链接】transformers.js State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server! 项目地址: https:/…

2026/8/25 0:00:34 阅读更多 →
数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

数学建模竞赛论文写作指南:从模型构建到学术表达的核心技能

1. 项目概述:从“会做”到“会写”的竞赛核心跃迁“全国大学生数学建模竞赛”,这个名字对理工科学生来说,分量极重。每年,无数团队在三天三夜的时间里,为一个开放性问题绞尽脑汁,从建立模型、求解算法到编程…

2026/8/25 0:00:34 阅读更多 →

周新闻

[光学原理与应用-521]:对光的错误理解与纠偏

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/25 3:38:12 阅读更多 →
SIP通话转接原理与REFER方法实战解析

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/25 3:38:18 阅读更多 →
Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/25 3:38:23 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/24 20:22:44 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/25 10:31:12 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/24 11:20:22 阅读更多 →