Linux Güvenliği İçin Cowrie Honeypot Kullanımı

Sistem yöneticileri için SSH, Linux sunucularda en çok kontrol edilmesi gereken yüzeydir çünkü yoğun parola denemeleri bu serviste birikir. Önceki yazımızda Fail2ban ile bu akışı nasıl tespit edip otomatik biçimde durdurabileceğimizi örnek komutlarla açıklamıştık. Fakat saldırganın hangi teknikleri kullandığını ve davranışının zamanla nasıl değiştiğini görmeden yalnızca engelleme katmanına güvenmek yeterli olmaz. Bu nedenle honeypot yaklaşımı devreye alınır, denemeler güvenli bir ortamda izlenir ve çıkan içgörülerle hem kurallar hem de izleme stratejileri güçlendirilir.

Fail2ban ile Temel Koruma

Fail2ban, log tabanlı eşikleri izleyerek tekrarlayan hatalı girişlerde kaynağı otomatik biçimde engeller. SSH servisinde görülen yoğun denemeleri bastırarak sistemin nefes almasını sağlar ve temel korumayı sağlar. Adım adım kurulum için Linux Sunucular için Fail2ban Kurulumu yazısını inceleyebilirsiniz.

Fail2ban: Saldırıyı durdurur.

Cowrie: Saldırganı izler ve kayıt altına alır.

Bu kombinasyon sayesinde sadece savunma yapmakla kalmaz, aynı zamanda gelecekteki saldırılara karşı önceden bilgi toplayan bir güvenlik ekibi gibi davranırsınız.

Honeypot ve Cowrie Honeypot Nedir?

Honeypot, saldırganı gerçek hizmet varmış gibi karşılayan, ancak izolasyon içinde çalışan ve tüm hareketleri kaydeden bir güvenlik mekanizmasıdır. Bu yaklaşım, saldırı davranışını görmeyi ve savunmayı veriye göre güncellemeyi sağlar.
Cowrie , SSH ve Telnet için tasarlanmış açık kaynak bir honeypot yazılımıdır. Sahte bir SSH uç noktası barındırır. Saldırgan sisteme girdiğini sansa da işlemler kontrollü bir alanda tutulur. Denenen kullanıcı adları, parolalar ve komutlar ayrıntısıyla kaydedilir.

  • En çok denenen kullanıcı adları (root, admin, test gibi)
  • 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.

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.

Yorum yapın