Linux’ta Cowrie Honeypot ile Brute Force Saldırıları
SSH servisi çoğu Linux sunucunun dışa açılan kapısıdır ve yetkisiz kullanıcılar bu kapıyı ardışık parola denemeleriyle sürekli yoklar. Önceki Fail2ban yazımızda, günlük kayıtlarından başarısız denemeleri yakalayıp IP’leri otomatik ve hızlı biçimde engellemenin nasıl yapıldığını adım adım göstermiştik. Fakat yalnızca trafiği kesmek, hangi kullanıcı adlarının hedef alındığını, hangi parola kalıplarının denendiğini ve denemelerin hangi saatlerde yoğunlaştığını görmemize imkân vermez. Bu eksikliği gidermek için devreye alınan honeypot ortamı, saldırıları güvenli bir alanda toplar, her adımı kayda geçirir ve savunma kurallarını gerçek verilere göre geliştirmemizi sağlar.
Fail2ban ile İlk Savunma
Fail2ban, logları izleyip belirlediğiniz eşik aşıldığında başarısız oturum denemelerini otomatik olarak engeller. SSH servisinde yoğun parola denemelerini filtreleyerek saldırgan IP’leri hızla yasaklar ve ilk savunma katmanını oluşturur. Daha fazla ayrıntı için Linux Sunucular için Fail2ban Yapılandırması yazımıza göz atabilirsiniz.
Cowrie; Saldırganı izler ve kayda alır
Bu ikili sayesinde sadece anlık koruma sağlamaz, aynı zamanda gelecekteki saldırılara hazırlık için veri toplarsınız.
Fail2ban; Saldırıyı durdurur
Honeypot ve Cowrie Honeypot Nedir?
Honeypot, saldırganı üzerine çekmek için sahte bir servis çalıştıran, gerçek sistemi korurken yapılan hareketleri kayda alan bir güvenlik yapısıdır. Bu sayede kullanılan yöntemler incelenir ve savunma adımları daha sağlıklı planlanır.
Cowrie, özellikle SSH ve Telnet trafiğini taklit eden açık kaynaklı bir honeypot yazılımıdır. Sahte bir SSH hizmeti sunar. Saldırgan oturum açtığını sanırken aslında kapalı ve kontrol edilen bir ortamda işlem yapar. Denenen kullanıcı adları, parolalar ve verilen komutlar ayrıntılı olarak kaydedilir.

- En çok denenen kullanıcı adları (
root,admin,testgibi) - En popüler parola listeleri
- Kullanılan kötü amaçlı komutlar
- Sisteme yüklenmeye çalışılan zararlı dosyalar
Ubuntu Üzerinde Cowrie Honeypot Kurulumu
SSH Servisini Yüksek Porta Taşıma
Cowrie’nin verimli çalışabilmesi için gerçek SSH servisini farklı bir porta almamız gerekir.
sudo nano /etc/ssh/sshd_config
# Port değerini değiştirin:
Port 22222
Servisi yeniden başlatalım. İşlem sonunda SSH 22222 portunda çalışıyor olacak. Honeypot ise 22 portundan gelen trafiği alacak.
sudo systemctl restart ssh
sudo systemctl status ssh
Cowrie Kullanıcısı Oluşturma
Öncelikle sistemimizi güncelleyelim ve yeni bir kullanıcı oluşturalım
sudo apt update
sudo apt install git python-virtualenv libssl-dev libffi-dev build-essential libpython3-dev authbind -y
sudo adduser --disabled-password cowrie
su - cowrie
Cowrie’nin İndirilmesi ve Sanal Ortam Hazırlığı
git clone https://github.com/cowrie/cowrie
cd cowrie
virtualenv cowrie-env
source cowrie-env/bin/activate
pip install --upgrade pip
pip install -r requirements.txt
Yapılandırma
Cowrie varsayılan ayarlarla cowrie.cfg.dist dosyası ile gelir. Bu dosyayı kopyalayıp kendimize ait konfigürasyon dosyası oluşturuyoruz
cp cowrie.cfg.dist cowrie.cfg
nano cowrie.cfg
Burada yapabileceğiniz bazı özelleştirmeler şunlar olabilir
- Honeypot’un görünecek hostname’ini değiştirmek
- Telnet desteğini açmak
- Loglama ve sahte dosya indirme seçeneklerini ayarlamak
Cowrie’yi Başlatma
bin/cowrie start
Ardından dinlediği portları kontrol edelim. Eğer her şey doğruysa honeypot artık SSH (2222) ve Telnet (2223) portlarını dinliyor olacaktır.
netstat -an | grep 2222
Trafiği Honeypot’a Yönlendirme
22 ve 23 portlarına gelen bağlantıları honeypot portlarına yönlendirmek için iptables kullanılır. Böylece artık saldırganlar doğrudan honeypot’a düşecek.
sudo iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --to-port 2222
sudo iptables -t nat -A PREROUTING -p tcp --dport 23 -j REDIRECT --to-port 2223
İlk Loglar
Cowrie’nin loglarını izlemek için:
tail -f cowrie/var/log/cowrie/cowrie.log
Kısa sürede saldırı girişimlerinin kaydedilmeye başladığını göreceksiniz. Denenen parolalar, çalıştırılan komutlar hatta yüklenmek istenen zararlı dosyalar detaylı biçimde loglara düşer.
Cowrie’de Sahte Dosya Tuzakları
Cowrie’nin öne çıkan özelliklerinden biri, saldırganların ilgisini çekecek sahte dosyalar oluşturmaya izin vermesidir. Bu dosyalar, gerçek sistemlerde kritik veriler varmış gibi görünür ancak tamamen yapaydır. Amaç, saldırganın dikkatini çekmek ve tüm adımlarını kayıt altına almaktır.
Örneğin honeypot üzerinde şu dosyalar kullanılabiliriz.
passwords.txt→ sahte kullanıcı adı–parola listesi içerir.db_backup.sql→ boş ya da anlamsız satırlardan oluşan sahte bir veritabanı yedeği sunar.secret_keys.pem→ özel anahtar dosyası gibi görünür ancak geçersiz içerik barındırır.
Saldırgan sisteme sızdığında ilk işi genelde “hangi değerli dosyalar var” diye bakmaktır. Bu tür dosyaları gördüğünde hemen cat passwords.txt ya da scp db_backup.sql gibi komutlar dener. Cowrie ise bu girişimlerin hepsini loglara yazar.
Sık Sorulan Sorular
Cowrie kurulumu sonrası Permission denied hatası alıyorum
Cowrie’yi doğrudan root olarak çalıştırmak güvenli değildir. Bunun yerine ayrı bir cowrie kullanıcısı oluşturmalı ve honeypot’u bu kullanıcı üzerinden çalıştırmalısınız.
virtualenv veya Python bağımlılıklarında hata alıyorum
Çoğu zaman eksik paketler nedeniyle bu hata çıkar. Kurulumdan önce apt install python-virtualenv libssl-dev libffi-dev build-essential gibi temel bağımlılıkların kurulu olduğundan emin olun.
Saldırılar gelmiyor, Cowrie çalışmıyor mu?
Cowrie arka planda sessizce bekler. İnternete açık 22 ve 23 numaralı portları honeypot’a yönlendirmediyseniz saldırılar kaydedilmez. Honeypot’u aktif bir VPS üzerinde çalıştırmanız gerekir.
Cowrie logları çok hızlı büyüyor
Yoğun saldırı trafiğinde log dosyaları hızla büyüyebilir. Bu durumda logrotate yapılandırması kullanarak günlüklerin otomatik sıkıştırılmasını ve arşivlenmesini sağlayabilirsiniz.
Cowrie’yi Windows üzerinde çalıştırabilir miyim?
Cowrie Linux tabanlı bir honeypot’tur. Windows ortamı için benzer işlevi görecek araç olarak Wail2ban veya özel RDP honeypot çözümleri tercih edilebilir.
Cowrie saldırıları anında engelliyor mu?
Cowrie’nin amacı saldırganın davranışlarını kaydetmek ve analiz etmektir. Anlık engelleme için Fail2ban gibi araçlarla entegre edilmesi gerekir.
