Ana Güvenlik Çerçevesi: Modern Uygulamalar için Çok Katmanlı Güvenlik Çerçevem

Ana Güvenlik Çerçevesi: Modern Uygulamalar için Çok Katmanlı Güvenlik Çerçevem

18.05.2026

MSF

Özet

Ana Güvenlik Çerçevesi (MSF), teknoloji yığınının her düzeyindeki modern uygulamaları korumak için tasarlanmış kapsamlı, çok dilli, çok katmanlı bir güvenlik çerçevesidir. Python ve TypeScript'te uygulanan MSF, kimlik doğrulama ve şifrelemeden web saldırısı tespitine, ağ analizine, bulut güvenliğine, yapay zeka korumasına, uyarlanabilir bal küplerine, aktif savunmaya ve kurumsal uyumluluğa kadar her şeyi kapsayan 28 modüle dağıtılmış 350'den fazla işlev sunar. Bu makale, çerçevede uygulanan her modülün, işlevin, tasarım modelinin ve güvenlik mekanizmasının ayrıntılı bir teknik analizini sunmaktadır.


1. Giriş

1.1. Sorun

Modern uygulamalar giderek daha karmaşık bir tehdit yelpazesiyle karşı karşıyadır. Tek bir sistem aynı anda birden fazla katmandaki saldırılarla hedef alınabilir: istemlerin dil modellerine enjeksiyonu, web güvenlik açıklarından yararlanma (XSS, SQLi, SSRF), bağlantı noktası tarama, DDoS saldırıları, yanlış bulut yapılandırmaları, güvenliği ihlal edilmiş konteynerler, yazılım tedarik zincirindeki savunmasız bağımlılıklar ve mevzuat uyumluluğu ihlalleri.

Güvenliğe yönelik geleneksel yaklaşım (her sorunu yalıtılmış araçlarla çözmek), katmanlar arasında boşluk bırakan savunma siloları yaratır. MSF, uygulamanın tüm katmanlarında çalışan birleşik bir güvenlik platformu sunarak bu sorunu çözmek için tasarlandı.

1.2. Ana Güvenlik Çerçevesi Nedir?

MSF, iki dilde uygulanan açık kaynaklı bir güvenlik çerçevesidir: Python ve TypeScript. Her modül her iki dilde de aynı anlambilimle mevcut olup, çok dilli ekiplerin teknoloji yığınından bağımsız olarak aynı güvenlik yeteneklerini kullanmasına olanak tanır.

Çerçeve dört sütun etrafında yapılandırılmıştır:

  1. Önleme: Giriş doğrulama, temizleme, şifreleme, yapılandırma güçlendirme
  2. Algılama: Saldırı modellerinin, istatistiksel anormalliklerin, kötü amaçlı yazılım imzalarının, şüpheli davranışların analizi
  3. Cevap: Otonom uyarılar, karantina, kontrol altına alma, kendi kendini iyileştirme
  4. Uyumluluk: LGPD, GDPR, HIPAA, PCI-DSS'nin otomatik doğrulanması

1.3. Proje Metrikleri

  • 243 otomatik test geçti (77 Python + 166 TypeScript)
  • 180'den fazla fonksiyona sahip 14 Python modülü
  • 170'den fazla fonksiyona sahip 14 TypeScript modülü
  • OpenTelemetry telemetrisi tüm işlevlere entegre edilmiştir
  • Yapılandırılmış günlük kaydı (TypeScript'te pin, Python'da loguru)
  • Otomatik geçersiz kılma özelliğine sahip bellek içi önbellek
  • Yapılandırılabilir güvenlik kuralları için Politika Motoru
  • Modüller arasında eşzamansız iletişim için Olay Veriyolu

2. Çerçeve Mimarisi

2.1. Altyapı Katmanı (Çekirdek)

MSF tabanı, diğer tüm modüller tarafından paylaşılan altı altyapı bileşeninden oluşur:

Global Yapılandırma: Güvenlik parametrelerini, eşikleri, izin verilen/engellenen listeleri ve şifreleme anahtarlarını saklayan merkezi bir yapılandırma nesnesi. Yapılandırma, uygulamayı yeniden başlatmaya gerek kalmadan ortam değişkenlerinden gerçek zamanlı olarak yeniden yüklenebilir.

Politika Motoru: Güvenlik politikalarını yapılandırılmış ifadeler olarak tanımlamanıza olanak tanıyan bir kural değerlendirme sistemi. Motor, mantıksal işleçleri, bileşik koşulları ve uygulama eylemlerini (izin ver, reddet, uyar, günlüğe kaydet) destekler.

Olay Veri Yolu: Modüllerin güvenlik olaylarını yayınlamasına ve diğer modüllerin tepki vermek üzere abone olmasına olanak tanıyan eşzamansız bir pub/sub sistemi. Olay veriyolu, bir olay geçmişini ve işlenemeyen olaylar için bir geçersiz ileti kuyruğunu içerir.

Metrik Kaydı: Sayaçları (kümülatif sayımlar için), göstergeleri (anlık değerler için) ve histogramları (dağılımlar için) destekleyen bir ölçüm sistemi. Tüm keşif işlevleri metrikleri otomatik olarak yayınlar.

Önbellek Yöneticisi: Pahalı doğrulama sonuçlarını, IP engelleme listelerini, oturum parmak izlerini ve iptal edilen belirteçleri depolamak için kullanılan, yapılandırılabilir TTL'ye (Yaşam Süresi) sahip bir LRU (En Son Kullanılan) önbellek.

OpenTelemetry: OpenTelemetry standardıyla tam entegrasyon, her güvenlik işlemi için dağıtılmış izleme aralıkları oluşturma. Bu renk sağlarGüvenlik olaylarını mikro hizmet mimarilerindeki istek izleriyle ilişkilendirin.

Yapısal Kaydedici: İzleme kimliği, önem derecesi, modül ve güvenlik meta verileri gibi otomatik bağlam dahil olmak üzere pin (TypeScript) ve loguru (Python) ile JSON formatında yapılandırılmış günlük kaydı.

İstisna İşleme: Güvenlik hatalarının ayrıntılı şekilde işlenmesine olanak tanıyan bir güvenlik istisnaları hiyerarşisi ("SecurityError", "ValidationError", "AuthenticationError", "EncryptionError").

2.2. Koruma Katmanı

Altyapıyla ilgili olarak MSF, güvenlik modüllerini üç işlevsel katman halinde organize ediyor:

Giriş Katmanı: Web, API, Kimlik Doğrulama -- uygulama giriş noktalarını koruyun Altyapı Katmanı: Ağ, Bulut, Dosya -- temeldeki altyapıyı korur Akıllı Katman: Yapay Zeka, İzleme, Savunma, Honeypot - zeka ve adaptasyonla koruma


3. Kimlik Doğrulama Modülü (Kimlik Doğrulama)

Kimlik doğrulama modülü, Python'da 30 ve TypeScript'te 7 işlevle çerçevedeki en kapsamlı modüldür. Kimlik doğrulama yaşam döngüsünün tamamını kapsar: belirteç oluşturma ve doğrulama, oturum yönetimi, saldırı algılama ve gelişmiş kimlik doğrulama yöntemleri.

3.1. JWT (JSON Web Belirteçleri)

MSF, basit oluşturma ve doğrulamanın ötesine geçen eksiksiz bir JWT sistemi uygulamaktadır:

  • generate_jwt konu, özel talepler, yapılandırılabilir son kullanma tarihi ve ihraççı ile belirteçler oluşturur. HS256, HS384, HS512, RS256, ES256 algoritmalarını destekler.
  • validate_jwt imzayı, son kullanma tarihini, zorunlu talepleri kontrol eder ve kodu çözülmüş veriyi döndürür. 'Verify_exp' parametresi, belirli durumlar için süre sonu denetimini devre dışı bırakmanıza olanak tanır.
  • revoke_jwt, jetonun JTI'sini (JWT ID) iptal kara listesine ekler. Bu, belirtecin doğal sona erme tarihinden önce oturumu kapatmak için gereklidir.
  • 'rotate_jwt' eski jetonu doğrular ve aynı kimliğe sahip yeni bir jeton yayınlayarak kullanıcı oturumunu kesintiye uğratmadan sessiz jeton rotasyonuna olanak tanır.
  • "validate_refresh_token", belirli bir kullanıcıya ait olduklarını doğrulayarak yenileme jetonlarını doğrular ve çalınan bir yenileme jetonunun başka bir kullanıcı tarafından kullanılmasını önler.

3.2. Oturum Yönetimi

MSF oturum sistemi, oturumun ele geçirilmesine karşı koruma içerir:

  • "secure_session" user_id, IP, kullanıcı aracısı ve cihazın parmak izini birbirine bağlayan bir oturum oluşturur. Bu, oturum bağlamındaki şüpheli değişiklikleri tespit etmenize olanak tanır.
  • 'validate_session', oturum_id'sinin kullanıcıya ait olup olmadığını ve geçerli IP'nin, oturum oluşturulurken kaydedilen IP ile eşleşip eşleşmediğini kontrol eder.
  • 'detect_session_hijack' mevcut IP'yi ve kullanıcı aracısını geçmiş oturum verileriyle karşılaştırır. IP farklı bir alt ağa taşınmışsa veya kullanıcı aracısı önemli ölçüde değişmişse, işlev olası ele geçirmeyi belirten true değerini döndürür.
  • detect_token_replay halihazırda kullanılmış olan jetonların kaydını tutar. Bir belirtecin birden fazla kez sunulması durumunda işlev, yeniden oynatma saldırısını algılar.

3.3. Kimlik Doğrulama Saldırısı Tespiti

MSF, kimlik doğrulama sistemlerine yönelik üç ana saldırı türünü tespit ediyor:

  • 'detect_credential_stuffing', tek bir IP'den birden fazla kullanıcı hesabına yapılan oturum açma girişimlerini izler. Bir IP belirli bir süre içinde birçok farklı kullanıcı adını denerse, kimlik bilgisi doldurma olarak işaretlenir.
  • detect_bruteforce tek bir hesaba yönelik oturum açma girişimlerini izler. Deneme sayısı zaman penceresinde eşiği aşarsa kaba kuvvet olarak işaretlenir.
  • `detect_impossível_travel' iki ardışık oturum açma konumu arasındaki mesafeyi hesaplar ve bunu geçen zamanla karşılaştırır. Noktalar arasında seyahat etmek için gereken hız makul fiziksel sınırları aşarsa (örn. 900 km/saat), işlev imkansız seyahati algılar.
  • "geo_velocity_check", ardışık tüm giriş noktaları arasındaki coğrafi hızı hesaplayarak imkansız seyahat tespitini birden fazla konuma genişletir.

3.4. Uyarlanabilir ve Risk Tabanlı Kimlik Doğrulama

  • adaptive_auth, bağlamın risk puanına göre kimlik doğrulama gereksinimlerini ayarlar. Tanıdık bir konumdaki tanıdık bir cihazdan oturum açmak yalnızca parola gerektirebilirken, farklı bir ülkedeki yeni bir cihazdan oturum açmak ek MFA gerektirebilir.
  • "davranışsal_auth", kullanıcının kimliğini kayıtlı davranış temeline göre doğrulamak için davranışsal biyometriyi (yazma deseni, fare hareketi, gezinme ritmi) kullanır.
  • risk_ Based_auth birden fazla riskten oluşan bileşik bir risk puanı hesaplarfaktörlere göre: konum, cihaz, zaman, davranış, IP itibarı ve güven düzeyine sahip bir kimlik doğrulama kararı döndürür.

3.5. TOTP ve Yedek Kodlar

  • generate_totp RFC 6238'e uygun olarak, yapılandırılabilir rakam ve nokta ile Zamana Dayalı Tek Kullanımlık Şifre kodları üretir.
  • "validate_totp", TOTP belirteçlerini saat kayma toleransıyla ("sürüklenme" parametresi) doğrular ve sunucu ile kullanıcının cihazı arasındaki senkronizasyon bozukluğunu telafi eder.
  • verify_backup_code, yedekleme/kurtarma kodlarını doğrular ve kullanır; kullanımdan sonra yeniden kullanımı önlemek için bunları geçerli listeden kaldırır.

3.6. WebAuthn ve Geçiş Anahtarları

  • "passkey_auth", kimlik doğrulayıcının kriptografik imzasını, kimlik doğrulayıcı verilerini ve JSON istemci verilerini kontrol ederek FIDO2/WebAuthn kimlik doğrulamalarını doğrular.
  • "webauthn_verify", kayıtlı genel anahtara göre kaynağın, RP Kimliğinin (Bağlı Olan Taraf Kimliği) ve kriptografik imzanın doğrulanması da dahil olmak üzere tam bir WebAuthn onay denetimi gerçekleştirir.
  • "phishing_tained_auth", bir kimlik doğrulama yönteminin kimlik avına karşı dirençli olup olmadığını kontrol eder ve doğrulanmış doğrulama ile FIDO2 seviye 2 veya üzerini gerektirir.

3.7. Şifre Güvenliği

  • "password_entropy", bir şifrenin Shannon entropisini hesaplayarak şifrenin bilgi karmaşıklığını bit cinsinden ölçer. Entropisi 40 bitin altında olan şifreler zayıf olarak kabul edilir.
  • 'detect_weak_password', entropi analizini ortak şifre listelerine (rockyou, top 10000 vb.) karşı kontrolle birleştirir.
  • password_breach_check, bilinen ihlallerin (Pwned Oldum mu ve benzeri) bir veritabanında bir şifre karmasının görünüp görünmediğini kontrol eder.
  • "secure_password_hash", PBKDF2, bcrypt, scrypt ve Argon2 gibi algoritmaları destekleyen, kriptografik tuz ve anahtar genişletme (yinelemeler) ile şifre karmaları oluşturur.
  • verify_password_hash, sabit zamanlı güvenli karşılaştırmayı kullanarak bir şifreyi depolanan karmayla karşılaştırır.

3.8. Cihaz ve Tarayıcı Parmak İzi

  • "device_fingerprint", kullanıcı aracısı, ekran çözünürlüğü, saat dilimi, diller ve platform gibi özelliklerden benzersiz bir cihaz tanımlayıcısı oluşturur.
  • 'browser_fingerprint', oluşturma özelliklerine dayalı olarak gelişmiş parmak izi alma tekniklerini kullanır: 2D tuval karması, WebGL karması, ses bağlamı karması ve yüklü yazı tiplerinin listesi.
  • "biyometrik_doğrulama", biyometrik verileri (parmak izi, yüz tanıma, iris) yapılandırılabilir benzerlik eşiğine sahip kayıtlı bir şablonla karşılaştırır.

4. Kriptografi Modülü (Kripto)

Şifreleme modülü, kimlik doğrulama ve bütünlüğe odaklanarak modern simetrik, asimetrik ve kuantum sonrası şifreleme algoritmalarını uygular.

4.1. Kimliği Doğrulanmış Şifreleme

  • "encrypt_data", AES-256-GCM ve ChaCha20-Poly1305'i destekleyen, ilişkili verilerle (AEAD) kimliği doğrulanmış şifrelemeyi kullanır. İlişkili veriler (AAD), şifrelenmemiş meta verileri şifreli metne kimliği doğrulanmış bir şekilde bağlamanıza olanak tanır.
  • "decrypt_data", düz metni döndürmeden önce kimlik doğrulama etiketini kontrol ederek kimlik doğrulamalı şifre çözme işlemini gerçekleştirir. Etiket eşleşmezse şifre çözme başarısız olur ve oracle padding ve şifreli metin manipülasyonu saldırıları önlenir.
  • "encrypt_file" ve "decrypt_file", kimliği doğrulanmış şifrelemeyi diskteki dosyalara genişleterek nonce, salt ve meta verileri güvenli bir şekilde yönetir.

4.2. Hibrit Kriptografi

  • hybrid_encrypt, asimetrik şifrelemeyi (anahtar değişimi için) simetrik şifrelemeyle (yük için) birleştirir. Simetrik anahtar rastgele oluşturulur, yükü şifrelemek için kullanılır ve ardından alıcının genel anahtarıyla şifrelenir.
  • hybrid_decrypt işlemi tersine çevirir: simetrik anahtarın şifresini özel anahtarla çözer ve ardından yükün şifresini çözer.

4.3. Quantic Sonrası Kriptografi

MSF, NIST tarafından standartlaştırılan kuantum sonrası algoritmaları uygular:

  • "pqc_encrypt" ve "pqc_decrypt", kuantum bilgisayara dayanıklı şifreleme için ML-KEM'i (eski adıyla Kyber) kullanır.
  • kyber_key_exchange, kuantum sonrası paylaşılan anahtar kurulumu için Kyber anahtar değişim protokolünü uygular.
  • "dilithium_sign", kuantum sonrası dijital imzalar için ML-DSA'yı (eski adıyla Dilithium) kullanır.
  • "sphincs_sign", durum bilgisi olmayan bir kuantum sonrası alternatif olarak hash işlevlerine dayalı bir imza şeması olan SPHINCS+'ı kullanır.
  • "falcon_sign", kompakt imzalara sahip kafes tabanlı bir imza şeması olan Falcon'u kullanır.

4.4. HMAC ve İmza Doğrulaması

  • generate_hmac bir Hash-b üretirHMAC-SHA256, HMAC-SHA384, HMAC-SHA512 veya HMAC-SHA3-256 kullanılarak Mesaj Kimlik Doğrulama Kodu oluşturulur.
  • verify_hmac, sabit zamanlı karşılaştırmayı kullanarak hesaplanan HMAC'yi beklenen HMAC ile karşılaştırır.
  • "verify_signature", dijital imzaları (Ed25519, ECDSA, RSA-PSS) bir mesaja ve genel anahtara göre doğrular.

4.5. Şifreleme Yardımcı Programları

  • "secure_random", "os.urandom()" (Python) veya "crypto.getRandomValues()" (TypeScript) kullanarak kriptografik olarak güvenli baytlar oluşturur.
  • "secure_memory_erase", hassas verileri içeren bellek bölgelerinin üzerine sıfırlar yazarak verilerin kullanımdan sonra bellekte kalmasını engeller.
  • "anti_timing_compare", ilk farkın nerede oluştuğuna bakılmaksızın tüm baytlar üzerinde yineleme yaparak iki bayt dizisini sabit zamanda karşılaştırır ve zamanlama saldırılarını önler.

5. Web Modülü

Web modülü, Python'da 30 ve TypeScript'te 35 işlevle saldırı tespiti açısından en kapsamlı olanıdır. OWASP Top 10 ve sonrasında listelenen tüm web güvenlik açığı kategorilerini kapsar.

5.1. Siteler Arası Komut Dosyası Çalıştırma (XSS)

  • "detect_xss", şunları içeren XSS kalıpları için girişi analiz eder: "