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
ssh-honeypot-research — Medium-interaction SSH honeypot deployment capturing real-world brute-force traffic, malware drops, and attacker behavior. Includes TTY session recording, credential harvesting, and threat intelligence cross-referenced against 159 sources. | Kitploit
Tools/GitHubGitHub/liranzoz/ssh-honeypot-research
Network SecurityMalware AnalysisDigital ForensicsThreat IntelligencePapers & ResearchLearning & EducationIncident Response
GitHubliranzoz/ssh-honeypot-research

ssh-honeypot-research

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →

Medium-interaction SSH honeypot deployment capturing real-world brute-force traffic, malware drops, and attacker behavior. Includes TTY session recording, credential harvesting, and threat intelligence cross-referenced against 159 sources.

View Repository
163 months agoNot yet reviewed
Share

🍯 SSH Honeypot — Research & Threat Intelligence

A medium-interaction Cowrie honeypot deployed on a rented public-internet Linux VPS, designed to attract, log and analyse real-world SSH brute-force traffic. Over an 8-day capture window the sensor recorded 37,477 sessions from 1,582 unique attacker IPs, capturing 794 malware drops — every observation cross-referenced against 159 public industry and academic sources.

👉 Open the live interactive report

📂 Project Folders

📊 Live Report — interactive HTML📜 Logs/ — daily Cowrie logs📸 ScreenShots/ — session captures
🏗️ docs/ — architecture diagram🗂️ Reports/ — report source🐛 Open the rendered analysis

🏗️ Architecture

The honeypot lives on a rented Linux VPS. Public-internet tcp/22 is silently NAT-redirected into Cowrie on tcp/2222, while the real OpenSSH daemon is moved to a non-standard management port (tcp/49222) reachable only with a private key. To an attacker the box looks like a vulnerable port-22 Debian server; to the admin it's fully reachable on a separate, quiet port.

SSH Honeypot two-lane architecture

Two swimlanes through the same box: the attacker lane (top) traverses iptables NAT and lands in Cowrie, which writes to TTY logs and a quarantine folder. The admin lane (bottom) passes straight through iptables to the real OpenSSH daemon on tcp/49222. The two paths never touch.

Vector source: docs/architecture.svg

Hardening layers

LayerWhat it doesWhy
Unprivileged user cowrieHoneypot runs as a system user with no sudo, no host shellWorst-case sandbox compromise gains zero host access
Python virtual environmentPinned, isolated dependency tree (Twisted, cryptography, etc.)No conflict with system Python; clean teardown and rebuild
Simulated filesystemAttacker writes go to an ephemeral Cowrie overlayThe real disk is never touched, even on long sessions
iptables NAT redirectPREROUTING rule rewrites inbound tcp/22 to tcp/2222Cowrie binds a high port (no root needed); deception stays invisible
Management port migrationReal sshd moved to tcp/49222, key-only authenticationBrute-force noise against the real daemon drops to zero

📸 Screenshots

1. Live attacker session — captured in real time

Live attacker session

Live capture: multiple attacker IPs hitting tcp/2222 simultaneously — CONNECTs (cyan), LOGIN SUCCESS / FAILED, and the credential pairs they tried. Same minute, multiple campaigns.

2. Commands captured during one session

Captured commands

One attacker's full post-login command sequence — chattr -ia ~/.ssh, the mdrfckr key implant, cat /proc/cpuinfo, uname, lscpu, crontab -l. Captured verbatim with millisecond timestamps and a session ID.

3. Sample of the daily Cowrie log

Daily Cowrie log sample

Aggregated view across many sessions: connects (cyan), failed logins (red), successful logins (green), commands (yellow), file transfers (purple). The repeating mdrfckr key implant + chattr -ia .ssh pattern is visible across distinct attacker IPs — same campaign, different bots.

4. Captured payloads — file transfers & malware drops

Captured payloads — Redtail multi-arch drop

The signature RedTail XMRig cryptominer drop: six files in one session from 213.209.159.158 — clean.sh and setup.sh installers, plus four architecture-specific ELF binaries (redtail.arm7, redtail.arm8, redtail.i686, redtail.x86_64) covering routers, IoT, legacy x86 and servers in one drop.


⚙️ Key Features

  • TTY session recording — full keystroke capture, replayable session-by-session
  • Command auditing — every ls, wget, cat /proc/cpuinfo logged with high-resolution timestamps
  • Malware capture — files attackers wget / curl are intercepted and quarantined under downloads/
  • Credential harvesting — every username/password pair attempted is recorded
  • Isolation hardening — unprivileged user, venv, simulated FS, NAT redirect, port migration

📊 What the data showed (8-day window)

MetricValue
Total sessions37,477
Unique attacker IPs1,582
Failed logins14,968
Logins to shell22,720
Shell commands captured21,968
Malware drops794
External sources cross-referenced159

🌍 Top source regions: Hong Kong (Alibaba Cloud) · China (ChinaNet) · Bulgaria (IT7 Networks) · Russia (Aeza Group, sanctioned)

🐛 Top campaigns identified: RedTail XMRig cryptominer · the mdrfckr SSH-key implant family · Mirai-derived IoT recruiters · the 3245gs5662d34 SSH-spreader signature

Full analysis with interactive charts, MITRE ATT&CK mapping, and per-finding sourced discussion → Open the live report.


🚀 Deployment

Step 1 · Create the unprivileged cowrie user

root@kitploit:~
sudo useradd -m -s /bin/bash cowrie
root@kitploit:~
sudo passwd -l cowrie

Step 2 · Clone Cowrie and set up the Python virtual environment

root@kitploit:~
su - cowrie
root@kitploit:~
git clone https://github.com/cowrie/cowrie.git
root@kitploit:~
cd cowrie
root@kitploit:~
python3 -m venv cowrie-env
root@kitploit:~
source cowrie-env/bin/activate
root@kitploit:~
pip install --upgrade pip
root@kitploit:~
pip install -r requirements.txt

Step 3 · Move real sshd off port 22 (before adding any NAT rule)

root@kitploit:~
sudo sed -i 's/^#\?Port .*/Port 49222/' /etc/ssh/sshd_config
root@kitploit:~
sudo systemctl restart sshd

⚠️ Verify from a second terminal that you can still log in on port 49222 before continuing.

Step 4 · Add the iptables NAT redirect (public 22 → Cowrie 2222)

root@kitploit:~
sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222
root@kitploit:~
sudo iptables-save | sudo tee /etc/iptables/rules.v4

Step 5 · Start Cowrie

root@kitploit:~
bin/cowrie start

📁 Project Structure

root@kitploit:~
SSH-Honeypot-Research/
├── README.md                       ← you are here
├── docs/
│   ├── architecture.png            ← architecture diagram (rendered)
│   └── architecture.svg            ← architecture diagram (vector source)
├── Logs/                           ← daily Cowrie logs (cowrie_YYYY-MM-DD.log)
│   ├── cowrie_2026-05-08.log
│   ├── cowrie_2026-05-09.log
│   └── ... (8 days total)
├── Reports/
│   └── honeypot_report.html        ← full interactive report
└── ScreenShots/                    ← session captures, log snapshots, payloads
    ├── live session.png            ← multi-IP CONNECT/LOGIN stream
    ├── CMD1.png · CMD2.png         ← captured post-login command sequences
    ├── sh1.png · sh2.png           ← aggregated daily log views
    └── RedTail Payload.png         ← signature 4-arch cryptominer drop

📚 References

Cross-referenced against 159 industry and academic sources — the full annotated list is in the live report's References section. Key academic anchors:

  • Antonakakis et al., "Understanding the Mirai Botnet" — USENIX Security 2017
  • Pastrana & Suarez-Tangil, "A First Look at the Crypto-Mining Malware Ecosystem" — ACM IMC 2019
  • "Attacks Come to Those Who Wait — Long-Term Observations in an SSH Honeynet" — IMC 2025
  • MITRE ATT&CK — T1110.001 · T1098.004 · T1496

⚠️ Disclaimer

This honeypot was deployed for defensive research purposes only. All captured artefacts (IPs, payloads, credentials) are observed passively from inbound unsolicited traffic. The honeypot does not initiate scanning, does not retaliate, and does not host any service beyond the sandboxed Cowrie listener. Reuse the configuration responsibly and within applicable law.


Built with Cowrie. 🛠️

Download Tool