SAP Sunucularında Sıkça Görülen Zafiyetler ve Savunma Stratejileri
SAP sistemleri, modern kurumların finansal omurgasıdır. ERP, finans muhasebesi, insan kaynakları, tedarik zinciri ve üretim planlaması gibi en kritik iş süreçleri SAP üzerinde çalışır. Bu da SAP sunucularını saldırganlar için son derece cazip bir hedef haline getirir: tek bir başarılı saldırı, bordro verilerinden banka transferlerine, müşteri bilgilerinden ticari sırlara kadar kurumun tüm hassas verisine erişim anlamına gelebilir. Ne yazık ki sahada gördüğümüz manzara çoğu zaman aynıdır. SAP kurulumları işlevsellik odaklı yapılandırılır, güvenlik ise sonradan ele alınır ya da hiç ele alınmaz.
Bu yazıda, sızma testlerimiz sırasında SAP ortamlarında en sık karşılaştığımız zafiyet sınıflarını ve her biri için uygulanabilir savunma stratejilerini ele alıyoruz. Hedef kitlemiz SAP/BASIS yöneticileri ve kurumsal güvenlik ekipleri, dolayısıyla hem riskleri hem de somut sertleştirme adımlarını teknik düzeyde inceleyeceğiz.
1. Varsayılan Standart Kullanıcılar ve Sabit Şifreler
SAP, kurulum sırasında bir dizi standart kullanıcıyı önceden tanımlı şifrelerle oluşturur. Bunların başında SAP* (süper kullanıcı, varsayılan şifresi geçmişte 06071992 veya PASS), DDIC (Veri Sözlüğü yöneticisi, varsayılan 19920706), EARLYWATCH (uzaktan izleme) ve istemci 000'de bulunan TMSADM (Transport Management System) hesapları gelir. Saldırganlar bu hesapları ilk denedikleri kapılardır. Çünkü çok sayıda kurumda bu şifreler hâlâ varsayılan durumda ya da zayıf şekilde değiştirilmiş haldedir.
Risk: SAP* özellikle tehlikelidir. İlgili kullanıcı tablosundan silinirse, kernel'in tanıdığı gömülü (hardcoded) bir SAP* hesabı varsayılan şifreyle devreye girebilir. Bu hesap, profil parametresi login/no_automatic_user_sapstar doğru ayarlanmamışsa tam yetkili erişim sağlar.
- Tüm standart hesapların şifrelerini değiştirin ve mümkün olanları kilitleyin (USR02 üzerinden durumu denetleyin).
- login/no_automatic_user_sapstar = 1 parametresini etkinleştirerek gömülü SAP* davranışını engelleyin.
- Tüm istemcileri (000, 001 ve özel istemciler dahil) tek tek denetleyin. Standart kullanıcı kontrolü için RSUSR003 raporunu düzenli olarak çalıştırın.
- Kritik hesapları SU01 ile referans/servis dışı kullanıcılara dönüştürerek interaktif oturum açmayı kapatın.
2. RFC ve RFC Gateway İstismarları
RFC (Remote Function Call), SAP sistemlerinin birbiriyle ve dış uygulamalarla konuştuğu temel protokoldür. RFC Gateway ise bu çağrıları yöneten bileşendir ve yanlış yapılandırıldığında SAP ortamındaki en ciddi açıklardan birini oluşturur. Asıl sorun, kayıtsız (registered) ve başlatılmış (started) harici programların denetimsiz biçimde Gateway üzerinden çalıştırılabilmesidir.
Risk: reg_info ve sec_info erişim kontrol listeleri eksik ya da fazla geniş tanımlanmışsa, kimliği doğrulanmamış bir saldırgan Gateway üzerinden kendi programını kaydedip işletim sistemi düzeyinde komut çalıştırabilir. Bu, doğrudan SAP sunucusunun ele geçirilmesine giden bir yoldur. Güvenilen RFC bağlantıları (trusted/trusting) ise yanlış kurulduğunda düşük yetkili bir sistemden yüksek yetkili sisteme yatay/dikey geçiş imkânı sunar.
- reg_info ve sec_info ACL dosyalarını "varsayılan reddet" mantığıyla yapılandırın, yalnızca bilinen program ve sunucuları beyaz listeye alın.
- gw/reg_no_conn_info ve gw/acl_mode profil parametrelerini sertleştirin, Gateway izlemeyi (SMGW) etkinleştirin.
- Güvenilen RFC bağlantılarını minimum yetkiyle kurun. S_RFCACL yetki nesnesini sıkı tanımlayın ve SM59 içinde gömülü kullanıcı/şifre saklamaktan kaçının.
- Gereksiz RFC hedeflerini kaldırın, düzenli olarak SM59 envanteri çıkarın.
3. SAP ICM / ICMAD ve Web Bileşeni Zafiyetleri
SAP Internet Communication Manager (ICM), SAP sistemlerinin HTTP, HTTPS ve SMTP trafiğini yöneten bileşendir ve SAP'ın dış dünyaya açılan web yüzeyidir. Son yıllarda bu katmanda, özellikle HTTP istek kaçakçılığı (request smuggling) ve bellek bozulması sınıfından ciddi zafiyetler açıklanmıştır (kamuoyunda "ICMAD" olarak anılan açık sınıfı bunlara örnektir).
Risk: Kimlik doğrulaması gerektirmeyen bu tür açıklar, internete açık SAP web uygulamalarında oturum ele geçirme, kimlik bilgisi sızdırma ve hizmet dışı bırakma (DoS) ile sonuçlanabilir. ICM doğrudan internete bakıyorsa etki alanı çok geniştir.
- ICM ve web dispatcher için yayımlanan SAP Security Notes'u öncelikli olarak uygulayın.
- SAP sistemlerini doğrudan internete açmayın. Önüne SAP Web Dispatcher ve WAF/ters proxy katmanı yerleştirin.
- Kullanılmayan ICM servislerini ve gereksiz HTTP uç noktalarını (SICF) devre dışı bırakın.
4. Solution Manager ve SAP Router Üzerinden Saldırı
SAP Solution Manager (SolMan), tüm SAP sistemlerini yöneten merkezi platformdur ve genellikle ortamdaki diğer sistemlere yüksek yetkili RFC bağlantılarıyla bağlıdır. Bu merkezi konumu onu kritik bir saldırı sıçrama tahtası yapar. SAP Router ise SAP ağ trafiğini yönlendiren ve sıklıkla DMZ'de internete bakan bir bileşendir.
Risk: Yamalanmamış bir SolMan örneği, kimlik doğrulamasız ele geçirildiğinde ona bağlı tüm uydu (satellite) sistemlere zincirleme erişim sağlayabilir. Yanlış yapılandırılmış bir SAP Router ise saprouttab kuralları gevşekse iç SAP ağına bir tünel görevi görür.
- SolMan'ı en güncel destek paketi ve Security Notes seviyesinde tutun, yönetim arayüzlerini ağ düzeyinde kısıtlayın.
- SAP Router için saprouttab kurallarını "varsayılan reddet" ilkesiyle yazın. SNC ile şifreli ve kimlik doğrulamalı yönlendirme zorunlu kılın.
- SolMan ile uydu sistemler arasındaki RFC kullanıcılarının yetkilerini gözden geçirin ve gereğinden fazla geniş profilleri (örn. SAP_ALL) kaldırın.
5. Eksik SAP Security Notes ve Yamalama Boşlukları
SAP her ay "Patch Tuesday" benzeri bir döngüyle güvenlik notları (SAP Security Notes) yayımlar. Sahada en yaygın temel sorun, bu notların aylarca hatta yıllarca uygulanmamasıdır. SAP sistemleri "çalışıyorsa dokunma" kültürüyle yönetildiğinde, bilinen ve kamuya açık zafiyetler uzun süre açık kalır.
Risk: Kamuya açıklanmış zafiyetler için genellikle hazır istismar kodu bulunur. Saldırgan için iş, yalnızca yamasız bir hedef bulmaya indirgenir.
- Düzenli bir yama döngüsü kurun ve SAP EarlyWatch Alert ile System Recommendations (SolMan içinde) raporlarını takip edin.
- Yüksek ve kritik (HotNews) notları en yakın acil bakım zamanında önceliklendirin.
- Yama uygulanamayan durumlarda telafi edici kontroller (ağ kısıtlama, izleme) devreye alın.
6. Yetkilendirme ve Görevler Ayrılığı (SoD) Sorunları
SAP'ın yetkilendirme modeli güçlü ama karmaşıktır. Roller, profiller ve yetki nesneleri (authorization objects) zamanla birikerek devasa ve denetlenemez hale gelir. En kritik bulgular, aşırı yetkili kullanıcılar ve Görevler Ayrılığı (Segregation of Duties) ihlalleridir.
Risk: SAP_ALL veya SAP_NEW profilini taşıyan kullanıcılar, sistemde sınırsız yetkiye sahiptir. SoD ihlallerinde ise tek bir kullanıcı hem satıcı oluşturup hem ödeme onaylayabildiği için iç dolandırıcılık (fraud) kapısı açılır. Ayrıca S_DEVELOP, S_TABU_DIS ve S_RFC gibi güçlü nesnelerin gevşek tanımlanması ayrıcalık yükseltmeye yol açar.
- Üretim ortamında SAP_ALL ve SAP_NEW profillerini kaldırın, geniş yetkileri olan kullanıcıları RSUSR002 ile düzenli tespit edin.
- SoD çatışma matrisi tanımlayın. SAP GRC Access Control veya eşdeğer araçlarla sürekli denetleyin.
- En az ayrıcalık (least privilege) ilkesini benimseyin. Hata ayıklama ve tablo erişim yetkilerini (S_DEVELOP, S_TABU_DIS) sıkı kısıtlayın.
7. Güvensiz Arayüzler ve Şifrelenmemiş İletişim
Varsayılan haliyle SAP'ın iki temel protokolü olan DIAG (SAP GUI ile sunucu arasındaki istemci protokolü) ve RFC, şifrelenmemiş çalışır. DIAG yalnızca zayıf bir gizleme (obfuscation) kullanır, gerçek bir şifreleme değildir.
Risk: Ağ trafiğini dinleyebilen bir saldırgan, DIAG/RFC oturumlarından kimlik bilgilerini, iş verilerini ve oturum bilgilerini açık metin olarak çözümleyebilir. İç ağda gerçekleştirilen ortadaki adam (MITM) saldırıları bu nedenle özellikle etkilidir.
- SNC (Secure Network Communications) ile DIAG ve RFC trafiğini uçtan uca şifreleyin.
- Web trafiği için TLS'i zorunlu kılın ve zayıf şifreleme paketlerini devre dışı bırakın.
- Parola politikalarını güçlendirin (login/min_password_lng, karmaşıklık parametreleri) ve mümkünse tek oturum açma (SSO) ile çok faktörlü doğrulamaya geçin.
8. Genel Savunma Stratejisi: Katmanlı Yaklaşım
SAP güvenliği tek bir ayarla sağlanmaz. Üst üste binen katmanlardan oluşan bir program gerektirir. Ağ segmentasyonu ile SAP sistemlerini ayrı bir güvenlik bölgesine alın, yönetim portlarını (32xx, 33xx, 36xx, 81xx serisi) yalnızca yetkili yönetim ağlarına açın ve hiçbir SAP endpoint bileşenini doğrudan internete bakacak şekilde konumlandırmayın. Yamalama döngüsünü kurumsal bir süreç olarak işletin, RFC ve Gateway yapılandırmasını sürekli denetleyin, yetki matrisini periyodik olarak gözden geçirin.
Bunların üzerine izleme ve tespit katmanını ekleyin: SAP denetim günlüğünü (SM19/SM20: Security Audit Log) etkinleştirin, kritik olayları (başarısız oturum denemeleri, yetki değişiklikleri, RFC çağrıları) merkezi bir SIEM'e aktarın. Güvenlik, "kur ve unut" değil, sürekli yönetilen bir döngüdür.
Hızlı kontrol listesi
- Tüm standart hesapların (SAP*, DDIC, EARLYWATCH, TMSADM) şifreleri değiştirildi ve gereksizler kilitlendi mi?
- login/no_automatic_user_sapstar = 1 parametresi tüm istemcilerde etkin mi?
- RFC Gateway reg_info/sec_info ACL'leri "varsayılan reddet" ile yapılandırıldı mı?
- Kritik ve HotNews SAP Security Notes güncel mi, düzenli bir yama döngüsü var mı?
- SAP_ALL/SAP_NEW profilleri üretimden kaldırıldı ve SoD çatışmaları denetleniyor mu?
- DIAG ve RFC trafiği SNC ile, web trafiği TLS ile şifreleniyor mu?
- SAP sistemleri ağ segmentasyonuyla izole edildi ve internete doğrudan açık değil mi?
- Security Audit Log etkin ve SIEM ile merkezi olarak izleniyor mu?
Raze yaklaşımı
Raze Security olarak SAP ortamlarını yalnızca otomatik tarama ile değil, gerçek saldırgan bakış açısıyla değerlendiriyoruz. RFC Gateway istismarından standart hesap denetimine, yetki ve SoD analizinden ICM/SolMan/SAP Router gibi dış yüzeyin test edilmesine kadar SAP'a özel bir metodolojiyle çalışıyor. Bulduğumuz her zafiyeti somut sertleştirme adımlarıyla raporluyoruz. SAP altyapınızın güvenlik duruşunu netleştirmek için sızma testi hizmetimizi inceleyebilir, kurumunuza özel bir değerlendirme için bizimle iletişime geçebilirsiniz.