[LinuxFocus-icon]
Ev  |  Eri�imd�zeni  |  ��indekiler  |  Arama

Duyumlar | Belgelikler | Ba�lant�lar | LF Nedir
Bu makalenin farkl� dillerde bulundu�u adresler: English  Castellano  Deutsch  Francais  Italiano  Nederlands  Portugues  Russian  Turkce  

convert to palmConvert to GutenPalm
or to PalmDoc

[Photo of the Author]
taraf�ndan Georges Tarbouriech

Yazar hakk�nda:

Georges uzun zamand�r UNIX kullan�c�s�d�r. G�venlik konusunun, bu y�zy�l�n en �nemli f�rsatlar�ndan oldu�unu d���nmektedir.


��erik:

 

Portlar�n koruyucusu Psionic Portsentry 1.1

[illustration]

�eviri : Erdal MUTLU

�zet:

Psionic portsentry, Abacus projesinde yer alan ara�lardan (portsentry'nin yan�nda logchek ve hostsentry de var) biridir. Bu bir Sald�r� Belirleme Sistemidir (SBS, �ngilizcesi : Intrusion Detection System) ve port taramalar�na kar�� aktif savunma i�in tasarlanm��t�r. Mac OS X dahil bir�ok UNIX sisteminde �al��maktad�r. SBS'lerinin en �nemli �zelli�i, sald�r� giri�imlerini sistem y�neticisine bildirmeleridir. Portsentry yap�lan sald�r�ya cevap verebilme �zelli�i sayesinde daha da ileriye gitmektedir. Bu �nemli arac�n en son s�r�m�n� (1.1) http://www.psionic.com adresinde bulabilirsiniz. Bu arada, 1.0 s�r�m�, ana Linux da��t�c�lar�ndan Debian, RedHat ... ile birlikte gelmektedir.



 

Portsentry neden kullan�l�r?

Ge�en y�zy�lda bilgisayar a�lar� inan�lmaz h�zl� bir b�y�me g�stermi�tir. Ama�, �zerlerinde farkl� i�letim sistemleri �al��t�ran bilgisayarlar� haberle�tirmek idi. Dolay�s�yla, sistemlere �zg� a� haberle�me sistemleri, yava� yava� TCP/IP ile de�i�tirilmi�tir. Gerisini de �nternet yapt�! Bug�n bir�ok a� haberle�me sistemi TCP/IP'ye dayanmaktad�r, TCP/IP ise, port kullan�m�na. K�sacas� portlar, istemci veya sunucu uygulamalar�yla ili�kilendirilmektedir. Sunucu, istemciden ba�lant� iste�i gelene dek ilgili portu dinlemektedir (beklemektedir). Yukar�da da s�z� edilen istemci/sunucu mimarisine g�re �al��an uygulamalar �e�itli protlar ile ili�kilendirilmi�tir. UNIX sistemlerinde bu ili�ki /etc/services dosyas�nda belirtilmi�tir. Yani, hangi uygulama i�in, hangi port ayr�lm��t�r herkes taraf�ndan bilinmektedir. Herkes bildi�ine g�re, sald�rganlar daha da iyi bilmektedir! E�er, portlar� kap�lar gibi d���necek olursak, a��k (dinlenilen) port, kilitlenmemi� kap� gibidir. Bir eve nas�l girer siniz? Genellikle kap�dan (Tabii siz pencereyi tercih edebilirsiniz, bu size kalm��!) Dolay�s�yla, siyah �apkal�lar (sald�rganlar) da bilgisayar�n�za girmek i�in ayn� yolu izlemektedir...
Riskleri azaltmak i�in yap�lacak ilk i�, m�mk�n oldu�u say�da portu kapatmak olmal�d�r, yani bu portlarda �al��an uygulamalar� durdurmak. Ne kadar az, o kadar iyi. Ancak, a� �zerinde �al��an bir bilgisayar�n her portunu kapatamazs�n�z, haberle�me olmaz o zaman, yani biraz sa�ma olur!
Aktif �al��an uygulama say�s� nas�l azalt�l�r veya portlar nas�l kapat�l�r konular� bu makalenin kapsam� d�i�nda kalmaktad�r. Konuyla ilgili ve bilgisayar ile a� g�venli�ini sa�lamak i�in, Linux Documentation Project adresine ba�lanarak veya LinuxFocus makaleleri �zerinde arama yaparak (s�zgelimi Bastille Linux veya Security tools olabilir) bir�ok yaz� bulabilirsiniz. Linux i�in Bastille Linux �artt�r.
��te buradan portsentry gelmektedir. Portsentry portlar� izleyebilir ve e�er, isterseniz bunlara yap�lacak ba�lant�lar� engelleyebilir. Portsentry'de �e�itli �al��ma seviyeleri vard�r ve baz�lar� i�letim sistemlerine �zg� olmaktad�r. ��letim sistemlerinin buradaki anlam� Linux dur.
Portsentry, sahip oldu�unuz Linux �ekirde�inin s�r�m�ne g�re, ipfwadm, ipchains ve iptables gibi paket filtrelemesi yapan uygulamalardan da faydalanabilir. Bu ayn� zamanda ba�ka uygulamalara sahip di�er UNIX'ler i�in de ge�erlidir (bu konuya daha sonra d�nece�iz). Portsentry'nin en �nemli �zelli�i "otomatik engelleme" dir.
Bunun nas�l ba�ar�yor? ��te cevab�!

 

Portsentry nas�l y�klenir?

Portsentry �ok k���k bir tarball (tar ile ar�ivlenmi� ve gzip ile s�k��t�r�lm��) dosyas� halinde gelmektedir. Dosyay� a�t�ktan sonra, kaynak dosyalar�n�n� ve README dosyalar�n� elde ediyorsunuz. A��kt�r ki, b�t�n bu dosyalar� okumak gerekir. G�venlikten s�zetti�imize g�re, PGP dosyalar�n� (imza ve anahtar) �nternetten indirmeyi unutmay�n�z.
Y�kleme i�lemi her zamanki gibi : make sizinsisteminiz ve make install komutlar�n� s�ras�yla �al��t�rarak yap�lmaktad�r. Ancak, y�klemeden �nce haz�lr�k yapman�z gerekir. Yani, portsentry'nin kaynakyaz�l�m dosyalar�n� okuman�z ve portsentry.conf, portsentry_config ve Makefile dosyalar�n� kendi gereksinimlerinize g�re de�i�tirip denetlemeniz gerekir.
Portsentry'yi etkin bir �ekilde kullanabilmek i�in TCPWrappers sahip olman�z gerekmektedir. En az�ndan, paket filtreleme uygulamalar�yla olan kullan�m� daha iyi olmaktad�r. Tabii e�er, Linux kullan�yorsan�z, bunlar�n hepsine sahipsiniz demektir. Di�er Unix'lerden ne haber?
Portsentry'yi farkl� ortamlarda test etti�imiz i�in, gereksinimlerden s�zedelim.
MAC OS X, L,nux'ta oldu�u gibi her�ey vard�r ( TCPWrappers, ipfw (BSD s�r�m�). Dolay�s�yla, sadece "make osx" komutunu �al��t�rman�z yeterlidir.
Solaris 2.6 (SPARC) da TCPWrappers yoktur. Bunu ftp://ftp.porcupine.org/pub/security adresinden elde edebilirsiniz. IPFilter uygulamas�n� da ftp://coombs.anu.edu.au/pub/net/ip-filter/ip-fil3.4.9.tar.gz adresinden elde edebilirsiniz (ancak Solaris derleyicisine sahip iseniz !!!).
Irix 6.5'de de TCPWrappers yoktur. Bunu paketlenmi� olarak http://freeware.sgi.com/index-by-alpha.html adresinden elde edebilirsiniz. Paket filtreleme uygulamas� olarak Irix ile birlikte gelen, ancak ba�ta y�klenmemi� olan ipfilterd vard�r.
Son olarak, �al��an bir vsnprintf() bulamazsan�z NeXSTEP i�in portsentry uygulamas�n� y�kleyemezsiniz. Ben bulamad�m da!
Tekrar vurgulamak gerekirse, y�klemeden �nce portsentry'yi yap�land�rmak gerekir. Bu size kalm�� tabii, ancak, di�er her�eyden �nce �al��ma felsefesini anlamak daha iyidir. Ancak bu da se�im meselesi!

 

Portsentry nas�l �al��maktad�r?

�yi, te�ekk�r ederim!
Ciddi olmak gerekirse, portsentry yap�land�rma dosyalar�ndan ayarlanmaktad�r. En �nemlisi de portsentry.conf dosyas�d�r. Sald�r�ya kar�� nas�l tepki verilece�ini burada belirtiyorsunuz.
Bu dosya ile ilgili bir �ey yapmadan �nce, �e�itli �al��ma seviyelerini anlamak gerekir.
�al��t�rma s�ras�nda verdi�iniz parametreye g�re portsentry'ni, alt� farkl� �al��ma �ekline sahiptir.
- �lki "-tcp" dir ve en basitidir. Bu se�enekle, yap�land�rma dosyas�n�n "port configuration" b�l�m�nde yer alan TCP portlar�n� dinleyecektir. Port sayisindaki �st limit 64 t�r.
- �kincisi "-udp" dir ve ilkinin TCP portlar�na yapt���n� bu UDP portlar�na uygulamaktad�r.
- ���nc�s� "-stcp" dir ("s" anlam� stealth dir). Bu ve bundan sonraki se�enekler sadece Linux sistemlerinde vard�r. "-stcp" se�ene�i ile portsentry, gelen paketleri izlemek i�in socket kullanmaktad�r, yani portlar do�rudan (bind) kullan�lmamaktad�r.
- D�rd�nc�s� "-sudp" dir ve �nceki se�ene�inin TCP i�in yapt���n�, UDP portlar� i�in uygulamaktad�r.
- Be�inci ve alt�nc�lar� s�ras�yla "-atcp" ve "-audp" dir. Bunlar en etkin ("a" advanced, geli�mi� anlam�na gelmektedir) se�eneklerdir. Bu se�enekler ile portsentry dinlemekte oldu�u TCP ve UDP, e�er ikisi de se�ili ise, portlar�n�n bir listesini ��kartmaktad�r ve portsentry.ignore dosyas�nda yer almayan t�m bilgisayarlar�n buraya ba�lanmalar�n� engellemektedir.
Bunlar, ugulama ile gelen README dosyalar�nda daha g�zel bir �ekilde anlat�lm��t�r. Kaynakyaz�l�mlar� yeniden yazmaya �al��mak ile, tekerle�i tekrar ke�if etmeyelim. README dosyalar� mutlaka okunmal�d�r.

Portsentry nas�l tepki vermektedir?

Portsentry loglar yaratmaktad�r. E�er, loglar� okumayan sistem y�neticilerinden iseniz, portsentry'yi logcheck ile birlikte kullanabilirsiniz. Bu durumda, portsentry, sald�r� giri�imi oldu�u zaman size e-ileti g�ndermektedir.
TCPWrappers ile kullan�lmas� amac�yla, portsentry sald�r�da bulunan bilgisayar� /etc/hosts.deny dosyas�na yazabilir.
Yerel bilgisayar�n�z, a� �zerinden gelen trafi�i �al��mayan (�l�) bir bilgisayara y�nlendirebilir.
Son olarak da yerel bilgisayar�n�z, paket filtreleme uygulamas� kullanarak gelen paketleri iptal (kesebilir) edebilir.
Portsentry'nin felsefesi hakk�nda biraz daha fazla bilgi sahibi oldu�unuza g�re, kendi portsentry.conf dosyan�z� yazabilirsiniz.
- Yap�land�r�m dosyas�n�n ilk b�l�m� portlar ile ilgilidir. �zlemek istedi�iniz portlar� buradan se�iyorsunuz. Unutmay�n ki, Linux'da geli�mi� se�ene�i kullan�yorsan�z, bunlar dikkate al�nmayacakt�r. �zleyece�iniz portlar� dikkatli se�iniz (S�zgelimi, 6000 portu se�meyin, bu X Pencere Sisteminin kulland��� bir porttur.).
- Bir sonraki b�l�m, geli�mi� belirleme se�enekleri ile ilgilidir. Benimsenmi� de�er olarak, ister TCP ve isterse UDP olsun, 1024 alt�ndat�m portlar izlenmektedir. Burada istemedi�iniz portlar� ��kartabilirsiniz. A� �zerinde Windos bilgisayarlar� varsa, yanl�� alarmlardan ka��nmak istiyorsan�z ve de �ok fazla log olu�turmak istemiyorsan�z, bu ayr� bir �nem kazanmaktad�r. S�zgelimi, 111 nolu portu kullan�yorsan�z, bu portmap uygulamas�n� kullan�yorsunuz anlam�na gelir, ve portsentry.ignore dosyas�na a� �zerindeki bilgisayarlar� yazmad�ysan�z, bu ��lg�nl�k olur, ��nk� portmap NFS (A� Dosya Sistemi) gibi RPC (Uzaktan Fonksiyon veya Prosed�r �a��rma) sunucusu demektir, ben Sizi uyarm�� oldum. Yani, NFS, UNIX bilgisayarlar�nda pek g�venli de�ildir, Windos lardan hi� s�zetmeyelim bile.
��te �imdi konu d��� olan k�s�m gelmektedir: "Windos" olarak yaz�d���m �ey bir yaz�m hatas� de�ildir. Windows, DOS (Buradaki D dirty = kirli anlam�ndad�r.) �zerine kurulmu� bir masa�st� sistemidir ve bu bana bir karakter daha az yazmam� sa�l�yor (Ne kadar tembelim, �yle de�il mi?). Biraz konu d��� oldu ama, pardon.
- Dosya yap�land�rma b�l�m� (configuration files), portsentry'nin kulland��� dosyalar ile ilgilidir ve dikkate al�nmayacak bilgisayarlar� tan�mlamak i�in kullan�l�r. E�er, benimsenmi� olan y�kleme yap�yorsan�z, buras�na dokunman�z gerekmiyor.
- Miscellaneous config b�l�m�nde DNS (isim sunucusu) kullan�m�n� a��p kapatabilirsiniz.
- Cevap verme se�enekleri (response options) b�l�m�n yap�land�rman�n kalbini olu�turmaktad�r. Burada portsentry'nin nas�l tepki verece�ini tan�ml�yorsunuz.
�lk �nce, dikkate al�nmayacaklar gelmektedir. Taramalar� kesebilir, kesmeyebilir veya d��ar�dan ba�ka bir komut �al��t�rabilirsiniz.
Daha sonra, dropping routes b�l�m� gelmektedir. Burada portsentry'ye gelenleri nas�l kesebilece�inizi veya bilgisayaran�zda kulland���n�z paket filtreleme uygulamas�ndan nas�l yararlanaca��n� s�yl�yorsunuz. Gereksiniminize uyan birini, ama sadece birini se�iniz!
- TCPWrappers b�l�m�nde, /etc/hosts.deny dosyas�na yaz�p yazmayaca��n� se�iyorsunuz.
- D�� komutlar b�l�m�nde, bir bilgisayar ba�lant� kurdu�unda hangi komutu �al��t�raca��n�z se�iyorsunuz.
- Tarama teti�i (scan trigger) b�l�m�nde tepki s�resini ayarlayabiliyorsunuz. Benimsenmi� de�er "0" d�r ve ilk ba�lant� denemesi yap�l�r yap�lmaz hemen alarm vermektedir.
- En son b�l�mde ise, sald�r� denemesi durumunda, mesaj (banner) g�stermek ama�l�d�r. Bu -stcp ve -sudp (stealth) ile birlikte �al��mamaktad�r.
Buras�n� tamamlad�ktan sonra hemen hemen i�i bitirmi� olmaktas�n�z. Yine de, yanl�� alarmlardan ve �ok fazla say�da log olu�turulmas�ndan ka��nmak i�in, portsentry.ignore dosyas�na tekrar bir bak�n�z. Buraya yerel a� adresininizi a� maskesi bitlerini belirterek ekleyebilir veya birka� bilgisayar�n IP adreslerini yazabilirsiniz.
��te bu kadar! Art�k "make sizinsisteminiz" ve "make install" komutlar�n� �al��t�rabilirsiniz. Y�kleme beti�i, dizinler ve dosyalar i�in k�s�tl� eri�im haklar� vererek, gerekeni yapmaktad�r. Bundan sonra portsentry'yi istedi�iniz se�enekler ile �al��t�rmak yeterlidir. Neler olup bitti�ini ��renmek i�in loglar�n�za bak�n. E�er, her�ey yolunda gitti ise, portsentry �al��m��t�r ve bilgisayar�n�z� daha g�venli bir hale getirmi�tir.

 

Bundan sonra ne olmaktad�r?

Nmap (Nmap ile ilgili daha fazla bilgi bu adreste bulabilirsiniz.) gibi uygulamalar kullanarak, g�venli�ini yeni sa�lad���n�z bir bilgisayara sald�r� yap�yormu� gibi bir deneme yapabilirsiniz. Alaca��n�z cevap ise, a�a��daki gibidir:

tarama yap�lan bilgisayarda
portsentry �al��maktad�r

��te, bu bilgisayar sald�rgana pek bilgi vermemektedir!
Genellikle tarama yapt���n�z bilgisayar i�in bu deneme size, i�letim sisteminin s�r�m�n� ve a��k olan portlar� verecektir. Bu bilgiler sald�rgan�n i�ine yarayacakt�r, ��nk� o neye nas�l sald�raca��n� iyi bilmektedir. Tarama teti�i de�eri 0 olan portsentry geli�mi� seviyede �al��t�r�yorsan�z, sald�r�y� hemen kesebilirsiniz (durdurabilirsiniz). 1 de�eri ile ve normal �al��ma seviyesi kullan�yorsan�z, sald�rgan, i�letim sistemi bilgisi ile birlikte a��k olan portlar�n listesini elde etmi� olur. Ama bu durumda, a��k olan bir porta ba�lanmaya �al��t���nda ba�ar�l� olmayacakt�r. Portsentry ilk denemeden sonra, portu kapatm��t�r. Basit, ama etkili, �yle de�il mi!
E�er, TCPWrappers kullan�yorsan�z, sald�rgan�n IP adresi /etc/hosts.deny dosyas�na yaz�lm��t�r. E�er, size gelen paketleri �al��mayan bir bilgisayara y�nlendirmek isterseniz, portsentry yinde de etkilidir, ancak UPD paketleri ile gelen sald�r�lardan tam olarak kurtulmu� say�lmazs�n�z.
E�er, paket filtreleme uygulamas� kullan�yorsan�z, sald�rgandan gelen paketleri engelleyebilirsiniz.
Tabii, portsentry'nin t�m g�c�nden faydalanman�n en iyi yolu budur.
Yine de, Linux alt�ndaki geli�mi� se�ene�i ideal olan�d�r. Bu, portsentry'nin di�er i�letim sistemlerinde iyi �al��mad��� anlam�na gelmemektedir, sadece biraz daha az "etkilidir", ger�ekte b�yle de�il tabii!
Daha iyi anlayabilmek i�in, farkl� i�letim sistemlerinde ve fakrli �al��ma seviyelerinde �al��an portsentry'nin log dosyalar�na bir bak�n�z. Onlar her�eyi s�ylemektedir!
Kullan�lan �al��ma seviyelerine g�re, loglar yanl�� alarm verebilmektedir. Bilginin kalitesini y�kseltmek i�in, yap�land�r�m dosyalar� �zerinde �al��man�z gerekecektir. Birka� denemeden sonra, istedi�inizi tam olarak elde edebilirsiniz.

 

Portsentry'siz ya�ayabilir misiniz?

Kesinlikle HAYIR! Bedeva veya paral� olan bir �ok SBS vard�r. Baz�lar� olduk�a iyidir. http://www.snort.org adresinde elde edebilece�iniz ve herkes�e bilinen snort �rnek g�sterilebilir.
Genellikle, bu SBS pasiftir. Yani, bunlar� sadece sald�r�dan haberdar olmak i�in kullan�rs�n�z. Zaten bunun i�in tasarlanm��lard�r. S�zgelimi, snort, olduk�a karma��kt�r, ��nk�, sizden kurallar� yazman�z� istemektedir. Snort'un sanaldoku y�resinde, kurallardan olu�an bir veritaban� vard�r. Bu arada �ok fazla logtan korkmuyorsan�z, snort ile portsentry'yi birlikte �al��t�rabilirsiniz. Bu o kadar da sa�ma de�il!
Ancak, portsentry'nin g��l� yan�, aktif SBS olmas�d�r. G�sterdi�i tepki y�ntemi nefes kesicidir. Bunu bir paket filtreleme uygulamas�yla birle�tirmek olmazsa olmaz ara�lardand�r. Akl�m�za ��yle bir soru gelebilir : paket filtreleme uygulamalar� portsentry'nin kar��l��� m� yoksa, portsentry paket filtreleme uygulamalar�n kar��l��� m�d�r?
Herneyse, portsentry konusunda s�yleyebilece�imiz bir�ok �ey vard�r. S�zgelimi, UDP taramalar�n� belirlerken �ok dikkatli olmak gerekir. UDP ile ilgli sorunlar� anlayabilmek i�in kaynakyaz�l�mlar� okuyun (tekrar !). Solaris 32700 sevieyelerinde, yani �ok b�y�k numaral� TCP ve UDP portlar� kullanmaktad�r ve dolay�s�yla sorunlar yaratabilir. Bu makale, sadece giri� niteli�indedir ve hi�bir �ekilde her�eyi kapsayan bir yaz� de�ildir.
Bilgisayar g�venli�i sadece sistem y�neticilerinin d���nmesi gereken bir konu de�ildir. �nternetin bu kadar h�zl� geli�mesiyle, i�ler daha da k�t�ye gitmektedir. Yani sald�r�ya u�rama olas�l��� herg�n artmaktad�r. Sald�r�lar� hafife almay�n! Unutmamak gerekir ki, bu ara�lar sadece riskleri azaltmaktad�r ve hi�bir �ekilde %100 g�venlik sa�lamamaktad�r. G�venlik ara�lar� alan�nda daha fazla ara�t�rma yapmak i�in nedenlerden birisi de bu dur.
Psionic'de �al��an ki�iler, ticari bir ara� yaz�l�m� �zerinde �al��t�klar�n� ve bize "hayal k�r�kl���na u�ramayaca��m�z�" s�ylediler. Bekleyelim ve g�relim o zaman!
Bu arada portsentry'nin 1.1 s�r�m�n� elde edip deneyiniz. Siz de hayal k�r�kl���na u�ramayacaks�n�z. Psionic'deki ki�iler harika i� ��kartmaktad�rlar. Ayr�ca, hostsentry de denemeye ve kullanmaya de�erdir.
Harika bir zamanda ya��yoruz, �yle de�il mi?

 

Kaynaklar

G�venlik s�zkonusu oldu�unda, a�a��daki sanaldoku y�releri mutlaka ziyaret edilmelidir. Art�, buradan size daha fazla bilgi i�eren sanaldoku y�resi g�nderebilirler, onlar da daha fazla bilgi i�eren ba�ka sanaldoku y�resi g�ndermektedir ... Bir Rus s�z� ne der biliyor musunuz? Her�eyi okumak istemenizin tek sorunu, bu kadar uzun ya�ayamayabilece�inizdir !!!
http://www.linuxsecurity.com
http://www.sans.org
http://www.infosyssec.org
http://www.securityfocus.com is
http://www.cs.purdue.edu/coast/hotlist/

 

Bu yaz� i�in g�r�� bildiriminde bulunabilirsiniz

Her yaz� kendi g�r�� bildirim sayfas�na sahiptir. Bu sayfaya yorumlar�n�z� yazabilir ve di�er okuyucular�n yorumlar�na bakabilirsiniz.
 talkback page 

G�rsely�re sayfalar�n�n bak�m�, LinuxFocus Edit�rleri taraf�ndan yap�lmaktad�r
© Georges Tarbouriech, FDL
LinuxFocus.org

Buray� klikleyerek hatalar� rapor edebilir ya da yorumlar�n�z� LinuxFocus'a g�nderebilirsiniz
�eviri bilgisi:
en -> -- Georges Tarbouriech
en -> tr Erdal MUTLU

2001-08-25, generated by lfparser version 2.17