CyberFlow Logo CyberFlow BLOG
Oracle Pentest

Oracle Üzerinden Domain Yayılma Teknikleri ve Önlemler

✍️ Ahmet BİRKAN 📂 Oracle Pentest

Oracle üzerinden domain yayılma tekniklerini ve bu tehditlere karşı alınması gereken önlemleri keşfedin.

Oracle Üzerinden Domain Yayılma Teknikleri ve Önlemler

Bu blog yazısında, Oracle servisleri ile domain yayılma tekniklerini, kullanılan saldırı vektörlerini ve etkili önlemleri detaylı bir şekilde ele alıyoruz.

Giriş ve Konumlandırma

Siber güvenlik alanında, özellikle kuruluşların IT alt yapıları üzerinde uygulanabilecek tüm tehdit ve saldırıların etkili bir şekilde ele alınması büyük önem taşımaktadır. Bu konulardan biri de, Oracle üzerinden domain yayılma teknikleridir. Domain yayılması, bir saldırganın bir ağda ki bir sistemden, o ağın diğer bileşenlerine geçiş yapmasını sağlamak amacıyla kullandığı yöntemler bütünüdür. Bu bağlamda, Oracle veritabanı sistemleri, zayıf anlık yapılandırmalar ve izinler sayesinde saldırılar için sıçrama tahtası olarak değerlendirilebilir.

Oracle sistemleri, genellikle kurumsal ağların merkezinde yer alır ve birçok durumda büyük miktarda hassas veri barındırır. Eğer bir saldırgan, Oracle servisleri üzerine yerleştirilen uygun olmayan yapılandırmalardan yararlanarak sistemin kontrolünü ele geçirirse, network üzerinde çok daha geniş bir etki alanı elde edebilir. Örneğin, Oracle'ın sunduğu Kerberos kimlik doğrulama hizmetinin yanlış yapılandırılması, kötü niyetli bir kullanıcının ağın diğer bileşenlerine şifresiz erişim sağlayabilmesine yol açar.

Bu yazıda, Oracle üzerinden domain yayılma tekniklerini inceleyecek ve bu tekniklere karşı alabileceğiniz önlemleri ele alacağız. Özellikle, bir siber güvenlik test süreci (pentest) bağlamında, bu tekniklerin nasıl çalıştığını anlamak, potansiyel zafiyetleri tanımlamak ve saldırılara karşı gerekli savunma mekanizmalarını geliştirmek açısından kritik bir rol oynamaktadır.

Domain Yayılma ve Önemi

Domain yayılması, bir saldırganın mevcut bir yetki ile başlayarak daha yüksek yetkilere veya hassas verilere ulaşma çabasıdır. Bu tür yayılmalar, yalnızca temsil edilen veri tabanlarının güvenliğini tehdit etmekle kalmaz, aynı zamanda bir organizasyonun bütünlüğünü ve gizliliğini de tehdit eder. Kuruluşlar, bu tehditlerle başa çıkabilmek için gerekli olan zafiyet tomografisini oluşturmalı ve siber güvenlik stratejilerini bu bağlamda güçlendirmelidir. İşte bu noktada, Oracle üzerindeki domain yayılma tekniklerini ve bunlara karşı alınabilecek önlemleri derinlemesine analiz etmek önem kazanır.

Pentest ve Savunma Açısından Değerlendirme

Pentest, çeşitli güvenlik açıklarını belirlemek ve bunları kapatmak için kullanılan bir yöntemdir. Kurumların Oracle sistemlerine yönelik potansiyel tehditleri anlamaları, bu sistemlerin güvenliğini artırmalarına yardımcı olur. Oracle üzerinde yapılacak bir pentest süreci sayesinde, servis hesapları ve yetkileri gibi temel bileşenlerden başlayarak, ağ paylaşım noktalarına, kullanıcı listelerine ve daha gelişmiş saldırı tekniklerine kadar geniş bir analiz yelpazesi oluşturulabilir.

Bu yazıda ele alacağımız teknikler, genellikle domain yayılma vektörleri, Kerberos kimlik doğrulaması, NTLM relay saldırıları ve çeşitli veri tabanı bağlantı teknikleri gibi konuları kapsamaktadır. Örneğin, Kerberos üzerinden şifresiz oturum açma imkanlarının yanı sıra, auth token çalma ve uygulama düzeyindeki zayıflıkları hedef alan teknikler de (örneğin, OS Command Execution) sıkça kullanılmaktadır. Kısaca, doğru güvenlik önlemlerinin alınmaması durumunda bir Oracle sunucusunun yüksek risk barındırabileceği görülmektedir.

Hazırlık ve Eğitim İçeriği

Sonuç olarak, bu yazının amacı siber güvenlik alanında önemli bir konu olan "Oracle Üzerinden Domain Yayılma Teknikleri" konusunu derinlemesine ele almak ve okuyucuları bu alandaki en güncel bilgilere yönlendirmektir. Okuyucu, siber güvenlik açısından kritik aktivitelerin farkındalığını artıracak, potansiyel güvenlik açığını tanıyacak ve bu açığın nasıl kapatılacağı konusunda uygun stratejiler geliştirebilecektir.

Ayrıca, yazının sonunda ele alınacak önlemler ve en iyi uygulamalar, sulama tehditlerine karşı kurumsal savunma mekanizmalarının güçlendirilmesinde önemli bir kaynak sağlayacaktır. Böylece okuyucular, Oracle sistemleri üzerinden gerçekleştirilebilecek tehditlere karşı hem bilgi sahibi olacak hem de bu bilgileri pratikte nasıl uygulayacaklarını öğreneceklerdir.

Teknik Analiz ve Uygulama

Siber güvenlik bağlamında, Oracle veritabanları üzerinden domain’e yayılma teknikleri karmaşık bir yapıya sahiptir. Bu bölümde, Oracle servislerinin nasıl kullanılabileceğini, potansiyel saldırı vektörlerini ve alınabilecek önlemleri derinlemesine inceleyeceğiz.

Adım 1: Servis Hesabı Yetkilerini Sorgulama

Oracle üzerinde çalışan servisler genellikle belirli bir kullanıcı hesabı ile ilişkilidir. Bu hesabın yetkilerinin bilinmesi, saldırganların ağda ne kadar ilerleyebileceğini belirler. Windows ortamında bu yetkileri sorgulamak için aşağıdaki komutu kullanabiliriz:

whoami /all

Bu komut, çalıştırılan hesabın sahip olduğu tüm izinleri ve grupları listeleyecektir. Eğer hesabın yüksek yetkilere sahip olduğu tespit edilirse, saldırılar için daha fazla fırsat doğar.

Adım 2: Domain Yayılma Vektörleri

Oracle veritabanları üzerinden domain’e geçiş yapmak için birkaç teknik kullanılabilir. Bunlardan en önemlileri Kerberos tabanlı saldırılar ve NTLM relay saldırılarıdır.

Kerberos Kimlik Doğrulaması

Oracle, yanlış yapılandırılmış 'Keytab' dosyaları ile Kerberos’u kullanarak şifresiz oturum açmayı destekler. Eğer bir saldırgan, bu dosyaya erişebilirse, hedef sisteme kolayca sızabilir.

Adım 3: Ağ Paylaşımlarını Listeleme

Ağa bağlı paylaşımları tespit etmek, saldırganlar için kritik bir adımdır. Windows ortamında paylaşımları listelemek için şu komutu kullanabiliriz:

net view /domain

Bu komut, ağda bulunan tüm paylaşımları listeleyecek ve potansiyel zayıf noktaları ortaya çıkaracaktır.

Adım 4: GMSA (Group Managed Service Accounts)

Modern yapılar, parolaların otomatik yönetimini sağlayan GMSA (Group Managed Service Accounts) kullanmaktadır. Bu hesapların erişilmesi, domain genelinde ciddi bir risk oluşturur. Oracle üzerinden bu hesaplara erişim sağlandığında, bir saldırgan güçlü yetkilere ulaşabilir.

Adım 5: NTLM Relay Saldırısı

Oracle üzerinden dış dünyaya (UTL_HTTP/UTL_TCP) istek atılarak, sistemin NTLM hash'lerinin saldırganın makinesine yönlendirilmesi mümkündür. Bu tür bir saldırı, kimlik bilgilerini ele geçirmek için etkili bir yöntemdir.

Adım 6: Domain Kullanıcılarını Listeleme

Eğer servis hesabı domain kullanıcısı ise, doğrudan veri tabanı üzerinden Active Directory (AD) kullanıcılarına erişim mümkündür. Bunun için aşağıdaki SQL komutunu kullanabilirsiniz:

SELECT * FROM user_name WHERE role='AD_USER';

Bu komut, tüm AD kullanıcı isimlerini listeleyecektir.

Adım 7: Veri Tabanı Linkleri (DBLink) ve Domain

Domain ortamındaki diğer veri tabanları (örn. MSSQL) ile tanımlı DBLink’ler, yan hareket için kullanılabilir. Oracle'dan farklı veri tabanlarına bağlantı kurarak, farklı kaynaklardan bilgi almak mümkündür.

Adım 8: Password Spraying

Elde edilen domain kullanıcı listesine karşı, çok kullanılan şifrelerin (örneğin: 123456) denendiği bir saldırı türüdür. Bu tür saldırılar genellikle otomatikleştirilmiş araçlar kullanılarak gerçekleştirilir.

Adım 9: DNS Üzerinden Keşif

Domaindeki diğer sunucuların IP adreslerini keşfetmek amacıyla UTL_INADDR paketi kullanılabilir:

SELECT UTL_INADDR.GET_HOST_ADDRESS('dc01.domain.local') FROM dual;

Bu SQL sorgusu, belirtilen domain controller’ın IP adresini çözümler.

Adım 10: Defansif Sıkılaştırma

Domain yayılmasını durdurmak için 'Privileged Access Management' (PAM) ve 'Tiered Administration' modellerinin uygulanması gerekmektedir. Bu modeller, yetkilerin sınırlanmasını ve izlenmesini sağlayarak, potansiyel riskleri minimize eder.

Nihai Amaç: Domain Admin

Sonuç olarak, siber güvenlik uzmanlarının amacı, veri tabanı sunucusunun domain içerisinde 'Hassas/Kritik' bir sıçrama tahtası olmasını engellemektir. Alınacak tedbirler ve uygulamalar sayesinde bu tür noktaların tespiti ve kapatılması, organizasyonlar için hayati önem taşımaktadır.

Risk, Yorumlama ve Savunma

Siber güvenlik alanında, sistemlerin ve ağların sağlıklı bir şekilde çalışmasını sağlamak amacıyla risk değerlendirmesi kritik öneme sahiptir. Oracle gibi veri tabanı platformları üzerinden gerçekleşen domain yayılma teknikleri, zorunlu olarak bu tür bir değerlendirme yapmayı gerektirir. Bu bölümde, Oracle tabanlı sistemlerde oluşabilecek riskleri, yorumlama yöntemlerini ve etkili savunma stratejilerini ele alacağız.

Elde Edilen Bulguların Güvenlik Anlamını Yorumlama

Oracle servisleri genellikle belirli bir kullanıcı hesabı altında çalışır ve bu hesabın yetkileri, sistemin güvenliği açısından önemli bir göstergedir. Uygulanan ilk adım, servis hesabı yetkilerinin doğru bir şekilde sorgulanmasıdır. whoami /all komutu ile çalıştırılan servis hesabının yetkilendirmesi, yetkili bir kullanıcıya erişim sağlanıyorsa olası bir risk oluşturmaktadır.

Yanlış yapılandırmalara sahip keytab dosyaları, Kerberos ile yapılan oturum açma işlemlerini hedef alarak saldırganların domain içindeki verilere erişimini artırabilir. Bu tür yapılandırma hataları, saldırganların sistem üzerinde daha fazla kontrol sahibi olması için bir fırsat yaratır.

Yanlış Yapılandırma veya Zafiyetin Etkisi

Yanlış yapılandırmalar veya var olan zafiyetler, siber saldırganların deşifre etmesine ve veritabanı üzerinden domain’e sızmasına olanak tanır. Örneğin, UTL_HTTP ve UTL_TCP özelliği kullanılarak dışa iletilen request’ler yoluyla, sistemin NTLM hash'leri başka bir cihaza yönlendirilerek elde edilebilir. Bu durum, "NTLM Relay Saldırısı" olarak bilinen bir tehdit modeline yol açabilecek riskleri doğurur.

Diğer bir önemli risk ise, belirli paylaşımlara (SMB gibi) erişim sağlayan ağ paylaşımlarının listelenmesidir. net view /domain komutu ile ağdaki paylaşımlar saptanabilir ve doğru yapılandırılmadığı takdirde potansiyel bir saldırı vektörü oluşturabilir.

Sızan Veri ve Topoloji Tespiti

Sızan verilerin boyutu ve yapısı, gerçekleştirilen saldırının kapsamını belirler. Servis hesabı domain yetkisine sahipse, doğrudan veri tabanı üzerinde çalışan SELECT komutları ile Active Directory (AD) kullanıcıları sorgulanabilir. Böylece domain kullanıcılarının listesi elde edilir ve "Password Spraying" tekniği ile çok kullanılan şifreler üzerinde denemeler yapılır.

SELECT user_name FROM all_users;

Yukarıdaki SQL sorgusu ile var olan tüm kullanıcı adlarına erişim sağlanabilir. Ayrıca, UTL_INADDR paketi ile Domain Controller (DC) gibi kritik sunucuların IP adresleri sorgulanarak, ağ topolojisi hakkında daha fazla bilgi edinilebilir.

Profesyonel Önlemler ve Hardening Önerileri

Domain yayılmasını durdurmak ve olası zafiyetleri en aza indirmek için alınması gereken bazı profesyonel önlemler bulunmaktadır. Öncelikle, "Privileged Access Management" (PAM) ve "Tiered Administration" modellerinin uygulanması önerilmektedir. Bu modeller, yalnızca gerekli yetkilere sahip kullanıcıların hassas sistemlere erişim sağlamasını garanti eder.

Veri tabanlarının doğru yapılandırmalarla güvenliğinin artırılması, yani hardening işlemleri, siber saldırıların etkisini azaltır. Aşağıdaki adımlar, siber güvenliği artırmak için uygulanabilir:

  1. Yetki Yönetimi: Servis hesaplarının ve kullanıcıların yetkilerinin minimuma indirilmesi.
  2. Ağ Segmentasyonu: Veri tabanı sunucularının diğer kritik sunuculara erişimlerinin kısıtlanması.
  3. Güncellemeler: Yazılım ve güvenlik yamalarının düzenli olarak uygulanması.
  4. Sızma Testleri: Sistemlerin güvenlik açıklarının tespit edilmesi amacıyla düzenli sızma testleri yapılması.

Sonuç Özeti

Oracle üzerinden gerçekleştirilen domain yayılma teknikleri, siber tehditlerin ne kadar karmaşık bir hale geldiğinin bir göstergesidir. Yanlış yapılandırmalar, zafiyetler ve sızan verilerin yönetimi, sistem güvenliği açısından hayati öneme sahiptir. Belgelenen riskler ve uygulanabilir savunma stratejileri, organizasyonların bu tehditlerle başa çıkmalarını sağlayarak, veri güvenliğini artırmalarına yardımcı olur. Uygulanacak hardening adımları ve süreklilik arz eden güvenlik denetimleri, güçlü bir siber savunma oluşturmak adına gereklidir.