Kategori arşivi: Siber Güvenlik

Linux ve windows sistemler için temel güvenlik önlemleri ile birlikte gelişmiş güvenlik önemlemleri alma ve optimizasyon hakkında türkçe yazılar ve daha fazlası

Kippo SSH Honeypot ile Linux Server Güvenliği

Birinin sizin sunucunuza erişmeye çalıştığını nasıl anlarsınız? genel olarak loglara bakarsınız ancak bu uygulama onu bile yapmamanızı sağlayacak python ile yazılmış bu yazılım saldırganı sitenizden uzak tutmaya yetecek gibi gözüküyor.

Özelliklerine gelecek olursak

  • Sahte dosya sistemi oluşturarak ekleme ve silme işlemlerini asıl sistemi etkilemesini engelleyebilirsiniz /aynı debian 5 kurulumu gibi sahte dosya sistemi kurarsınız
  • Sahte dosya içerikleri eklemenize imkan sağlar /etc/passwd gibi yada /etc gibi dosyaları koruyabilirsiniz.
  • Oturumlarda yapılan tüm işlemler gerçek zamanlı olarak kayıt altına alınırlar
  • Sadece wget ile indirilebilecek biçimde dosyalar kayıt eder
  • Gerçek SSH ye bağlandığını sanan saldırgan sitenizi kurcalamaya başlayacak ancak başarılı olamayacaktır.

Kippo yazarından

“By running kippo, you’re virtually mooning the attackers. Just like in real life, doing something like that, you better know really well how to defend yourself!”

kippogorsel1

fazla uzatmadan olayımıza geçelim öncelikle ben bu testleri ubuntu da yapıyorum.

sudo apt-get install python-dev openssl python-openssl python-pyasn1 python-twisted

bu kurulum internet ve sistem hızına göre değişecek 22 ye yakın bileşen kurulduktan sonra ssh portumuzu değiştirmeye geldi sıra portu rastgele sayılardan oluşan 4 haneli sayılardan yapmamız gerekiyor benim burada vereceğim örneği kullanmayınız

nano /etc/ssh/sshd_config

22 olan port numarasını ben 4698 yaptım ve ardından ssh yi yeniden başlatıyoruz.

sudo service ssh restart

hemen önce bir subversion kuralım

sudo apt-get install subversion

Kullanıcı oluşturmamız gerekiyor buradan sonraki işleri root olarak yapmamalısınız

useradd -d /home/kippo -s /bin/bash -m kippo -g sudo

kullanıcı oluşturulduktan sonra

su kippo

komutu ile kullanıcıya bağlanıyoruz.Home klasörüne cd komutu ile girişimizi yaptıktan sonra dosyayı indiriyoruz

svn checkout https://github.com/desaster/kippo ./kippo

sonra config dosyamızı düzenlememiz lazım bunun için mv komtuna ihtiyacımız var

mv kippo.cfg.dist kippo.cfg
nano kippo.cfg

dosyamızı düzenlemek için hazır hale getirdik…

ssh_port = 2222

olan yeri

ssh_port = 22

Olarak değiştiriyoruz…

ve son olarakta dosyamızı çalıştırmaya geliyor sıra…

./start.sh

komutunu verdikten sonra arkamıza yaslanıyoruz ve gelen saldırıları izliyoruz kişinin yapacak fazla bir seçeneği yok gibi gözüküyor sistemi kullanarak tam olarak neyin ne olduğunu görmeye çalışacağım…

SSHGuard Kullanarak SSH Brute Force Saldırılarını Engellemek

SSHGuard C dili ile yazılmış hızlı ve hafif bir uygulamadır günlük aktiviteleri takip ederek büyük çaptaki saldırılara karşı sisteminizi korumaya yardımcı olur.Eğer bir kişi sürekli olarak SSH üzerinden sunucuya ulaşmaya çalışır ise uygulama sizin yerinize iptables düzenlemesi yaparak saldırı alınan ip adresini engeller.Daha sonra ise saldırı durduğu zaman engellenen ip adresini serbest bırakır.

sshguardimages11

SSHGuard Kurulumu

centos 5 üzerine ben kurulumu yaptığımdan dolayı aşağıdaki adımları yaparken göz önünde bulundurunuz

rpm -ivh http://flexbox.sourceforge.net/centos/5/i386/sshguard-1.5-2.el5.i386.rpm

Diğer sistemler de kullanmak isteyenler Tıklayın

SSHGuard için iptables/Netfilter yapılandırması

SSHGuard için ipfilterde yapılandırma dosyası yoktur.yapılacak tek şey engelleme kurallarını engellemek için SSHGuarda izin vermek ve gereken ayarlamaları yapmaktır.

ipv4 için

iptables -N sshguard

ipv6 için

ip6tables -N sshguard

Girişleri güncelledikten sonra –dport özelliğini kullanarak portları da koruyabilirsiniz yada portlara erişimi tamamen kapatmak isteyebilirsiniz.

Saldırganlara karşı tüm trafiğin engellenmesi

ipv4 için

iptables -A INPUT -j sshguard

ipv6 için

ip6tables -A INPUT -j sshguard

Saldırganlara karşı SSH, FTP, POP, IMAP belirli hizmetlerin engellenmesi

ipv4 için

iptables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143 -j sshguard

ipv6 için

ip6tables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143 -j sshguard

Sonrasında kuralları kayıt edip çıkın

service iptables save
  • Mümkün olduğunda tüm SSH trafiğini sunucuya kabul etmeyin
  • Varsayılan güvenlik duvarı ayarlarını mutlaka kendinize göre düzenlemeyi unutmayın

Bir kaç iptables Örneği

SSHGuardın kötü dediği herşeyi yasaklatmak

iptables -A INPUT -j sshguard

Trafiğe açmak isterseniz

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Herşeyi Yasaklamak için
iptables -P INPUT DROP

iptables/netfilter kullanmadan SSHGuard yapılandırma

eğer detaylı bir şekilde iptables kullanmak istemezseniz aşağıdaki komutları kullanarak sshguard izinleri dışında kimsenin işlem yapamamasını sağlayabilirsiniz.

iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -N sshguard
iptables -A INPUT -j sshguard

Son olarak da kayıt ediyoruz ve işlemimiz tamamlanıyor.

service iptables save