Sploitus

Exploit for citrix-logchecker

kitploit · 2026-09-04

Exploit Code

MARKDOWN57 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-CERTAT-CITRIX-LOGCHECKER
# citrix-logchecker

解析 Citrix Netscaler 日志,检查是否存在 CVE-2023-4966 利用迹象

由 Otmar Lendl 编写。

# 用法:

root@kitploit:~
    
    
        ./citrix-anomaly.pl [-d] [-v] [-h] [-p file] [-a X] [logfiles]
    
        此脚本解析 Citrix Netscaler 系统日志文件,并查找可能由 CVE-2023-4966 利用导致的会话重连。
    
        参数:
    
                -d  调试模式
                -v  详细模式
                -h  帮助信息
                -a  设置聚合类型。可选值:
                        b (默认)简单 /24 聚合
                        a  按 ASN 聚合
                        p  按路由表前缀聚合
                -p  路由表转储文件路径。格式:每行 "前缀 ASN"
    

# 依赖

该脚本需要 Net::CIDR 和 Net::Patricia(若要使用 -p 功能则必装),这两个模块可能未安装在所有 Linux 服务器上。在基于 Debian 的系统上,使用以下命令安装:

root@kitploit:~
    
    
        sudo apt install libnet-cidr-perl libnet-patricia-perl
    

本仓库中包含截至 2023-10-27 的全局路由表文件,需解压使用。

日志行前缀可能因不同系统/日志守护进程而异。本代码现尝试忽略行前缀,并匹配 Citrix 提供的时间戳(该时间戳可能因区域设置而异)。

# 背景与算法

CVE-2023-4966 泄露会话 cookie,使攻击者能够重连到现有的 Citrix 会话。

该脚本查找 "SSLVPN LOGIN" 和 "SSLVPN TCPCONNSTAT" 系统日志行(建议先用 grep 过滤这些行进行预处理),并检查哪些会话缺少匹配的 LOGIN 行,或者在其生命周期内客户端 IP 地址发生了变化。

脚本将成功的初始登录视为源网络无害的迹象。如果某个源网络只有重连记录而没有初始连接记录,那么这些重连就值得怀疑。此判断并非基于纯 IP 地址,而是实现了三种聚合方案:

  * 简单的 /24 聚合
  * 根据路由表按前缀聚合
  * 根据路由表按 AS 聚合



后两种算法需要一个匹配前缀与 ASN 的文件。本仓库提供了一个示例文件。