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.

{ 5 yorum var… add one }
  • Tuncay Üner 04 Kasım 2015, 16:17

    Her site için php paretmetresi olarak openbasedir ayarlanırsa buna gerek kalmaz. Öyle daha pratik. 🙂

    • cryptosam 12 Kasım 2015, 01:51

      Ah Tuncay hocam geçiyorlar bir yolunu bulup.

  • Yavuz Selim ŞAHİN 28 Kasım 2015, 21:16

    Merhabalar

    acaba bu kodların plesk panel için olanı varmıdır ya lütfen yardımcı olur musunuz

    • cryptosam 23 Şubat 2016, 05:03

      Merhaba. Maalesef 🙁

  • Cüneyt 24 Şubat 2016, 17:22

    Hocam emeğine sağlık böyle güzel bir paylaşım için teşekkür ederim.

Yazıya Yorum Yapın