Güvenlik: Depolamada Asla Tutulmaması Gerekenler
Belirteçleri veya PII'yi localStorage'da depolamaktan kaçının
Güvenlik: Depolamada Asla Tutulmaması Gerekenler, CoddyKit'te ücretsiz bir HTML Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, HTML Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. HTML Academy kursu toplamda 4 dersten oluşur.
Depolama Düz Metindir
localStorage ve sessionStorage verileri, kullanıcı profili altında diskte şifrelenmemiş olarak saklar. Dosya sistemine erişimi olan herhangi bir işlem — kötü amaçlı yazılım, yedekleme araçları veya oturum açmış başka bir kullanıcı da buna dahildir — tarayıcıdan geçmeden sakladığınız her değeri okuyabilir.
Her Betik Tarafından Erişilebilir
Kaynak üzerinde çalışan tüm betikler aynı Storage alanını paylaşır. Başarılı bir XSS saldırısı, güvenliği ihlal edilmiş bir üçüncü taraf SDK'sı veya kötü amaçlı bir tarayıcı uzantısı localStorage.getItem çağırarak saklanan her değeri dışarı aktarabilir. Betik başına yalıtım yoktur.
Kimlik Doğrulama Belirteçlerini Asla Saklamayın
Oturum belirteçlerini, JWT'leri, yenileme belirteçlerini veya API anahtarlarını localStorage'a koymayın. Bir saldırgan tek bir JavaScript satırı eklerse belirteç hemen sızar. Belirtecin JavaScript tarafından erişilememesi için httpOnly, Secure ve SameSite çerezlerini kullanın.
Parolaları Asla Saklamayın
Parolaları herhangi bir biçimde — düz metin, özetlenmiş veya şifrelenmiş olarak — istemci tarafında saklamak yanlıştır. İstemci tarafında özetleme yapmak, saldırgan özeti okuyup yeniden kullanabildiği için yardımcı olmaz. Parola işlemleri tamamen sunucuda, bcrypt gibi özel bir parola özeti kullanılarak gerçekleştirilmelidir.
Kredi Kartı Verilerini Asla Saklamayın
PCI-DSS; kart numaralarının, CVV'lerin, manyetik şerit verilerinin veya son kullanma tarihlerinin istemci depolamasında saklanmasını yasaklar. Bunun yerine, kaynağınıza bağlı kısa ömürlü bir belirteç döndüren belirteç tabanlı bir ödeme sağlayıcısı (Stripe, Braintree, Adyen) kullanın.
Kişisel Tanımlayıcıları Asla Saklamayın
Devlet tarafından verilen kimlik bilgileri, doğum tarihlerinin tamamı, ev adresleri ve tıbbi veriler; düzenleyici kurumların (GDPR, HIPAA) ve saldırganların ilgisini çeker. Yalnızca mevcut oturum için gerekenleri saklayın, gerektiğinde yeniden isteyin ve asıl doğruluk kaynağının sunucu olmasını sağlayın.
XSS Hasarı Çoğaltır
document.cookie verilerini sızdıran bir XSS hatası kötüdür. Aynı hata, belirteçleri localStorage içinde saklayan bir sayfada ortaya çıkarsa saldırgan, saklanan tüm değerleri bir anda ele geçirir. localStorage alanını, "bir betiği ele geçirdiyseniz her şeyi ele geçirmişsinizdir" yüzeyi olarak değerlendirin.
Şifreleme Sizi Kurtarmaz
JavaScript içinde de bulunan bir anahtarla değerleri şifrelemek gerçek bir koruma sağlamaz; şifreli metni okuyabilen saldırgan anahtarı da okuyabilir. Gerçek gizli bilgiler sunucu tarafında kalmalı ve istemci tarafında asla kalıcı olarak saklanmadan yeniden verilmelidir.
Saklanması Güvenli Veriler
Kullanıcı arayüzü tercihleri (tema, daraltılmış kenar çubuğu, dil), hassas olmayan özellik bayrakları, taslak form içerikleri ve geçici sihirbaz durumu güvenle saklanabilir. Bunlar zaten kullanıcı tarafından görülebilir ve sızdırılmaları hesap ele geçirmeyi mümkün kılmaz.
localStorage.setItem("theme", "dark");
localStorage.setItem("sidebar:collapsed", "true");
localStorage.setItem("draft:post-123", draftMarkdown);Kimlik Doğrulama için Çerezleri Kullanın
Kimlik doğrulamayı Set-Cookie: token=...; HttpOnly; Secure; SameSite=Strict aracılığıyla sağlayın. HttpOnly bayrağı, çereze JavaScript tarafından erişilmesini engeller; böylece sayfada başka hatalar bulunsa bile belirteç çalan XSS yüklerinin çoğunu etkisiz hâle getirir.
Depolama Kullanımı için Önlemler
Hassas görünümlü verileri önbelleğe almak zorundaysanız kapsamını sıkı biçimde sınırlayın (kısa TTL kullanın, oturum kapatıldığında temizleyin, sessionStorage aracılığıyla sekme kapatıldığında kaldırın), eklenen betikleri engellemek için katı bir İçerik Güvenliği Politikası uygulayın ve kimlik doğrulaması yapılmış sayfalarda çalışan her üçüncü taraf betiğini denetleyin.
Bilgi Kontrolü
Kimlik doğrulama belirteçlerinin localStorage içinde saklanması neden güvenlik riski olarak kabul edilir?
Özet
Web Depolama düz metin biçimindedir, betikler tarafından okunabilir ve kaynak başına paylaşılır. Kimlik doğrulama belirteçlerini, parolaları, ödeme verilerini veya düzenlemeye tabi kişisel bilgileri asla buraya koymayın. Gizli bilgileri httpOnly çerezlerinde tutun ve localStorage alanını, kullanıcının zaten görebileceği zararsız kullanıcı arayüzü durumları için ayırın.
Sıkça Sorulan Sorular
“Güvenlik: Depolamada Asla Tutulmaması Gerekenler” dersi ücretsiz mi?
Evet — “Güvenlik: Depolamada Asla Tutulmaması Gerekenler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve HTML Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. HTML Academy kursu toplamda 4 dersten oluşur.
“Güvenlik: Depolamada Asla Tutulmaması Gerekenler” dersinde ne öğreneceğim?
Belirteçleri veya PII'yi localStorage'da depolamaktan kaçının HTML Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
HTML Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te HTML Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Güvenlik: Depolamada Asla Tutulmaması Gerekenler” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu HTML Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her HTML Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- localStorage ve sessionStorage Karşılaştırması
- Öğeleri Alma, Ayarlama ve Kaldırma
- Depolama Olaylarını Dinleme
- Güvenlik: Depolamada Asla Tutulmaması Gerekenler