Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-41651-analysis — CVE-2026-41651(Pack2TheRoot)深入分析,这是PackageKit中的一个本地权限提升漏洞。内容包括漏洞剖析、攻击链、入侵指标(IoCs)及缓解指南。 | Kitploit
工具/GitHubGitHub/kowntaewook/cve-2026-41651-analysis
权限提升漏洞分析漏洞利用论文与研究学习与教育精选资源
GitHubkowntaewook/cve-2026-41651-analysis

CVE-2026-41651-analysis

CVE-2026-41651(Pack2TheRoot)深入分析,这是PackageKit中的一个本地权限提升漏洞。内容包括漏洞剖析、攻击链、入侵指标(IoCs)及缓解指南。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
3个月前尚未审核

CVE-2026-41651 — Pack2TheRoot 分析

PackageKit 本地权限提升(TOCTOU 竞态条件)
CVSS v3.1:8.8(高危) | CWE-367 | 发布时间:2026-04-22


📌 概述

本仓库整理了针对 2026 年 4 月公开的 PackageKit 本地权限提升漏洞 CVE-2026-41651(Pack2TheRoot) 的个人分析报告及研究资料。

项目内容
CVE IDCVE-2026-41651
漏洞名称Pack2TheRoot
受影响软件PackageKit 1.0.2 ~ 1.3.4
补丁版本PackageKit 1.3.5
攻击类型本地权限提升(LPE)
发现者Deutsche Telekom Red Team

🔍 漏洞摘要

PackageKit 的 pk-transaction.c 中 3 个漏洞复合作用,导致本地非特权用户可获取 root 权限。

漏洞链

root@kitploit:~
Bug 1:调用 InstallFiles() 时无条件覆盖 cached_transaction_flags(第 4036 行)
  ↓
Bug 2:状态转换被拒绝时,污染标志未回滚而残留在内存中(第 876~881 行)
  ↓
Bug 3:pk_transaction_run() 执行时读取被污染的标志(第 2273~2277 行)
  ↓
结果:绕过 polkit 认证 → 以 root 权限安装任意软件包 → 生成 SUID bash

攻击流程

  1. 异步发送 InstallFiles(SIMULATE=0x4, dummy) → 绕过 polkit 认证
  2. 立即发送 InstallFiles(NONE=0x0, payload) → 标志污染(TOCTOU)
  3. 收到 polkit NOT_AUTHORIZED 时,软件包已安装完成
  4. 生成 /tmp/.suid_bash → 获取 euid=0(root)

🖥️ 分析环境

项目内容
PoC 复现Docker(Ubuntu 24.04.4 LTS)
IoC 采集VirtualBox(Ubuntu 22.04.5 LTS,PackageKit 1.2.5)
代码分析GitHub — PackageKit commit 2149735(存在漏洞)/ 76cfb675(补丁)

📂 文件结构

root@kitploit:~
CVE-2026-41651-analysis/
├── README.md
└── CVE-2026-41651_분석보고서.docx   # 详细分析报告

📋 入侵指标(IoC)

攻击尝试时,系统会记录以下日志模式。

root@kitploit:~
# 检测命令
journalctl -u packagekit | grep -i "assertion\|emitted\|failed"
root@kitploit:~
PackageKit[PID]: pk_backend_job_emit: assertion 'PK_IS_BACKEND_JOB(job)' failed
PackageKit[PID]: g_signal_emit_valist: assertion 'G_TYPE_CHECK_INSTANCE(instance)' failed
PackageKit[PID]: GLib-Object:CRITICAL: g_object_unref: assertion 'G_IS_OBJECT(object)' failed
PackageKit[PID]: backend job failed
PackageKit[PID]: emit transaction failed
PackageKit[PID]: daemon stop    ← 崩溃
PackageKit[PID]: daemon start   ← 自动重启
root@kitploit:~
# SUID 文件检测
find /tmp -perm -4000 -type f 2>/dev/null
# → 若存在 /tmp/.suid_bash 需立即响应

🛡️ 应对措施

应用补丁(推荐)

root@kitploit:~
# Ubuntu / Debian
sudo apt update && sudo apt upgrade packagekit

# RHEL / Fedora
sudo dnf update PackageKit

检查是否存在漏洞

root@kitploit:~
# 版本确认(1.3.4 及以下存在漏洞)
dpkg -l | grep -i packagekit          # Debian/Ubuntu
rpm -qa | grep -i PackageKit          # RHEL/Fedora

# 检查守护进程状态
systemctl status packagekit

临时缓解措施(补丁前)

root@kitploit:~
# 禁用 PackageKit
sudo systemctl disable --now packagekit

⚠️ 禁用后 GNOME Software 等 GUI 软件包管理工具将无法使用


📅 时间线


🔗 参考资料

  • CVE 官方页面
  • GitHub Security Advisory
  • Deutsche Telekom 原始公告
  • NVD 详情
  • 补丁提交(76cfb675)
  • PoC 仓库(Vozec)

⚠️ 免责声明

本仓库仅用于安全研究与学习目的。
利用漏洞及未经授权访问系统将受到法律处罚,所有测试均在本人拥有的隔离环境中进行。

下载工具
日期内容
2026-04-08Deutsche Telekom Red Team → 首次报告给 Red Hat/PackageKit
2026-04-10PackageKit 维护者受理并确认复现
2026-04-13编写非公开补丁草案
2026-04-15向 Canonical 共享漏洞信息
2026-04-19非公开通知发行版厂商
2026-04-22发布 PackageKit 1.3.5,分配 CVE,公开披露