Apache Tomcat Güvenliği



Benzer belgeler
Apache Tomcat Güvenliği

Web Uygulama Güvenliği Kontrol Listesi 2010

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

Kaynak Kod Güvenliği Bir Güvensiz API Örneği

WEB SUNUCU GÜVENLİĞİ: Web Siteleri Neden Hacklenir?

Medula Eczane Stok Bilgileri Web Servisleri Kullanım Kılavuzu

MODSECURITY DENETİM KAYITLARINI ANLAMAK. Gökhan Alkan,

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir?

Web Servis-Web Sitesi Bağlantısı

Üst Düzey Programlama

Linux Dosya ve Dizin Yapısı

Kurumsal Güvenlik ve Web Filtreleme

BIND ile DNS Sunucu Kurulumu

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Bilgi ve Olay Yönetim Sistemi

Kurumsal Güvenlik ve Web Filtreleme

ETA:MOBİL KURULUM TALİMATI

Üst Düzey Programlama

İşletme ve Devreye Alma Planı Yerel Okul Sunucusu Uygulama Yazılımları Prototipi TRscaler Technology Solutions

WebInstaller. 1. Kurulum Đçin Gereksinimler

Temel Linux Eğitimi. İçindekiler

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Apache Tomcat / J-Guar Setup License Installation

Denetim Masası/Programlar/Windows özelliklerini Aç/Kapat

EFe Event Management System

Bilgi ve Olay Yönetim Sistemi

Yeni Üye Test Sistemi Teknik Bilgilendirme

Yeni Ü ye Test Sistemi Teknik Bilgilendirme

CHAPTER 6 FTP SERVER

İNTERNET EXPLORER AYARLARI 1. Başlat-Ayarlar-Denetim Masası menüsünden "İnternet Özellikleri" (Seçenekleri)'ni seçiniz. Resim. 1

Linux Temelli Zararlı Yazılımların Bulaşma Teknikleri, Engellenmesi ve Temizlenmesi

LİNUX. Dosyalar ve dizinler

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

ProTicaret Exclusive 4.05 E-Ticaret Yazılımı Kurulum Dokümanı

AntiKor Güvenlik Sunucumu nereye yerleştirmeliyim?

Kurumsal Ağlarda Web Sistem Güvenliği

AKINSOFT. Eofis NetworkAdmin. AKINSOFT EOfis NetworkAdmin Kurulumu Bilgi Notu. Doküman Versiyon : Tarih : Copyright 2008 AKINSOFT

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler:

1 STUNNEL NEDİR? 2 STUNNEL KURULUMU

Turquaz Kurulum Dökümani Linux

ÖZGÜR YAZILIMLAR İLE J2EE

Berqnet Sürüm Notları Sürüm 4.1.0

Yedek Almak ve Yedekten Geri Dönmek

Burp Suite ile Deneme - Yanılma Denetimi

Kullanıcı Dökümanı. Flash B2B. Versiyon 0.1

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

2.Eclipse açıldıktan sonra Workspace alanı seçilmesi gerekir. Workspace alanı projelerinizin fiziksel olarak bulunduğu kısımdır.

Apache üzerinden Red Hat 5 yüklenmesi

LIBPXY SERVİSİNİN KULLANIMI

AHTAPOT Merkezi Güvenlik Duvarı Yönetim Sistemi Kontrol Paneli

1.PROGRAMLAMAYA GİRİŞ

Programlama Kılavuzu. IPV Serisi IP Santralleri IPV10 IPV20 IPV50

Coslat Monitor (Raporcu)

OPENBSD İŞLETİM SİSTEMİ ÜZERİNE PFW KURULUMU

J-Guar Self Servis Kurulumu

AKINSOFT FilterPlus 2

AHTAPOT Firewall Builder Kurulumu

LST TIPON KURULUM KILAVUZU

PHP 1. Hafta 1. Sunum

Linux Sunucuları için Güvenlik İpuçları. Korhan Gürler, Burç Yıldırım

Başlangıç; Sayfa 1. Sanal pos tanımlandığında üye numarası admin kullanıcı adı parolası ile Garanti Bankasından tarafınıza iletilecektir.

MCR02-AE Ethernet Temassız Kart Okuyucu

iphone & ipad için e-posta hesabı kurulumu

Bilindik engelleme yöntemlerinin dışında olan, kurumsal web filitreleri nasıl aşılır?

Yerel Ağlarda Port 139 ve Saldırı Yöntemi

Veritabanı Sızma Testleri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı

BioAffix Ones Technology nin tescilli markasıdır.

Layer 2 Güvenlik Yöntemleri(Bölüm1) SAFA Kısıkçılar / İTÜ BİDB 2010

Ünite-3 Bilgisayar Yazılımı.

Cyberoam Single Sing On İle

Aktif Dizin Logon/Logoff Script Ayarları Versiyon

MyFaces Özgür JSF Uyarlaması. Bora Güngören Portakal Teknoloji

Linux altında komut satırında...

Yerel Okul Sunucusu Uygulama Yazılımları Prototipi

BioAffix Ones Technology nin tescilli markasıdır.

EKLER EK 12UY0106-5/A4-1:

.: Linux Kullanıcıları Derneği. III. Linux ve Özgür Yazılım Şenliği Mayıs Milli Kütüphane Ankara :.

Checkpoint SSL-VPN Kurulum Prosedürü. Checkpoint Endpoint VPN Client

Komutlar (Devam) ls -a > deneme (ls -a komutunun çıktısı deneme isimli. ls -a >> deneme (ls -a komutunun çıktısı deneme

Bölüm 10: PHP ile Veritabanı Uygulamaları

Turquaz. Açık kodlu muhasebe yazılımı Turquaz Proje Grubu

DynEd. Kayıt Yöneticisi (Records Manager)

E-Mükellef Kontrol Programı Kullanım Kılavuzu

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

ÖRÜN (WEB) GÜVENLİĞİ. Hazırlayan: Arda Balkanay

T.C.SOSYAL GÜVENLİK KURUMU. Genel Sağlık Sigortası Medula Optik E-rapor Web Servisleri Kullanım Kılavuzu

JAVA API v2.0 Belge sürümü: 2.0.2

Proticaret Exclusive v3.2.0 E-Ticaret Yazılımı Kurulum Dokümanı

AĞ KULLANIM KILAVUZU. Yazdırma Günlüğünü Ağa Kaydetme. Sürüm 0 TUR

E-postaya Tarama Hızlı Kurulum Kılavuzu

ProTicaret yazılımının, en son sürüm dosyasını indirin.(

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

BioAffix Ones Technology nin tescilli markasıdır.

1. Sertifika istenmesi

Online Protokol Üretim Projesi

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

İÇERİK. Amaç. Kapsam. Süreç. Teknik Mimari. Faydalar

@6 SERİSİ ÜRÜN KURULUMU

EC-232C. Ethernet RS232 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

HİTİT Muhasebe Aktarım Kurulum ve Kullanım Kılavuzu (Netsis Modülü)

Transkript:

WEB GÜVENLİK TOPLULUĞU 4 Güvenlik Denetim Kılavuzu v1.0 Bedirhan Urgun 11/07/2008 Bu doküman, Linux sistemler üzerinde koşan Apache Tomcat kısmi J2EE container ının güvenlik denetim adımlarını içerir. Dokümandaki bilgilerin bir bölümü OWASP 1, CIS 2, IASE 3 sitelerinde bulunan değerlendirme verilerinden oluşmaktadır. Daha detaylı bilgi için: www.webguvenligi.org

2 1. GİRİŞ Apache Tomcat 5, Apache Software Foundation 6 ın Java Servlet 7 ve JavaServer Pages 8 teknolojilerinin gerçeklendiği açık kaynak kodlu temel bir J2EE container ıdır. Yakın zamanda yapılmış araştırmalara göre geliştiricilerin %64 ü Tomcat sunucusunu seçmektedir 9. Sonuçları çok kesin olmamakla beraber NetCraft raporları da Apache Tomcat in üretim ortamlarında da kullanılan popüler temel bir uygulama sunucu olduğunu göstermektedir 10. Bu doküman, kontroller diğer işletim sistemlerine de uygulanabilse de, Linux sistemler üzerinde koşan Apache Tomcat kısmi J2EE container ının güvenlik denetim adımlarını tanımlamaya yönelik bir çalışmadır. Doküman adım adım kontrolleri detaylı anlatsa da, bu değerlendirme prosedürü açık kaynak kodlu otomatik bir araçla da desteklenecektir. Doküman hakkında bütün görüşleriniz için; Bedirhan Urgun, urgunb@hotmail.com 1.1 FORMAT Her kontrol adımı üç bölümden oluşmaktadır; testin amacı, teknik adımları ve beklenen sonucu. Dokümanda kullanılan formatlar aşağıda belirtilmiştir; Kalın fontlar dikkat çekilmek istenen bilgileri belirtmektedir. İtalik fontlar teknik terimleri ve kısa notları belirtmektedir. Komutlar ve çıktıları çalıştırılması ve/veya aranması gereken yapıları belirtmektedir. 1.2 REFERANSLAR [1] http://www.owasp.org/index.php/securing_tomcat [2] CIS_TomCat_Benchmark_v1.0 (tomcat benchmark@lists.cisecurity.org e posta listesi) [3] http://iase.disa.mil/stigs/checklist/web_srr_checklist_tomcat_v6r1 3.zip [4] http://www.webguvenligi.org [5] http://tomcat.apache.org [6] http://www.apache.org [7] http://java.sun.com/products/servlets [8] http://java.sun.com/products/jsp [9] http://www.infoq.com/news/2007/12/tomcat favorite container [10] http://survey.netcraft.com/reports/200810/

3 2. CONTENTS 1. GİRİŞ... 2 1.1 FORMAT... 2 1.2 REFERANSLAR... 2 3. VERSİYON BİLGİSİ TESTİ... 6 3.1 TEST AMACI... 6 3.2 TEST ADIMLARI... 6 3.3 TEST SONUCU... 6 4. KOŞAN KULLANICI HAKLARI TESTİ... 7 4.1 TEST AMACI... 7 4.2 TEST ADIMLARI... 7 4.3 TEST SONUCU... 7 5. DİZİN LİSTELEME ÖZELLİĞİ TESTİ... 8 5.1 TEST AMACI... 8 5.2 TEST ADIMLARI... 8 5.3 TEST SONUCU... 8 6. GEREKSİZ DOSYALAR/DİZİNLERİN VARLIĞI TESTİ... 9 6.1 TEST AMACI... 9 6.2 TEST ADIMLARI... 9 6.3 TEST SONUCU... 9 7. VERSİYON BİLGİSİ SIZDIRMA TESTİ... 10 7.1 TEST AMACI... 10 7.2 TEST ADIMLARI... 10 7.3 TEST SONUCU... 10 8. VARSAYILI HATA SAYFASI TESTİ... 11

4 8.1 TEST AMACI... 11 8.2 TEST ADIMLARI... 11 8.3 TEST SONUCU... 11 9. VARSAYILI SİSTEM DURDURMA PORTU VE ŞİFRESİ TESTİ... 12 9.1 TEST AMACI... 12 9.2 TEST ADIMLARI... 12 9.3 TEST SONUCU... 12 10. ADMIN ve MANAGER UYGULAMALARI IP KISITLAMA TESTİ... 13 10.1 TEST AMACI... 13 10.2 TEST ADIMLARI... 13 10.3 TEST SONUCU... 13 11. KAYIT İŞLEMİ VARLIĞI TESTİ... 14 11.1 TEST AMACI... 14 11.2 TEST ADIMLARI... 14 11.3 TEST SONUCU... 14 12. SSL KULLANIMI TESTİ... 15 12.1 TEST AMACI... 15 12.2 TEST ADIMLARI... 15 12.3 TEST SONUCU... 15 13. JAVA SECURITY MANAGER TESTİ... 16 13.1 TEST AMACI... 16 13.2 TEST ADIMLARI... 16 13.3 TEST SONUCU... 16 14. DOSYA HAKLARI TESTİ... 17 14.1 TEST AMACI... 17 14.2 TEST ADIMLARI... 17

5 14.3 TEST SONUCU... 17

6 3. VERSİYON BİLGİSİ TESTİ 3.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat sunucusu ve bu sunucunun kullandığı Java platformunun en son kararlı sürümlerinin kullanıp kullanılmadığının anlaşılmasıdır. 3.2 TEST ADIMLARI Sisteme root kullanıcısı olarak girilip, Tomcat servisinin sistem üzerinde hangi kullanıcı ile koşulduğu anlaşılmalıdır. [root@sys ~]# ps eaf grep java grep v grep root 2774 1 0 Oct25? 00:02:46 /usr/java/jdk/bin/java Dcatalina.base=/opt/tomcat Dcatalina.home=/opt/tomcat org.apache.catalina.startup.bootstrap start Kullanıcı ismi bulunduktan sonra, Tomcat servisinin home dizini bulunmalıdır. [root@sys ~]# echo $CATALINA_HOME /opt/tomcat Dizin bulunduktan sonra, Apache Tomcat servisinin ve kullandığı Java platformu versiyonu bulunabilir. [root@sys bin]# cd /opt/tomcat/bin [root@sys bin]# /bin/bash./version.sh Server version: Apache Tomcat/5.5.25 JVM Version: JVM Vendor: 1.6.0_07 b06 Sun Microsystems Inc. 3.3 TEST SONUCU Hem Tomcat hem de Java ürün versiyonlarında son iki rakam bugfix açısından önemlidir (Tomcat/5.5.25 ve 1.6.0_07). Bu rakamın yayınlanmış en son ürün ile aynı olması gerekmektedir.

7 4. KOŞAN KULLANICI HAKLARI TESTİ 4.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisini koşan kullanıcının haklarının, minimum hak prensibine uygun olup olmadığının anlaşılmasıdır. 4.2 TEST ADIMLARI Sisteme root kullanıcısı olarak girilip, Tomcat servisinin sistem üzerinde hangi kullanıcı ile koşulduğu anlaşılmalıdır (Bknz. VERSİYON BİLGİSİ TESTİ). Koşan kullanıcı bulunduktan sonra bu kullanıcının sahip olduğu ID bulunmalıdır. [root@sys bin]# cat /etc/passwd grep tomcat tomcat:x:200:201:tomcat:/home/tomcat:/bin/bash 4.3 TEST SONUCU Tomcat servisini koşan kullanıcının ID si 100 ve üzeri ise yüksek haklara sahip bir kullanıcı olmadığı anlaşılır.

8 5. DİZİN LİSTELEME ÖZELLİĞİ TESTİ 5.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin dizin içeriği listeleme özelliğinin kapalı olup olmadığını anlamaktır. 5.2 TEST ADIMLARI Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), conf/web.xml dosyası içerisinde bulunan, listings değerini içeren param name elementinin eşlenik param value element değeri kontrol edilmelidir. <init param> <param name>listings</param name> <param value>false</param value> </init param> 5.3 TEST SONUCU Tomcat servisinin dizin içeriği listeleme özelliğinin (listings false) kapalı olması gerekmektedir.

9 6. GEREKSİZ DOSYALAR/DİZİNLERİN VARLIĞI TESTİ 6.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinde güvenlik problemleri yaratabilecek gereksiz dizin ve/veya dosyalardan arındırılmış olup olmadığını kontrol etmektir. 6.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), aşağıdaki dosya ve dizinlerin varlığı kontrol edilmelidir. $CATALINA_HOME/webapps/ROOT $CATALINA_HOME/webapps/balancer $CATALINA_HOME/webapps/jsp examples $CATALINA_HOME/webapps/servlet examples $CATALINA_HOME/webapps/tomcat docs $CATALINA_HOME/webapps/webdav $CATALINA_HOME/server/webapps/host manager $CATALINA_HOME/server/webapps/manager $CATALINA_HOME/conf/Catalina/localhost/host manager.xml $CATALINA_HOME/conf/Catalina/localhost/manager.xml Not: Bu dizinlerin ve dosyaları silmeden önce yedeğini almalısınız. 6.3 TEST SONUCU Tomcat kurulumu ile gelen örnek ve kullanılmayan uygulamalar saldırı yüzeyini küçültmek için sistem üzerinde bulunmamalıdırlar.

10 7. VERSİYON BİLGİSİ SIZDIRMA TESTİ 7.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin HTTP/S cevaplarında HTTP başlıklarında veya hata sayfalarında detaylı versiyon bilgisi sızdırıp sızdırmadığını kontrol etmektir. 7.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), üretilen HTTP hata sayfalarında gösterilen versiyon bilgisini görebilmek için aşağıdaki adımlar $CATALINA_HOME/server/lib/catalina.jar dosyası üzerinde uygulanır. [root@sys tomcat]# cd $CATALINA_HOME/server/lib/ [root@sys lib]# jar xf catalina.jar org/apache/catalina/util/serverinfo.properties [root@sys lib]# cat org/apache/catalina/util/serverinfo.properties server.info=apache Tomcat/5.5.25 server.number=5.5.25.0 server.built=aug 24 2007 05:33:50 Sunucuya yapılan HTTP isteklerine dönen cevaplarda bulunan HTTP başlıklarındaki detaylı versiyon bilgisinin başka bir bilgi ile değiştirilip değiştirilmediğini görmek için server attribute u $CATALINA_HOME/conf/server.xml dosyası içinde Connector elementi içinde aranır. <Connector port="8080" redirectport="8443" server="apoche" /> <Connector port="8443" clientauth="false" sslprotocol="tls" server="apoche" /> 7.3 TEST SONUCU HTTP hata sayfalarında detaylı sunucu versiyonunun gözükmemesi için ServerInfo.properties dosyasındaki server.info parametresinin değeri, detaylı sunucu versiyon bilgisinden farklı olmalıdır. HTTP başlıklarındaki detaylı versiyon bilgisinin gözükmemesi için Connector elementinin server attribute u etkin olmalıdır.

11 8. VARSAYILI HATA SAYFASI TESTİ 8.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin detaylı uygulama çatısı hata mesajlarının (stacktrace) bilmesi gereken prensibine göre sistem genelinde varsayılı özel bir hata sayfası ile değiştirilip değiştirilmediğini anlamaktır. 8.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), sunucu genelinde kullanıcılara detaylı hata mesajları gönderilmesini engelleyici yapıların olup olmadığı $CATALINA_HOME/conf/web.xml dosyasında aşağıdaki gibi element yapısı aranarak anlaşılır. <error page> <exception type>java.lang.throwable</exception type> <location>/error.jsp</location> </error page> 8.3 TEST SONUCU Son kullanıcılara detaylı hata mesajları (stacktrace) gönderilmesini engellemek amacı $CATALINA_HOME/conf/web.xml dosyasında error page direktiflerinin kullanılması gerekmektedir.

12 9. VARSAYILI SİSTEM DURDURMA PORTU VE ŞİFRESİ TESTİ 9.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin yerel adresten dinlediği durdurma portunun ve şifresinin herkes tarafından bilinen varsayılı değerler (8005 ve SHUTDOWN) olup olmadığını anlamaktır. 9.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), sunucu durdurma işlemi için kullanılan varsayılı port ve şifrenin değiştirilip değiştirilmediğini görmek için $CATALINA_HOME/conf/server.xml dosyası içinde port attribute unun 8080 ve shutdown attribute unun SHUTDOWN olup olmadığı kontrol edilir. <Server port="8005" shutdown="shutdown"> 9.3 TEST SONUCU Lokal adresten dinleyen durdurma servisinin daha da güvenli hale getirilmesi için, port attribute unun 8080 den farklı (veya bu portu kapatmak için 1) ve shutdown attribute unun SHUTDOWN dan farklı olması gerekmektedir.

13 10. ADMIN VE MANAGER UYGULAMALARI IP KISITLAMA TESTİ 10.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin bilinen sunucu yapılandırma dosyaları kullanılarak kullanılıyorsa admin ve manager uygulamalarına IP kısıtlama yöntemi kimlik doğrulama/yetkilendirme işlemleri uygulanıp, uygulanmadığının anlaşılmasıdır. 10.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ); admin uygulaması için $CATALINA_HOME/conf/Catalina/localhost/admin.xml veya $CATALINA_HOME/webapps/host manager/admin.xml dosyasında aşağıdaki xml elementinin yorum halinde bulunmadığı (yani <! > karakter dizgileri içinde olmadıkları) kontrol edilmelidir. <Valve classname="org.apache.catalina.valves.remoteaddrvalve" allow="127\.0\.0\.1"/> manager uygulaması için $CATALINA_HOME/conf/Catalina/localhost/manager.xml veya $CATALINA_HOME/webapps/host manager/manager.xml dosyasında aşağıdaki xml elementinin yorum halinde bulunmadığı kontrol edilmelidir. <Valve classname="org.apache.catalina.valves.remoteaddrvalve" allow="127\.0\.0\.1"/> Not: Allow parametresi içindeki IP farklı olabilir. 10.3 TEST SONUCU Sistem üzerinde admin ve/veya manager uygulamaları kullanılmakta ise bu IP kısıtlamalarının ilgili yapılandırma dosyaları kullanılarak yapılması gerekmektedir. (Güvenlik sıkılaştırması adına yapılabilecek bir adım olarak) uygulama isimleri değiştirilmiş ise aynı isimde xml dosyaları kontrol edilmelidir.

14 11. KAYIT İŞLEMİ VARLIĞI TESTİ 11.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin ve yüklenmiş web uygulamalarının kayıt tutma politikalarının varlığını ve işlerliğini anlamaktır. 11.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ) $CATALINA_HOME/logs dizini içinde; catalina.yyyy MM DD.log catalina.out dosyalarının var olup olmadığı araştırılır. Ayrıca sistemdeki uygulamaların kayıt tutma özelliklerinin var olup olmadığını araştırmak için, genellikle uygulamaların yer aldığı $CATALINA_HOME/webapps/[APP_NAME]/WEB INF/classes dizinleri içerisindeki logging.properties dosyasının varlığı araştırılır. Not: [APP_NAME], uygulamanın context ismi olup farklılık gösterebilir. 11.3 TEST SONUCU $CATALINA_HOME/logs dizini içinde yer alana varsayılı Tomcat kayıt dosyalarının yanında uygulamaların da kayıtlarını almış olmaları önerilmektedir.

15 12. SSL KULLANIMI TESTİ 12.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin web uygulamaları için SSL desteği ile yapılandırılıp, yapılandırılmadığını anlamaktır. 12.2 TEST ADIMLARI Sistem üzerinde Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ) $CATALINA_HOME/conf/server.xml dosyası içerisinde <Connector classname="org.apache.catalina.connector.http.httpconnector" /> port="8443" keypass="xyz" scheme="https" secure="true" clientauth="false" sslprotocol="tls" elementine benzer yapılandırma bölümlerinin varlığı (<! > yorum elementleri dışında) araştırılmalıdır. 12.3 TEST SONUCU Apache Tomcat servisinin veri gizliliğini koruması için gerçekleştirmesi gereken adımlardan biri olan SSL desteğinin $CATALINA_HOME/conf/server.xml dosyası içerisinde açık olması gerekmektedir.

16 13. JAVA SECURITY MANAGER TESTİ 13.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin üzerinde koşan uygulamalara Java güvenlik politikası yapılandırması ile kısıtlamalar getirip, getirmediğini anlamaktır. 13.2 TEST ADIMLARI Sisteme root kullanıcısı olarak girilip, Tomcat servisinin java security manager ile çalıştırılıp çalıştırılmadığı anlamak için [root@sys ~]# ps eaf grep java grep v grep root 2774 1 0 Oct25? 00:02:46 /usr/java/jdk/bin/java Dcatalina.base=/opt/tomcat Dcatalina.home=/opt/tomcat security org.apache.catalina.startup.bootstrap start komutunun sonucunda security opsiyonunun kullanılıp kullanılmadığı anlaşılmalıdır. Bazı sistemlerde aynı komutun çalıştırılması sonucu aşağıdaki gibi bir çıktı da alınabilir. [root@sys ~]# ps eaf grep java grep v grep tomcat 19630 1 7 15:13 pts/2 00:00:01 /usr/java/jre1.6.0_10/bin/java Djava.security.manager Djava.security.policy==/opt/apache tomcat 6.0.18 secure/conf/catalina.policy Dcatalina.base=/opt/apache tomcat 6.0.18 secure Dcatalina.home=/opt/apache tomcat 6.0.18 secure org.apache.catalina.startup.bootstrap start Bu çıktı da Djava.security.manager olması sunucunun java security manager ile çalıştırıldığını göstermektedir. 13.3 TEST SONUCU Java Security manager koşan web uygulamalarının sistem üzerinde elde ettikleri hakları kısıtlamaya yardımcı olan bir Java teknolojisidir. Java Security manager kurulu bir tomcat servisi security sekmesi ile başlatılmış olmalıdır.

17 14. DOSYA HAKLARI TESTİ 14.1 TEST AMACI Bu test adımında amaç, sistemde kurulu Apache Tomcat servisinin dosya haklarının bilmesi gereken prensibine göre ayarlanıp ayarlanmadığını anlaşılmasıdır. 14.2 TEST ADIMLARI Tomcat servisinin home dizini bulunduktan sonra (Bknz. VERSİYON BİLGİSİ TESTİ), $CATALINA_HOME dizini altındaki bütün dosya ve dizin sahipliğinin düşük haklara sahip kullanıcı ve gruba ait olduğu görülmelidir (bu kullanıcı ve gruba tomcat diyelim). Ayrıca, $CATALINA_HOME/conf dizinine sadece okuma ve çalıştırma (500), bu dizinin içindekilere ise sadece okuma (400) $CATALINA_HOME/logs ve içindekilere dizinine sadece okuma/yazma ve çalıştırma (700) haklarının (eğer log dosyaları okunmayacaksa, 300) Son olarak tomcat kullanıcısına /tmp (veya $CATALINA_HOME/temp) dizinine ve içindekilere sadece okuma ve yazma (600) hakkı verilmelidir. 14.3 TEST SONUCU Apache Tomcat servisinin dosya haklarının bilmesi gereken prensibine göre dosya haklarının sıkılaştırılmış olması gerekmektedir.