Sunucularda dizinler arası geçişi kapatmak

cPanel sunucularda özellikle sunucu içinde çok site barınıyorsa, hosting hizmeti sağlanıyorsa en büyük şikayetlerden birinin shell atılan bir hesaptan diğer hesaplara geçilmesidir. Kısaca 1 hesaba saldırı olur ve shell atılır, sonrasında farklı sitelerin dosyalarına müdahale edilir, link eklenir vs. Alt bölümde sizlere vereceğim komutlar sizlere belirli dosyaların yazma izinlerinde değişiklikler yaparak eskisine nazaran daha iyi bir güvenlik sağlayacaktır. Alttakilerin yanısıra bir tarafdan da php.ini den safe_mode_on konuma alarak disable_functions alanlarına fonksiyonları (engellemeleri) girmeniz işinizi dahada kolaylaştıracaktır. Bunlara farklı yazılarımda değineceğim. Siz alttakileri ilk öncelik olarak uygulayın büyük ölçüde sorun çözülecektir.

Alt bölümdeki kodlar ile bir çok shell için dizinler arası geçiş kapatılabilir. Benim genelde kullandığım komutlar alttakiler. Kodlar agrasiftir. Radyo, irc kullanıyorsanız komutları girince hata alabilirsiniz. Bu nedenle irc ve radyo çalışmayan sunucularda uygulayınız.

Dizinler arası geçişi kapatmak:

  • chattr -i /usr/bin/vdir
  • chmod 700 /usr/bin/vdir
  • chattr +i /usr/bin/vdir
  • chattr -i /usr/bin/perl
  • chmod 700 /usr/bin/perl
  • chattr +i /usr/bin/perl
  • chattr -i /bin/cat
  • chmod 700 /bin/cat
  • chattr +i /bin/cat
  • chattr -i /bin/ln
  • chmod 700 /bin/ln
  • chattr +i /bin/ln
  • chattr -i /usr/bin/dir
  • chmod 700 /usr/bin/dir
  • chattr +i /usr/bin/dir
  • chattr -i /usr/bin/find
  • chmod 700 /usr/bin/find
  • chattr +i /usr/bin/find
  • chattr -i /usr/bin/tac
  • chmod 700 /usr/bin/tac
  • chattr +i /usr/bin/tac
  • chattr -i /bin/ls
  • chmod 700 /bin/ls
  • chattr +i /bin/ls

Komutları toplu olarak kopyalayıp bir kerede ssh ekranına yapıştırıp enterleyebilirsiniz. Komutları girince sunucumuzda perl kapanır. Bu nedenle kontrol panel girişlerini alttaki şekilde yapmalısınız.
Whm: siteniz.com:2086
cPanel: siteniz.com:2082
Mail: siteniz.com:2095
Yani /whm veya /mail gibi komutlarla girmeye çalıştığınızda hata verecektir. Bu durum hosting firması sahibi iseniz ve sizi rahatsız edecekse, şu komutu girerekte üsttekine göre daha az güvenli bir komut kullanabilirsiniz.

  • chattr -i /usr/bin/vdir
  • chmod 700 /usr/bin/vdir
  • chattr +i /usr/bin/vdir
  • chattr -i /usr/bin/perl
  • chmod 711 /usr/bin/perl
  • chattr +i /usr/bin/perl
  • chattr -i /bin/cat
  • chmod 700 /bin/cat
  • chattr +i /bin/cat
  • chattr -i /bin/ln
  • chmod 700 /bin/ln
  • chattr +i /bin/ln
  • chattr -i /usr/bin/dir
  • chmod 700 /usr/bin/dir
  • chattr +i /usr/bin/dir
  • chattr -i /usr/bin/find
  • chmod 700 /usr/bin/find
  • chattr +i /usr/bin/find
  • chattr -i /usr/bin/tac
  • chmod 700 /usr/bin/tac
  • chattr +i /usr/bin/tac
  • chattr -i /bin/ls
  • chmod 700 /bin/ls
  • chattr +i /bin/ls

değişen tek şey: chmod 700 /usr/bin/perl burası. 700 olan değer 711 olarak kullanıldı. Güncellemelerde de belirli hatalar alabilirsiniz. Bu nedenle apache update ya da sunucu güncellemelerinden önce üstteki kural serilerini geçici süre devre dışı bırakmalısınız.

Üstte yapılanları iptal edip eski hale dönmek için;

Apache update, cpanel update ya da yum update komutlarını çalıştırmadan alttaki komuta dönmenizi öneriyorum. Güncelleme bitince üstteki komutlardan size uygun olanı kullanabilirsiniz.

  • chmod 755 /usr/bin/vdir
  • chattr +i /usr/bin/vdir
  • chattr -i /usr/bin/perl
  • chmod 755 /usr/bin/perl
  • chattr +i /usr/bin/perl
  • chattr -i /bin/cat
  • chmod 755 /bin/cat
  • chattr +i /bin/cat
  • chattr -i /bin/ln
  • chmod 755 /bin/ln
  • chattr +i /bin/ln
  • chattr -i /usr/bin/dir
  • chmod 755 /usr/bin/dir
  • chattr +i /usr/bin/dir
  • chattr -i /usr/bin/find
  • chmod 755 /usr/bin/find
  • chattr +i /usr/bin/find
  • chattr -i /usr/bin/tac
  • chmod 755 /usr/bin/tac
  • chattr +i /usr/bin/tac
  • chattr -i /bin/ls
  • chmod 755 /bin/ls
  • chattr +i /bin/ls

Not: Sunucularınız saldırıya uğrar ya da bir veya daha fazla hesap hacklenirse üstteki anlatımları uygulamak ilk işiniz olmalı kısaca.