Sayfayı Yazdır | Pencereyi Kapat

Tmp güvenliði (Linux)

Nereden Yazdırıldığı: Bilginin Adresi
Kategori: Bilgisayar Güvenliði / Computer Security
Forum Adı: Güvenlik / Security Makaleleri
Forum Tanımlaması: Bilgisayarýnýzý Her Türlü Saldýrýya Karþý Korumak Ýçin Yapmanýz Gerekenler
URL: https://www.bilgineferi.com/forum/forum_posts.asp?TID=7930
Tarih: 07-07-2024 Saat 04:34


Konu: Tmp güvenliði (Linux)
Mesajı Yazan: megabros
Konu: Tmp güvenliði (Linux)
Mesaj Tarihi: 23-08-2009 Saat 12:49

Tmp dizini geçici dosyalarýn yazýldýðý bir dizindir biizm yapýcaklarýmýz dosyalarýn yazýlmasýný engellemiyecek fakat icra yetkisini önleyecektir.Yani kýsaca saldýrgan ruhlu insan gene exploitini ,bindshelini yada ne indiriyorsa gene tmp dizininize indirebilecek ama onu çalýþtýramýyacaktýr.


Hemen baþlýyalým

ideal olaný sistem kurulurken bir partion u tmp ye ayýrmaktýr ama burada yapacaðýmýzda sistemi reboot filan etmeye gerek kalmadan olucaktýr fiziksel olarak formatlamýyacaðýz diski iþleme baþlýyoruz
öncelikle 200 mb lik bir dosya oluþturuyorum bu dosya boyutu tmp dizininin boyutu olacaktýr
bu iþlemleri yapabilmek için root yetkiniz olmalýdýr
dev dizinine geçiyoruz öncelikle

Kod:
cd  dev

daha sonra dosyamýzý oluþturuyoruz 200 mb boyutunda

Kod:
dd if=/dev/zero of=tmpdir bs=1024 count=200000

burada count un karþýsýndaki 200000 boyutunu göstermektedir isteðinize göre deðiþtirin bunu
daha sonra tmpMnt dosyamýz için extended dosya sistemimizi oluþturuyoruz aþaðýdkai komutu vererek

Kod:
mke2fs /dev/tmpMnt

size þu hatayý vericektir
/dev/tmpMnt is not a block special device
Proceed, anyway? (y,n)
siz burada yes i iþaretleyip devam ediyorsunuz
ve dosya sistemimizde oluþturuldu

þimdi tmp dizinimiizn yedeðini alýyoruz

Kod:
cp -R /tmp /tmp_yedek

þimdi yeni tmp dizinimizi noexec nosuid olarak mount ediyoruz

Kod:
mount -o loop,noexec,nosuid,rw /dev/tmpMnt /tmp

gerekli izini veriyoruz tmp dizinine

Kod:
chmod 0777 /tmp

yedeklerimiz eski /tmp dizinindeki dosyalarý yeni mount ettiðimiz tmp dizinine atýyoruz

Kod:
cp -R /tmp_yedek/* /tmp/

þimdide tmp yedek dizinimizi siliyoruz

Kod:
rm -rf /tmp_yedek

fstab dosyasý file system table a karþýlýk gelir bu dosya sistem yöneticisinin iþletim sistemine iþletim sisteminin hangi dosyalara ve ne þekilde ulaþýlacaðýný gösterir
þimdi etc dizinindeki fstab dosyasýný açýyoruz

Kod:
pico -w /etc/fstab

dosyanýn en alt satýrýna aþaðýdakini ekliyoruz

Kod:
/dev/tmpMnt             /tmp                    ext2    loop,noexec,nosuid,rw  0 0

ve görünümü þu þekilde oluyor

artýk tmp dizininizde dosya icra yetkisi yoktur

tabi bir trik de var

yada bir shared library kullanmakta geri ictra yetkisi getirebilir
/lib/ld-linux.so.2 /tmp/dosya gibi

öncelikle mysql sunucusuna bir restart atýn herþeyin çalýþýp çalýþmadýðýný kontrol etin

Kod:
/etc/init.d/mysqld restart

eðer bir sorun olursaki olacaðýný hiç sanmýyorum mysql.sock dosyasýnýn sembolik baðýný yapýn bu komutla

Kod:
cd /var/tmp/
ln -fs /var/lib/mysql/mysql.sock /var/tmp/mysql.sock

baþlamýþken /dev/shm ninde güvenliðini saðlayalým
gene

Kod:
pico -w /etc/fstab

yazarak dosyayý açtýk
/dev/shm nin görüntüsü bu þekilde

Kod:
none                    /dev/shm                tmpfs   defaults        0 0

onu bu þekilde deðiþtiriyoruz

Kod:
none /dev/shm tmpfs noexec,nosuid 0 0

deðiþiklilerin olabilmesi için umount layýp sorna mount luyoruz /dev/shm yi

aþaðýdkai komutla

Kod:
umount /dev/shm
mount /dev/shm

eski /var/tmp dizinini silip linkliyoruz

Kod:
rm -rf /var/tmp/
ln -s /tmp/ /var/

þükür bitti artýk
/tmp , /var/tmp ve /dev/shm noexec nosuid olarka mount edildi biraz daha güvendesiniz

/tmp güvenliði
Yapýlmasý gereken bazi islemler:


1- Dizin erisim yetkilerini incele. Belirli kullanicilarin yetkilerini sinirla.
2- En cok kullanilan komutlarin belirledigin kullanicilarin calistirmasina izin verme(ls , wget , ps …).
3- Herhangi bir olumsuzluga karsin siteminde tripwire, samhain gibi butunluk kontrol uygulamalarini kur.
4- Uygulamalarini guncel tut.

Örnek saldýrý-1 :

[dropby23@server /tmp]$ ./date
bash: ./date: Permission denied
[dropby23@server /tmp]$ /lib/ld-linux.so.2 ./date
Thu May 8 12:20 MDT 2005
[dropby23@server /tmp]$

#pwd
/tmp
#./test.pl
-bash: ./test.pl: Permission denied
#perl /tmp/test.pl

Örnek saldýrý-2 :

ssh e800@sorubank.ege.edu.tr password:****
e800@sorubank.ege.edu.tr/$ scp /bin/poweroff.bin / e800@sorubank.ege.edu.tr:/wwwhome/

cd wwwhome
dir
poweroff /kiþisel /dersler /webödev
./poweroff

Saygýlar..



Sayfayı Yazdır | Pencereyi Kapat