CyberFlow Logo CyberFlow BLOG
Mssql Pentest

Credential Reuse ve Shared Account Kontrolü: Siber Güvenlikte Temel Adımlar

✍️ Ahmet BİRKAN 📂 Mssql Pentest

MSSQL sistemlerinde credential reuse ve shared account risklerini yönetmek için gerekli adımları keşfedin. Güvenliği artırmanın yollarını öğrenin.

Credential Reuse ve Shared Account Kontrolü: Siber Güvenlikte Temel Adımlar

MSSQL sistemlerinde credential reuse ve shared account kullanımı, güvenlik riskleri yaratabilir. Bu blogda, bu risklerin nasıl yönetileceğini ve önlemler alabileceğinizi öğrenin.

Giriş ve Konumlandırma

Siber güvenlik dünyasında, "credential reuse" ve "shared account" kavramları, güvenlik açıklarını minimize etme çabası içinde önemli bir yer tutmaktadır. Bu kavramlar, kurumsal ağlar üzerinde güvenlik politikalarının ihlal edilmesi ve kötü niyetli saldırılara zemin hazırlanması açısından kritik faktörlerdir.

Credential Reuse Nedir?

Credential reuse, aynı kullanıcı adı ve parolanın farklı sistemlerde ya da uygulamalarda tekrar kullanılması anlamına gelir. Bir kullanıcının, iş veya kişisel hayatında farklı platformlar için aynı kimlik bilgilerini kullanması, potansiyel bir güvenlik riski oluşturur. Örneğin, bir e-posta hesabınızın şifresini, sosyal medya hesaplarınızda da kullanıyorsanız, e-posta hesabınızdan bir siber saldırganın erişim elde etmesi durumunda, sosyal medya hesaplarınız da tehlikeye girer. Dolayısıyla, bir hesapta yaşanan bir sızıntı, diğer hesaplara da kolayca sirayet edebilir.

SELECT name FROM sys.sql_logins
WHERE is_policy_checked = 1;

Yukarıdaki sorgu, MSSQL üzerinde parola politikası uygulanan login nesnelerini listelemeye yardımcı olur. Bu tür bir kontrol, credential reuse riskini anlamak ve azaltmak için önemlidir.

Shared Account Nedir?

Shared account, birden fazla kullanıcının aynı hesap üzerinden sisteme erişimini ifade eder. Bu tür hesaplar genellikle ihtiyaçtan doğan bir durum gibi görünse de, kullanıcı yetkilerinin belirsizleşmesine ve izlenebilirliğin kaybolmasına yol açar. Örneğin, aynı yönetici hesabının birden fazla kişi tarafından kullanılması, hangi kullanıcıların hangi işlemleri gerçekleştirdiğinin takibini zorlaştırır.

Bir shared account kullanımı, bir organizasyon içinde ortaya çıkabilecek güvenlik ihlalleri sırasında, olayların izlenebilirliğini azaltır. Eğer bir hesap kötüye kullanılırsa, bu durum, kötü niyetli eylemler gerçekleştiren kişinin kimliğinin tespitini zorlaştırabilir.

Neden Önemlidir?

Credential reuse ve shared account kullanımı, birkaç açıdan önem taşımaktadır:

  1. Güvenlik Politikaları: Bu kavramlar, bir organizasyonun genel güvenlik politikalarının başarısını doğrudan etkiler. Bu tür uygulamalar, güvenlik ihlali durumlarında hangi hataların yapıldığını ortaya çıkarabilir.

  2. Erişim Yönetimi: Doğru erişim yönetimi eksikliği, "Unclear Ownership" ve "Generic Account Name" gibi kavramlar aracılığıyla kullanıcıların sorumluluklarını belirsizleştirir. Tanımlı hesapların izlenebilirliği, güvenlik yönetişiminin kritik bir parçasıdır.

  3. Saldırı Yüzeyini Genişletme: Credential reuse, kullanıcıların bir sistemdeki güvenlik açıklarını diğer sistemlere taşımasına neden olabilir. Bu, "Cross-System Exposure" riskini artırır ve bir hesapta gerçekleştirilen bir güvenlik açığı nedeniyle, diğer sistemlerin de saldırıya uğramasına müsaade eder.

  4. Olay Müdahale Süreçleri: Shared account kullanımı, güvenlik olayı müdahalelerini daha karmaşık hale getirir. Eğer bir hesap birden fazla kişi tarafından kullanılıyorsa, hangi kullanıcının hangi işlemi yaptığını ayrıştırmak, "Attribution Loss" durumuna yol açabilir.

Kurumsal güvenlik stratejileri oluşturulurken, credential reuse ve shared account kullanımı ile ilgili önlemlerin alınması, savunma katmanlarının güçlendirilmesi açısından kritik bir adımdır. Kullanıcıların hesap güvenliğini sağlamak için, politika geliştirme ve düzenli denetim gibi süreçlerin yürütülmesi önemlidir.

Güvenlik profesyonellerinin bu kavramları etkili bir şekilde ele alması, hem siber güvenlik stratejilerini güçlendirecek hem de organizasyon içindeki riskleri minimize edecektir. İlerleyen bölümlerde, bu kavramların daha derinlemesine incelenmesi ve ilgili önlemlerin nasıl alınacağı hakkında bilgiler sunulacaktır.

Teknik Analiz ve Uygulama

Siber güvenlikte credential reuse ve shared account kullanımı, kurumsal ortamlarda önemli güvenlik risklerine yol açan iki temel konudur. Bu başlık altında, MSSQL üzerine odaklanarak bu durumları nasıl analiz edebileceğimize dair adım adım bir yol haritası sunacağız.

Adım 1: SQL Login Envanterini Çıkarma

İlk adım, sistem üzerinde tanımlı olan SQL login'lerinin envanterini çıkarmak olacaktır. Bu işlem, mevcut hesapların güvenlik durumunu değerlendirmek için önemlidir. Aşağıdaki SQL sorgusu, sistemdeki tüm SQL login'lerini listelemeye yarar:

SELECT name FROM sys.sql_logins;

Adım 2: Kimlik Bilgisi Risk Türleri

Kimlik bilgisi risklerini değerlendirmek için, farklı risk türlerini belirlememiz gerekiyor. Bu türler arasında credential reuse, shared account kullanımı ve orphaned access pattern gibi kavramlar yer alır. Credential reuse, aynı kimlik bilgilerinin birden fazla sistemde kullanılmasını ifade ederken; shared account, birden fazla kişinin aynı hesabı kullanarak sisteme erişmesini ifade eder.

Adım 3: Tekrar Kullanım Kavramı

Credential reuse, güvenlikte sıkça karşılaşılan bir durumdur. Özellikle birden fazla sistemde aynı kullanıcı adı ve parolanın kullanılması, birçok güvenlik açığına neden olabilir. Bu nedenle, kimlik bilgileri ile ilgili olan politikaların gözden geçirilmesi ve gerekli güvenlik önlemlerinin alınması gerekir.

Adım 4: Parola Politikası Uygulanan Hesapları İnceleme

Bir diğer önemli aşama, hesapların parola politikalarına tabi olup olmadığını kontrol etmektir. Aşağıdaki sorgu, login isimleri ile parola politikası durumunu listeleyerek bu incelemeyi yapmamıza olanak sağlar:

SELECT name, is_policy_checked FROM sys.sql_logins;

Adım 5: Shared Account Göstergeleri

Shared account kullanımı, bazı belirli göstergelerle tespit edilebilir. Örneğin, aynı login kullanan farklı kullanıcı etkinlikleri veya ortak hesap isimleri gibi durumlar, shared account kullanımına işaret edebilir. Bu durumlar, güvenlikle ilgili sorunların baş göstermesine yol açabilir.

Adım 6: Ortak Hesap Kavramı

Ortak hesaplar, birden fazla kişinin aynı login hesabını kullanarak sisteme eriştiği durumlardır. Bu tür hesaplar, izlenebilirliği zorlaştırarak olası bir güvenlik sorununu artırır. Unclear ownership gibi kavramlar, ortak hesapların kullanımına bağlı olarak gelişebilir.

Adım 7: Hesap Oluşturulma ve Değişiklik Zamanlarını Listeleme

Hesapların oluşturulma ve değişiklik tarihleri, güvenlik yönüyle önemli bilgiler sunar. Aşağıdaki sorgu ile hesapların oluşturulma ve güncellenme tarihleri elde edilebilir:

SELECT name, create_date, modify_date FROM sys.sql_logins;

Adım 8: Reuse Riskinin Sonuçları

Credential reuse’un getirdiği riskler arasında cross-system exposure ve attribution loss ön plana çıkar. Bu kavramlar, bir yerde ele geçirilen kimlik bilgilerinin başka sistemlerde de kullanılma olasılığını artırır. Ayrıca, ortak hesaplar nedeniyle hangi kişinin hangi işlemi yaptığını ayırmak zorlaşır.

Adım 9: Hesap Sahipliği Kavramı

Hesap sahipliği, güvenlik yönetişiminde temel bir unsur olarak öne çıkar. Bir hesabın kime ait olduğu ve sorumluluğunun kimde olduğu, güvenilirlik açısından kritik bir öneme sahiptir.

Adım 10: Devre Dışı Hesapları Listeleme

Kullanılmayan hesaplar, sistem üzerinde güvenlik açığı yaratabilir. Aşağıdaki sorgu, devre dışı durumda olan hesapları listeleyerek bu durumu göz önüne alabiliriz:

SELECT name, is_disabled FROM sys.sql_logins;

Adım 11: Savunma Önlemleri

Credential reuse ve shared account riskini azaltmak için çeşitli savunma önlemleri alınması gereklidir. Bu önlemler arasında, unique account assignment ve credential rotation yöntemleri yer alır. Unique account assignment, her kullanıcıya kişisel ve izlenebilir bir hesap tanımlanmasını sağlarken, credential rotation, parolaların düzenli olarak değiştirilmesini temin eder.

Adım 12: Nihai Güvenlik Hedefi

Son olarak, hedefimiz, hesapların izlenebilir, benzersiz ve yönetilebilir olmasını sağlamaktır. Güvenlik politikalarının doğru bir şekilde uygulanması, kurumsal siber güvenlik stratejilerinin başarısı için kritik öneme sahiptir. Bu aşamalar, siber güvenlikte credential reuse ve shared account kontrolü konusundaki temel adımları oluşturarak, kullanıcıların güvenliğini sağlamayı hedefler.

Risk, Yorumlama ve Savunma

Risklerin Değerlendirilmesi ve Yorumlanması

Siber güvenlik alanında, kullanıcı kimlik bilgilerinin (credential) yeniden kullanımı ve ortak hesap kullanımı, kurumsal sistemlerin ve verilerin güvenliği üzerinde ciddi tehditler oluşturur. Bu bağlamda, kimlik bilgilerinin kötüye kullanılmasına sebep olan riskleri değerlendirmek, bunların siber güvenliğe etkilerini yorumlamak ve gerekli savunma önlemlerini almak hayati önem taşımaktadır.

Kötü Yapılandırmalar ve Zafiyetler

Güvenlik zafiyetleri, genellikle yanlış yapılandırmalardan kaynaklanır. Örneğin, bir SQL veritabanında kullanıcı hesaplarının düzgün bir şekilde yönetilmemesi, ortak hesap kullanımına ve dolayısıyla kimlik bilgisi yeniden kullanımına yol açabilir. Ortak hesap kullanımı, birden fazla kullanıcının aynı hesap altında işlem yapmasına olanak tanır, bu da hesap sahibinin izlenebilirliğini azaltır. Bu durum, güvenlik ihlalleri sırasında olayların izlenmesini zorlaştırarak tehditlerin gözden kaçmasına neden olabilir.

Yapılandırma hatalarının bir diğer örneği, kullanıcı hesaplarının parola politikalarının uygulanmaması durumudur. Eğer hesaplar için güçlü parolalar belirlenmezse veya bu parolalar düzenli aralıklarla değiştirilmezse, saldırganların hesabı ele geçirmesi kolaylaşır.

Sızan Veri ve Servis Tespiti

Kötü yönetilen kullanıcı hesapları nedeniyle meydana gelen ihlaller, genellikle sızan verilerin tespiti ile kendini gösterir. Sızabilir verilerin yüksek değeri ve kapsamı göz önüne alındığında, organizasyonun güvenlik durumunun değerlendirilmesi ve olası zafiyetlerin belirlenmesi gerekmektedir. Örneğin;

SELECT name, is_policy_checked FROM sys.sql_logins WHERE is_policy_checked = 0;

Bu sorgu, parola politikalarının uygulanmadığı kullanıcı hesaplarını listeleyerek, potansiyel zafiyetleri belirlemeye yardımcı olur. Ek olarak, sistem üzerinde net bir döküm elde edilmesi, hangi servislerin ne kadar güvenli olduğunu da göstermektedir. Sistem topolojisinin detaylı bir şekilde analiz edilmesi, aynı zamanda ortak hesap kullanımının izlenebilirliğini artırabilir ve güvenlik zafiyetlerini azaltabilir.

Profesyonel Önlemler ve Hardening Önerileri

Kurumsal güvenlik yönetiminde alınacak önlemler, hesapların düzenli bir şekilde incelemesini ve yönetimini içermelidir. Bu bağlamda, şu önlemler önerilmektedir:

  • Parola Politikalarının Uygulanması: Kullanıcı hesaplarına güncel ve güçlü parola politikaları uygulanmalı ve bu parolaların düzenli aralıklarla değiştirilmesi sağlanmalıdır.

  • Hesap Yönetimi: Her kullanıcıya benzersiz ve izlenebilir bir hesap atanmalı; ortak hesap kullanımı en aza indirilmelidir. Bu, "Unique Account Assignment" prensibi ile de desteklenmelidir.

  • Erişim Kontrolü: Erişim yönetişimi süreci içerisinde, "Access Ownership Review" gerçekleştirilerek her hesabın sahibinin ve kullanma amacının doğruluğu kontrol edilmelidir.

  • Credential Rotation: Parolaların düzenli aralıklarla değiştirilmesi sağlanmalıdır. Bu sayede, ele geçirilen parolaların kullanım süresi kısıtlanabilir.

  • Incident Response Planı: Olası ihlaller için önceden belirlenmiş bir müdahale planı oluşturulmalı ve bu plan periyodik olarak gözden geçirilmelidir.

Sonuç

Credential reuse ve shared account kontrolü, siber güvenlikte dikkate alınması gereken temel unsurlardandır. Bu risklerin etkili bir şekilde yönetilmesi, hem sistemlerin güvenliğini artırır hem de olası alanları azaltır. Kurumsal ölçekte etkili güvenlik yönetimi uygulamaları, bu tür tehditlere karşı koyma konusunda önemli bir adım olacaktır. Unutulmamalıdır ki, hem bireysel hem de kurumsal düzeyde alınacak güvenlik önlemleri, siber saldırganların hedeflerini daraltmakta etkin rol oynamaktadır.