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
CVE-2026-32746 — Proof-of-concept exploit for a pre-authentication buffer overflow in GNU InetUtils telnetd (CVE-2026-32746), including a Docker lab environment and detection script for authorized security testing. | Kitploit
Tools/GitHubGitHub/chosenonehacks/cve-2026-32746
Vulnerability AnalysisExploitationNetwork SecurityPenetration TestingLearning & EducationBinary Exploitation
GitHubchosenonehacks/cve-2026-32746

CVE-2026-32746

Proof-of-concept exploit for a pre-authentication buffer overflow in GNU InetUtils telnetd (CVE-2026-32746), including a Docker lab environment and detection script for authorized security testing.

View Repository
15 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

CVE-2026-32746 - telnetd LINEMODE SLC Buffer Overflow

Pre-authentication remote code execution via buffer overflow in GNU InetUtils telnetd's LINEMODE SLC (Set Local Characters) handler.

CVSS 3.1: 9.8 (Critical) | CWE: CWE-120, CWE-787

Overview

The add_slc() function in telnetd/slc.c appends 3 bytes per SLC triplet to a fixed 108-byte buffer (slcbuf) without bounds checking. An unauthenticated attacker can send a crafted SLC suboption with 40+ triplets (function codes > 18/NSLC) during option negotiation - before any login prompt - overflowing the buffer, corrupting the slcptr pointer in BSS, and achieving an arbitrary write when end_slc() uses the corrupted pointer.

Affected

  • GNU InetUtils telnetd through 2.7 (all versions)
  • Any telnetd derived from the BSD SLC codebase
  • Patch expected by April 1, 2026

What This PoC Does

  • ✅ Triggers the buffer overflow and crashes telnetd (confirms vulnerability)
  • ❌ Does NOT achieve code execution (no shellcode/ROP chain)

Quick Start

root@kitploit:~
# Build the vulnerable lab environment
docker compose up -d

# Detect (non-destructive)
python3 detect.py 127.0.0.1 2323

# Exploit (crashes telnetd - confirms vuln)
python3 exploit.py 127.0.0.1 2323

# Clean up
docker compose down

Lab Environment

The Docker setup runs a Debian container with inetutils-telnetd 2.4 under xinetd, exposed on port 2323. Fully isolated - nothing touches your host.

How It Works

  1. Connect to telnetd and complete initial option negotiation
  2. Client proactively sends WILL LINEMODE to trigger LINEMODE negotiation
  3. Server responds with DO LINEMODE and enters SLC suboption processing
  4. Client sends a crafted SLC suboption containing 40-60 triplets with function codes > 18 (NSLC)
  5. add_slc() queues a "not supported" reply (3 bytes) for each triplet into a 104-byte buffer
  6. After ~35 triplets, the buffer overflows, corrupting slcptr and adjacent BSS data
  7. end_slc() writes the suboption end marker via the corrupted slcptr (arbitrary write)
  8. telnetd crashes (or worse, depending on the overflow content)

Files

FileDescription
exploit.pyPoC crash/DoS exploit
DockerfileVulnerable telnetd lab
docker-compose.ymlOne-command lab setup
xinetd-telnet.confxinetd service config
detect.pyNon-destructive version detection script

Developing an RCE Chain

To go beyond DoS, you would need to:

  1. Map BSS layout (slcbuf → slcptr offset)
  2. Control the value end_slc() writes via corrupted slcptr
  3. Overwrite a GOT entry or function pointer
  4. Redirect execution to shellcode or ROP chain

References

  • Dream Advisory
  • GNU bug-inetutils Disclosure
  • The Hacker News
  • NVD

Disclaimer

This tool is provided for authorized security testing and educational purposes only. Do not use against systems you do not own or have explicit permission to test. The author is not responsible for misuse.

Credits

  • Vulnerability discovered by: Adiel Sol, Arad Inbar, Erez Cohen, Nir Somech, Ben Grinberg, Daniel Lubel (DREAM Security Research Team)

License

MIT

Download Tool