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

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

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

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

工具目录

分类

查看所有分类
Loading categories
linux_mint_poc — 针对 Linux Mint 18.3-19.1 yelp URI 处理器中命令注入漏洞的 PoC 与补丁。演示了根本原因、利用方法及缓解措施。 | Kitploit
工具/GitHubGitHub/b1ack0wl/linux_mint_poc
漏洞分析漏洞利用学习与教育
GitHubb1ack0wl/linux_mint_poc

linux_mint_poc

针对 Linux Mint 18.3-19.1 yelp URI 处理器中命令注入漏洞的 PoC 与补丁。演示了根本原因、利用方法及缓解措施。

查看仓库
53107年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Linux Mint 18.3-19.1 'yelp' 命令注入漏洞

根本原因

URI 处理器 help://、ghelp:// 和 man:// 定义在文件 /usr/share/applications/yelp.desktop 中,当这些 URI 处理器中的任何一个被调用时,该文件将通过 Exec=yelp %u 执行 /usr/local/bin/yelp。

文件 /usr/local/bin/yelp 是一个简单的 python 脚本,用于解析传入的 URI 处理器请求。该脚本首先搜索子字符串 "gnome-help" 和 "ubuntu-help",如果它没有找到其中任何一个子字符串,那么它将在不使用引号包裹参数的情况下执行 /usr/local/bin/yelp。

/usr/local/bin/yelp 的内容:

root@kitploit:~
#!/usr/bin/python

import os
import sys

if (len(sys.argv) > 1):
    args = ' '.join(sys.argv[1:])
    if ('gnome-help' in args) and not os.path.exists('/usr/share/help/C/gnome-help'):
        os.system ("xdg-open http://www.linuxmint.com/documentation.php &")
    elif ('ubuntu-help' in args) and not os.path.exists('/usr/share/help/C/ubuntu-help'):
        os.system ("xdg-open http://www.linuxmint.com/documentation.php &")
    else:
        os.system ("/usr/bin/yelp %s" % args)  # uh oh
else:
    os.system ('/usr/bin/yelp')

从 PoC 到 Shell

利用过程需要一点创造力,因为 Google Chrome 会对空格 \x20 字符、花括号 {}、加号 + 字符、反引号 ` 字符以及其他一些字符进行 URI 编码。由于 ${IFS} 无法使用,我们发现使用 $IFS$() 也同样有效,因为 $() 语句可以防止 $IFS 环境变量与其他 ASCII 字符拼接,从而意外变成 $IFSaddedword 之类的字符串。

缓解措施

概述

文件 yelp.patch 将易受攻击的语句从 os.system ("/usr/bin/yelp %s" % args) 修改为 os.system ("/usr/bin/yelp %s" % quote(args)),后者利用了 shlex 库中的 quote() 方法(https://docs.python.org/3/library/shlex.html#shlex.quote)。

修补说明

可以修补 yelp,也可以将其移除。

修补 yelp

  • 安装 patch:sudo apt install patch
  • 修补 yelp 脚本:sudo patch /usr/local/bin/yelp yelp.patch

移除 yelp 及其关联的 URI 处理器

  • 移除 URI 处理器:sudo rm /usr/share/applications/yelp.desktop
  • 移除 yelp python 脚本:sudo rm /usr/local/bin/yelp

[b1ack0wl]

下载工具