Cuma, Mayıs 18, 2012

OSSIM / OSSEC maceralarım -1


Bazen çok ağır konuşmak geliyor içimden bu açık kaynak yazılımlar için. Şöyle ağız dolusu küfür edesim var bazen kaybettiğim zaman ve süreli işlerde kullanmak zorunda bırakıldığım açık kaynak yazılımların yetersiz belgelendirmesine. :)


Bakmayın siz, şimdi öyle diyorum ama sorunumu çözdüğüm ve rahatladığım için. Yoksa bütçe eksikliği veya türlü nedenlerle tıkandığımda her zaman açık kaynak yazılımlar kurtarıcım oldu. Allah eksikliğini göstermesin diyeyim.


Bu aralar, özel bir nedeni olmasa da evdeki sanal test ortamımda OSSIM / OSSEC ile uğraşmaya başladım. 


Bu işten elde etmeyi umduğum kazançlar şunlar ;


- Zayıflık yönetimi, raporlaması
- Değişiklik raporlama (HIDS)
- Syslog yönetimi ve yorumlaması
- Log korelasyonu


OSSIM'in community edition'ı ile çalışıyorum. Yüklemesi ve ilk kurulum adımları son derece basit, sorunsuz geçti.


Zayıflık kontrolü testlerinde de sorun yaşamadım. Bir kaç tane kontrol görevi oluşturdum ve test ortamımdaki Windows, Linux, Unix sunucularını her gün zayıflık kontrolünden geçiriyorum. Bu çalışmanın sonuçlarını ilerideki yazılarımda paylaşacağım.


Ama bugün esas küfür etmek istediğim kısım, OSSEC :)


OSSEC'e karş hep özel bir ilgim oldu. Başarılı bulduğum bir HIDS yazılımı. Detaylarına şimdilik girmiyorum. Ancak Solaris 10 için ajan derleme işlerini halledene dek göbeğim çatladı. Bugün bu konuda şikayetlerimi dinleyeceksiniz.


Adımlar :


- Özel kurulmuş (full olmayan) bir x86 Solaris 10 sunucusunda OSSEC paketini açarak kurmayı denedim. "Make ve gcc yok bu makinede ! " diyerek kabul etmedi. Eh , bir yere kadar kabul edilebilir bir şey. Kimse prod sunucusunda gcc paketlerini istemez ama geçici yükleriz, sonra da işi bitince kaldırırız.
- OpenCSW'den gcc3 paket setini yükledim. (Ama kaldırmak konusunda pek umutlu değilim. CSW organizasyonu bile kaldırma prosesi için "teoride" diyor. Peki yükledik. OSSEC ? Hayır , yine çalışmadı. Aşağıdaki uzun hata setini veriyor :


*** Making os_maild *** 


gcc -g -Wall -I../ -I../headers  -DDEFAULTDIR=\"/var/ossec\" -DCLIENT  -DSOLARIS -DHIGHFIRST    -DARGV0=\"ossec-maild\" -DXML_VAR=\"var\" -DOSSECHIDS -lsocket -lnsl -lresolv maild.c config.c os_maild_client.c sendmail.c mail_list.c ../config/lib_config.a ../shared/lib_shared.a ../os_net/os_net.a ../os_regex/os_regex.a ../os_xml/os_xml.a -o ossec-maild
ld: fatal: file values-Xa.o: open failed: No such file or directory
ld: fatal: File processing errors. No output written to ossec-maild
collect2: ld returned 1 exit status
*** Error code 1
make: Fatal error: Command failed for target `maild'
Current working directory /tmp/ossec-hids-2.6/src/os_maild


Error Making os_maild
*** Error code 1
The following command caused the error:
/bin/sh ./Makeall all
make: Fatal error: Command failed for target `all'


Error 0x5.
Building error. Unable to finish the installation.


- Bayağı uzun süren bir google araştırması. OSSEC eposta gruplarına üyelik, gruba atılan sorular, gelmeyen cevaplar. Ama rastlanan bir yazışma !


http://groups.google.com/group/ossec-list/browse_thread/thread/eb58f98b45c6315a/a7d04baeafb63e29?lnk=gst&q=solaris+10#a7d04baeafb63e29


Allahım, tam da aradığım şey. Abi diyor ki, bir tane tam kurulmuş makinede derle bunları canım kardeşim, sonra da gösterdiğim konfig dosyasını değiştirerek ve binary dosyaları kurulum klasörüne kopyalayarak mevzuyu hallet.


Hakkaten oldu yahu ! Tuh allah müstahakını versin. Bilgiye ulaşmak neden bu kadar zor ?


Neyse, heyecan ve öfkemi kontrol edip çözümü yazayım.


* ossec paketini full kurulum bir Solaris 10 sunucusunda derle.
* /var/ossec/bin altındaki tüm ikili dosyaları al ve istediğin sunucuya kopyala
* o sunucuda kurulum paketinin içinde etc/preloaded-vars.conf dosyasındaki USER_BINARYINSTALL="y" satırının #'ini kaldır ve "y" yap.
* aldığın binary dosyaları bin klasörüne kopyala.
* kurulumu yeniden başlat.
* geçmiş olsun.