İçeriğe geç

Linux için Cowrie Honeypot ile BruteForce Saldırı Önleme

Kategori: Güvenlik & Siber Güvenlik, ve Linux Sistemleri

Brute-force saldırıları, SSH servisleri başta olmak üzere Linux sunucuların en sık maruz kaldığı tehditlerden biridir. Daha önce ele aldığımız Fail2ban yazısında, bu saldırıların loglar üzerinden nasıl tespit edilip otomatik olarak engellenebileceğini incelemiştik. Ancak saldırganların yöntemlerini anlamak ve davranışlarını yakından analiz etmek için yalnızca engelleme yeterli değildir. İşte burada honeypot teknolojisi devreye girer.

Fail2ban ile İlk Savunma

Fail2ban, log dosyalarını izleyerek belirli bir eşik değerini aşan başarısız oturum açma girişimlerini otomatik olarak engeller. SSH servisinde brute-force girişimlerini filtreleyip saldırgan IP’leri banlayarak ilk savunma katmanını sağlar. Linux Sunucularda Fail2ban Kurulumu yazımıza göz atabilirsiniz.

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ırganları cezbetmek için sahte bir servis çalıştıran ve böylece gerçek sisteme zarar vermelerini engellerken saldırganların davranışlarını kayıt altına alan bir güvenlik mekanizmasıdır. Bu sistem, siber saldırı yöntemlerini analiz etmeye ve savunma stratejilerini geliştirmeye yardımcı olur.

Cowrie ise özellikle SSH ve Telnet protokollerini taklit eden açık kaynaklı bir honeypot yazılımıdır. Sahte bir SSH servisi çalıştırır. Saldırgan sisteme girdiğini sanırken aslında bir sanal kum havuzunda hareket eder. Girdiği kullanıcı adları, parolalar ve çalıştırdığı komutlar satır satır 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.

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir