Previous slide Next slide Toggle fullscreen Open presenter view
CEN429 Güvenli Programlama · Hafta 13
Güvenlik Gereksinimleri
CEN429 Güvenli Programlama — Hafta 13
Dr. Öğr. Üyesi Uğur CORUH · 11.12.2026
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bugün (3 saat)
Zaman
Bölüm
Ne yapılıyor
0:00–0:20
1
Gereksinim nedir, iyi gereksinim nasıl yazılır?
0:20–0:50
2–3
Gereksinimden kanıta izlenebilirlik; gereksinim bloğu kalıbı ve devredilen gereksinimler
0:50–1:00
Ara
1:00–1:30
4
Ortak Kriterler: TOE, ST, PP, SFR/SAR, EAL
1:30–1:50
5
FIPS 140-3 ve kriptografik modül doğrulaması
1:50–2:00
Ara
2:00–2:25
6
ETSI, GSMA, EMVCo, PCI MPoC, OWASP MASVS
2:25–2:50
7–8
Gereksinimleri plana ve varlık yönetimine aktarmak; dersin gereksinim aileleri — uyum matrisi etkinliği
2:50–3:00
9+
Proje adımı (S14, S17), kendini sınama
Öğrenme çıktıları (ÖÇ.5, 7): iyi bir güvenlik gereksinimini kötüsünden ayırmak · izlenebilirlik/uyum matrisi kurmak · CC, FIPS, ETSI, EMVCo, PCI, MASVS'in ne istediğini karşılaştırmak
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Önceki haftalardan gelenler
Varlık, tehdit ve uygulama koruma planı — bir yazılımın güvenliğini yöneten yazılı plan: kapsam, mimari, varlıklar, tehditler, karşı önlemler, doğrulama, kalan risk; her varlığın nerede durduğu, ne zaman oluşup silindiği ve hangi korumayı (C/I) gerektirdiği bir varlık tablosunda listelenir (Hafta 1)
Bağımsız değerlendirme, bulgu ve kanıt — bir ürünün geliştiricisi değil bağımsız bir laboratuvarın kanıta dayalı yürüttüğü değerlendirme süreci; değerlendiricinin belgelediği her eksiklik bir bulgudur (Hafta 12)
Bu hafta: varlık tablosunu her gereksinime bağlıyoruz, bağımsız değerlendirme disiplinini "gereksinimden kanıta izlenebilirlik zinciri" olarak kullanıyoruz — çıktı, projenizin uyum matrisi (S17) ve devredilenler (S14) .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bu haftanın kavramları
Her terim, gövdede ilk geçtiği yerde tanımlanır; burada yalnız nerede olduğunu işaretliyoruz.
Kavram
Nerede
Gereksinim
Bölüm 1
Üç tür gereksinim
Bölüm 1
İyi ve kötü gereksinim
Bölüm 1
İzlenebilirlik
Bölüm 2
Uyum matrisi
Bölüm 2
Gereksinim durumları
Bölüm 2
Devredilen gereksinim
Bölüm 3
Ortak Kriterler (CC)
Bölüm 4
TOE, ST, PP
Bölüm 4
SFR, SAR, EAL
Bölüm 4
FIPS 140-3
Bölüm 5
Sektör standartları
Bölüm 6
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
1. İyi gereksinim nasıl yazılır?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kısa tarihçe (1) — temel standartlar
1983/1985 — TCSEC (Orange Book), ABD Savunma Bakanlığı'nın gereksinim düzeylerine ilk girişimi
1984/1998 — IEEE 830 , herhangi bir yazılım gereksinim belirtimini nasıl yazacağını anlatır → yerini ISO/IEC/IEEE 29148 'e bırakır (2011 )
1991 — ITSEC , Avrupa'nın kendi değerlendirme ölçütü (TCSEC'e paralel)
Gereksinim mühendisliği güvenlik sertifikasyonundan daha eskidir — güvenlik yalnız "ve bunu bağımsız kanıtla" ekler.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kısa tarihçe (2) — sertifikasyon ve sektör standartları
1994 → 1998 → 1999 — Ortak Kriterler v1.0 → v2.0 → ISO/IEC 15408 (bugün de gözden geçiriliyor: CC:2022 )
1994 → 2001 → 2019 — FIPS 140-1 → 140-2 → 140-3 , kriptografik modül gereksinimleri
2004 — PCI DSS (ödeme) · 2009 — OWASP ASVS (web) · 2016 — OWASP MASVS (mobil)
Değişmeyen ilke: gereksinim ölçülebilir ve izlenebilir olmalı; kanıtsız "karşılandı" geçersizdir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim (requirement) nedir?
Gereksinim: sistemin karşılaması gereken bir koşul.
Güvenlik gereksinimi: bir güvenlik koşulu.
İyi gereksinim doğrulanabilir (test edilebilir).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İyi gereksinim ölçütleri — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Üç tür (hatırlatma)
Tür
Soru
Örnek
İşlevsel
Hangi güvenlik işlevi?
Hassas veri AEAD ile korunur
Güvence
Doğru mu yapıldı?
Statik analiz + test raporu
Süreç
Kurum nasıl çalışır?
Her değişiklik incelenir
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İyi gereksinim ölçütleri
Doğrulanabilir: test edilebilir mi?
Tekil: tek bir şey mi söylüyor?
Ölçülebilir: somut mu?
Gerçekçi: uygulanabilir mi?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kötü → iyi (1)
Kötü: "Uygulama güvenli olmalıdır."
İyi: "Sürüm derlemesi yığın koruyucu, PIE ve tam RELRO ile üretilmelidir."
Neden iyi? Test edilebilir (checksec).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kötü → iyi gereksinim — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kötü → iyi (2)
Kötü: "Veriler şifrelenmelidir."
İyi: "C sınıfı her varlık beklemede ≥128 bit düzeyinde AEAD ile şifrelenmelidir."
Neden iyi? Hangi veri, hangi düzey, hangi yöntem belli.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kötü → iyi (3)
Kötü: "Anahtarlar iyi yönetilmelidir."
İyi: "(1) Her anahtarın amacı, kripto-periyodu ve imhası belgelenir. (2) İş bitince bellekten silinir."
Tekil, doğrulanabilir maddeler.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · kötü gereksinimi iyileştirmek
Başlangıç cümlesi (gerçek bir taslaktan):
"Uygulama, kullanıcı verilerini korumalıdır."
Bu cümleyi altı adımda iyi bir gereksinime dönüştüreceğiz; her adımda önce/sonra ve neden değişti .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 1 — Belirsiz kelimeleri işaretleyin
Önce: "Uygulama, kullanıcı verilerini korumalıdır."
Belirsiz kelimeler: "kullanıcı verileri" (hangi veri?), "korumalıdır" (neye karşı, hangi düzeyde?).
Neden değişti: değerlendirici bu cümleyi okuyunca test edecek hiçbir şey bulamaz.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 2 — Varlık tablosuna bağlayın
Sonra: "Yerel veritabanındaki C sınıfı alanlar korunmalıdır."
Neden değişti: "kullanıcı verileri" tek şey değil; varlık tablosunda (1. hafta) ayrı satırlardır — oturum belirteci, profil, ödeme jetonu... her biri farklı sınıfta.
Hâlâ "korunmalı" ölçülemez → sıradaki adım.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 3 — Koruma hedefini netleştirin
Sonra: "...C sınıfı alanların gizliliği ve bütünlüğü korunmalıdır."
Neden değişti: tehdit modeli hem "dosyayı okuma" (gizlilik) hem "dosyayı değiştirme" (bütünlük) riskini gösteriyor; ikisi de aynı anda gerekli.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 4 — Ölçülebilir teknik kriter ekleyin
Sonra: "...kimlik doğrulamalı şifrelemeyle (AEAD ) korunmalıdır."
Neden değişti: 9. hafta kuralı — gizlilik ve bütünlük aynı anda isteniyorsa doğru araç sınıfı AEAD'dir; hâlâ belirli bir kütüphane adı verilmiyor.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 5 — Durum ve zorunluluk sözcüğünü ekleyin
Sonra: "Beklemedeki C sınıfı hassas veri, kimlik doğrulamalı şifrelemeyle (AEAD) korunmalıdır." (MUST )
Neden değişti: veri burada beklemede (disk üzerinde); "-malıdır" seçildi çünkü tehdide karşı vazgeçilmez bir koşul — "-abilir" olsaydı isteğe bağlı sayılırdı.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Adım 6 — Kimlik verin ve tehdide bağlayın
Sonra (son hâl): CEN429-DR-01 — "Beklemedeki C sınıfı hassas veri, kimlik doğrulamalı şifrelemeyle (AEAD) korunmalıdır." (Tehdit: T-03, "cihazı ele geçiren saldırgan veritabanı dosyasını okur/değiştirir".)
Neden değişti: kimliksiz bir gereksinim izlenebilirlik zincirine hiç girmez.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Altı adım · hangi belirsizliği giderdi?
Adım
Giderdiği belirsizlik
1
Belirsiz kelimeyi işaretlemek
2
Hangi veri (varlık tablosu)
3
Hangi hedef (gizlilik/bütünlük)
4
Hangi araç sınıfı (AEAD)
5
Hangi durum, hangi zorunluluk
6
Kimlik ve tehdit bağı
Biri eksik kalırsa gereksinim yine tartışmaya açık kalır; değerlendirici geri gönderir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bir gereksinimin yaşamı (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bir gereksinimin yaşamı — uç durum: tek kelimelik belirsizlik
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İkinci ve üçüncü örnekler
İkinci örnek (hız testi): "Hızlı ve güvenli olmalıdır" → iki ayrı gereksinim tek cümlede. Aynı altı adımdan geçirilince: CEN429-ID-04 — "Her oturum açma denemesi sunucu tarafında doğrulanmalıdır; istemci tarafı kontrolü tek başına yeterli kabul edilmemelidir."
Üçüncü örnek (süreç): "Kod incelemesi yapılmalıdır." → Hangi değişiklik? Kim inceleyecek? Ne zaman? İyi hâli: "Her değişiklik, ana dala birleştirilmeden önce, yazan geliştirici dışında en az bir kişi tarafından incelenmeli ve onay sürüm kontrol sisteminde kayıt altına alınmalıdır."
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 1'in kuralı ve zorunluluk sözcükleri
Gereksinim sütununa ne istendiğini yazın; nasıl karşıladığınızı ayrı bir önlem cümlesine yazın.
Sık hata: "Gereksinim: AES-256-GCM kullanılmalıdır." → bu bir önlem , gereksinim değil; doğrusu "...AEAD ile korunmalıdır" (gereksinim) + "AES-256-GCM, S7.2" (önlem).
Gereksinim metninde araç sınıfını (AEAD, CSPRNG, TLS 1.2+) yazın; belirli kütüphane/sürüm adını önleme koyun.
-malıdır (MUST): zorunlu, karşılanmazsa doğrudan bulgu. -malı (SHOULD): güçlü öneri, gerekçe gerekir. -abilir (MAY): isteğe bağlı, bulgu değil.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim kalitesi denetleyicisi (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim kalitesi denetleyicisi — uç durum: tek cümle, tek kural
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
2. Gereksinimden kanıta: izlenebilirlik
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Zincir
Her gereksinim bu zincirle bir kanıta bağlanmalı.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Durum ve karar kelimeleri — özet
Kelime
Ne zaman kullanılır
Yanında ne yazılmalı
Karşılandı
Ürün gereksinimi kendisi sağlıyor
Önlem + doğrulama + kanıt
Devredildi
Başka bir taraf sağlıyor
Kime + neden + nasıl
Karşılanmadı
Uygulanır ama henüz sağlanmıyor
Kalan risk + planlanan düzeltme
Uygulanmaz
Ürüne hiç uygulanmıyor
Gerekçe
-malıdır (MUST)
Zorunlu
Karşılanmazsa doğrudan bulgu
-malı (SHOULD)
Güçlü öneri
Karşılanmazsa yazılı gerekçe
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İzlenebilirlik neden önemli?
Değerlendirici "bu gereksinim nerede?" diye sorar.
İzlenebilirlik yoksa: her şeyi baştan aramak.
Varsa: matristen doğrudan bulunur.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İzlenebilirlik örneği
Gereksinim
Önlem
Doğrulama
Kanıt
Veri AEAD ile
AES-GCM
Birim testi
Test çıktısı
Sürüm korumaları
Bayraklar
checksec
Koruma tablosu
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İki yön
İleri: gereksinim → nerede karşılandı?
Geri: bu kod/test → hangi gereksinimi karşılıyor?
İyi matris iki yönde de izlenebilir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
⚠️ Kanıtsız "karşılandı"
Matriste "karşılandı" ama kanıt yoksa...
Değerlendirici gözünde karşılanmamış sayılır.
İlk bulgulardan biri olur.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · uçtan uca zincir
Zincirin nasıl kurulduğunu tek bir varlık üzerinden başından sonuna dolduralım: kullanıcının oturum belirteci .
Altı halka: varlık → tehdit → gereksinim → önlem → doğrulama → kanıt.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
1. Varlık
Alan
Değer
Varlık
Kullanıcının oturum belirteci (session token)
Konum
İstemci belleği; her istekte HTTP başlığında taşınır
Sınıf
C (gizlilik)
Yaşam döngüsü
Açılışta üretilir → her istekte kullanılır → çıkışta/zaman aşımında geçersiz kılınır
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
2. Tehdit
Ağ üzerinde konumlanan bir saldırgan (ör. aynı halka açık Wi-Fi), şifrelenmemiş bağlantıdan belirteci dinleyip yakalayabilir.
Yakaladığı belirteçle kendi isteklerinde kullanarak kullanıcı gibi davranabilir .
STRIDE: Spoofing + Information Disclosure (1. hafta terminolojisi).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
3. Gereksinim
Varlık → tehdit → hedef (gizlilik+kimlik) → araç sınıfı → durum → zorunluluk zinciri kısaca tekrar uygulanır:
CEN429-DT-01 — "Oturum belirteci yalnız TLS 1.2 ve üzeri, sunucu sertifikası doğrulanmış bir kanaldan taşınmalıdır."
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
4. Önlem
Kılavuzun S10.3 "Aktarım güvenliği" bölümü:
"İstemci, sunucuya her bağlantıda TLS 1.2+ el sıkışması yapar; sertifika zinciri ve ana bilgisayar adı doğrulanır (bkz. Hafta 10). Kanal kurulmadan hiçbir istek gönderilmez."
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
5. Doğrulama
Güvenlik testi ekibi bir MITM (ortadaki adam) aracıyla bağlantıya araya girmeye çalışır:
Geçersiz/kendinden imzalı sertifika sunulunca bağlantının reddedildiğini doğrular.
Düz metin (TLS'siz) bağlantı denemesinin reddedildiğini doğrular.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
6. Kanıt
Test aracının günlük çıktısı: mitm_test_2026-11-03.log
CI çalıştırma kaydı: #617
TLS handshake paket dökümü: handshake.pcapng
evidence/week13/ klasöründe saklanır, matriste bu dosya adlarıyla referans verilir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Zincirin dolu satırı
Kimlik
Gereksinim
Durum
Önlem
Doğrulama
Kanıt
CEN429-DT-01
Oturum belirteci TLS 1.2+, sertifika doğrulanarak taşınmalı
Karşılandı
S10.3
MITM testi: geçersiz sertifika/düz metin reddedilir
mitm_test_2026-11-03.log, CI #617, handshake.pcapng
Bir halka eksik olsaydı: varlık yoksa "hangi veri" belirsiz kalır, tehdit yoksa gereksinim keyfi görünür, önlem yoksa iddia desteksiz kalır, doğrulama yoksa "nasıl test edildi" cevapsız kalır, kanıt yoksa satır ilk bulgu olur.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
"Karşılanmadı" durumunun tam zinciri
Halka
Karşılandı (DT-01)
Karşılanmadı (DT-04)
Gereksinim
Oturum belirteci TLS ile taşınır
Sunucu sertifikası sabitlenmeli
Durum
Karşılandı
Karşılanmadı
Önlem
S10.3
— (henüz yok)
Doğrulama
MITM testi geçti
—
Kanıt
Test günlüğü
Kalan risk: S16.4'e yazılır
"Karşılanmadı"da önlem/doğrulama boş kalabilir ama kanıt (kalan riskin nerede belgelendiği) boş kalamaz.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İzlenebilirlik zinciri (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İzlenebilirlik zinciri — uç durum: her satır boşluklu
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 2'nin kuralı
Her "karşılandı" satırının kanıt sütununda bulunabilir, adlandırılmış bir referans olmalı: dosya adı, CI numarası, test raporu bölümü.
"Var", "test edildi" kanıt değil, kanıt vaadidir .
Değerlendiricinin en sık yazdığı bulgu: kanıtsız "karşılandı" .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 1–2 — kısa sınama
İyi gereksinimin dört ölçütü?
"Uygulama güvenli olmalı" neden kötü?
İzlenebilirlik zinciri nedir?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 1–2 — cevaplar
Belirli · ölçülebilir/doğrulanabilir · tekil · izlenebilir (gerçekçi, atomik).
Belirsiz ve ölçülemez ; "güvenli"nin tanımı yok → test edilemez, herkes farklı anlar.
Tehdit/standart → gereksinim → tasarım/kod → test/kanıt. Her gereksinim bir kaynağa ve bir kanıta iki yönlü bağlanır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
3. Gereksinim bloğu ve devredilenler
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Devretme üç soru — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim bloğu kalıbı
Her gereksinim bir blok olarak yazılır:
Kimlik: benzersiz numara (ör. CEN429-DU-01)
Metin: ne isteniyor (tekil, ölçülebilir)
Durum: karşılandı / devredildi / karşılanmadı
Karşılama: nasıl karşılandı
Doğrulama + kanıt
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Örnek blok
CEN429-DU-01
Metin: Yerel DB'deki C sınıfı veri AEAD ile şifrelenir.
Durum: Karşılandı
Karşılama: AES-256-GCM, anahtar TEE'de
Doğrulama: T-05 birim testi
Kanıt: test çıktısı, S16
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Neden blok?
Her gereksinim aynı yapıda → karşılaştırılabilir .
Değerlendirici hızlı okur.
Uyum matrisi bu bloklardan üretilir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Devredilen gereksinim nedir?
Bir bileşen bir gereksinimi kendisi karşılayamıyor.
Sorumluluğu üst uygulamaya/OS'a/donanıma devreder .
Bu bir kaçış değil, açık bir sözleşmedir .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Devrederken üç soru
Devredilen her gereksinimde yaz:
Kime? (üst uygulama / OS / donanım)
Neden? (neden bu bileşen karşılayamıyor)
Nasıl? (karşı taraf nasıl karşılayacak)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Devredilen · örnek
CEN429-AP-03: Güvenli kurulum ve güncelleme
Durum: Devredildi
Kime: Üst mobil uygulama (MPA)
Neden: SDK dağıtım kanalına sahip değil
Nasıl: MPA imzalı güncelleme + sürüm denetimi sağlar
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
⚠️ Sessiz devretme yok
Bir gereksinimi karşılamıyor ve yazmıyorsanız → eksik.
Devretme belgelenmeli ; aksi halde "karşılanmadı" sayılır.
S14 bölümü tam bunun için.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Karşılandı mı, devredildi mi?
Durum
Anlamı
Karşılandı
Ürün sağlar (kanıtla)
Devredildi
Başka taraf sağlar (kime/neden/nasıl)
Karşılanmadı
Henüz yok (kalan risk)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · bloğu doldurmak (Karşılandı)
Bu, 2. bölümdeki CEN429-DR-01 zincirinin kılavuza yazılmış hâlidir:
[CEN429-DR] CEN429-DR-01 — KARŞILANDI
Gereksinim: Beklemedeki C sınıfı hassas veri, kimlik doğrulamalı şifrelemeyle (AEAD) korunmalıdır.
Karşılama: Yerel kasa dosyası AES-256-GCM ile şifrelenir (S7.2); anahtar cihazın güvenli depolama biriminden türetilir. Doğrulama: birim testi, tek bayt değişince çözmenin reddedildiğini kontrol eder. Kanıt: CI #482, evidence/week13/test_butunluk_ci482.log.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aynı kalıp · Devredildi
[CEN429-AP] CEN429-AP-07 — DEVREDİLDİ (üst uygulamaya)
Gereksinim: Uygulama güvenli biçimde kurulmalı ve güncellenmelidir.
Karşılama: Kütüphanenin kendi dağıtım/güncelleme mekanizması yok. Kime: üst uygulama geliştiricisi. Neden: kütüphane ağ/dosya sistemi seviyesinde kuruluma erişmez. Nasıl: mağaza imza doğrulaması ya da Hafta 6'daki imzalama şemasıyla imzalı güncelleme paketleri.
Devredilen blok da Karşılama alanına sahiptir — ama "karşı taraf nasıl yapmalı, biz neden yapmıyoruz" sorusunu cevaplar.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aynı kalıp · Karşılanmadı
[CEN429-DT] CEN429-DT-04 — KARŞILANMADI
Gereksinim: Sunucu sertifikası sabitlenmelidir (certificate pinning).
Durum: Şu an yalnız standart TLS zinciri doğrulaması var, sabitleme yok. Kalan risk: güvenilir bir kökten sahte sertifika alınırsa MITM mümkün olabilir (S16.4). Planlanan düzeltme: v1.1 (görev #217).
"Karşılanmadı" bloğu Karşılama yerine Durum ve Kalan risk alanlarını doldurur.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Blok alanlarının görevi
Başlık satırı ([Aile] Kimlik — Durum): değerlendiricinin gözünü hızlıca nereye götüreceğini söyler.
Gereksinim satırı: standarttan/tehditten gelen "ne"yi tekrarlar, yeniden yorumlanmaz.
Karşılama: "nasıl"ı somut dosya/bölüm adlarıyla anlatır.
Doğrulama + Kanıt: izlenebilirlik zincirinin son iki halkası.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Donanım devretmesi ve Bölüm 3'ün kuralı
Güvenli eleman/TEE varsa : gereksinim donanıma devredilebilir.
Güvenli eleman yoksa : devredilemez — devredilecek taraf yok; ürün yazılım tabanlı önlem almalı ya da "karşılanmadı" + kalan risk yazmalı. "Donanıma devredildi" yazmak burada geçersiz devretmedir .
Kural: karşılama metni her zaman somut bir referansla bitmeli; devretmeden önce karşı tarafın gerçekten karşılayabileceğini doğrulayın.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim bloğu (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim bloğu — uç durum: sessiz devir
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 3 — kısa sınama
Gereksinim bloğunun alanları?
Devrederken hangi üç soru yanıtlanır?
Sessiz devretme neden sorun?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 3 — cevaplar
ID · ölçülebilir ifade · kaynak/gerekçe · ilgili varlık/tehdit · doğrulama yöntemi (kanıt) · durum/öncelik.
(1) Neden şimdi karşılanmıyor? (2) Riski ne, kim kabul ediyor (onay)? (3) Ne zaman/nasıl karşılanacak (plan/telafi)?
Kayıt/onay olmadan gereksinim atlanır → gizli açık , sorumlusu yok, denetimde patlar. Açık, gerekçeli, onaylı devret.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
4. Ortak Kriterler (ISO/IEC 15408)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Ortak Kriterler — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
CC nedir?
Ortak Kriterler: ürün güvenliğini değerlendirmenin uluslararası standardı.
Ortak bir dil ve yöntem sağlar.
Ülkeler birbirinin değerlendirmesini tanır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
TOE · değerlendirme hedefi
TOE (Target of Evaluation): değerlendirilen tam ürün.
Benzersiz tanımlanır (12. hafta): sürüm + binary + özet.
Kapsam dışı bileşenler yazılır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
ST · güvenlik hedefi
ST (Security Target): bu ürünün güvenlik hedefi belgesi.
İçinde: tehditler, amaçlar, gereksinimler (SFR/SAR).
Ürüne özgüdür.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
PP · koruma profili
PP (Protection Profile): bir ürün sınıfı için ortak gereksinim seti.
Örnek: "mobil cihaz PP", "akıllı kart PP".
ST'ler genelde bir PP'yi temel alır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
ST vs PP
ST
PP
Kapsam
Tek ürün
Ürün sınıfı
Kim yazar
Geliştirici
Topluluk/otorite
Rol
Bu ürünün hedefi
Ortak taban
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
SFR · işlevsel gereksinimler
SFR (Security Functional Requirements): ürünün ne yapacağı .
Örnek: şifreleme, erişim denetimi, günlükleme.
Standart bir katalogdan seçilir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
SAR · güvence gereksinimleri
SAR (Security Assurance Requirements): doğru yapıldığına nasıl güveneceğiz .
Örnek: kaynak inceleme, test derinliği, zafiyet analizi.
EAL bunları belirler.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
EAL · değerlendirme derinliği
EAL (Evaluation Assurance Level): 1'den 7'ye derinlik.
Yüksek EAL = daha derin inceleme.
"+" ek güvence bileşenlerini gösterir (EAL4+).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
⚠️ EAL yanlış anlaşılması
EAL güvenliğin derinliği , güvenliğin miktarı değil.
"EAL4+ > EAL2 daha güvenli" demek yanlış .
Güvenlik, ST'deki tehdit ve amaçlara bağlıdır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · ST iskeleti — TOE
Bir mobil ödeme bileşeni için üç adımda dolduralım.
Adım 1 — TOE'yi tanımlayın:
TOE: "CEN429-Pay" kütüphanesi, sürüm 1.0, yalnız Android ARM64 derlemesi.
Kapsam dışı: üst uygulamanın arayüzü, sunucu tarafı bileşenler, işletim sistemi çekirdeği.
Kapsam dışını yazmak, kapsamı yazmak kadar önemlidir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Tehdit → amaç → SFR eşlemesi
Tehdit
Güvenlik amacı
SFR ailesi
Dersteki gereksinim
T.EAVESDROP
Aktarılan veri gizli/bütünlüklü kalmalı
FCS, FTP
CEN429-DT-01
T.TAMPER
Uygulama bütünlüğünü denetlemeli
FPT
CEN429-AP-04
—
Kimlik doğrulanmalı
FIA
CEN429-ID-02
Bu tablo ST'nin kalbidir: her satır "neden bu gereksinim var" ile "hangi kanıt istenir" arasındaki köprü.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
EAL merdiveni (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
EAL merdiveni — uç durum: EAL7, merdivenin tamamı
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 4'ün kuralı
TOE tanımı her zaman hem içerdiklerini hem dışarıda bıraktıklarını listeler.
SFR'ler katalogdan seçilir, uydurulmaz ; karşılığı yoksa "genişletilmiş bileşen" olarak gerekçelendirilir.
Değerlendirici her tehdidin bir amaca, her amacın bir SFR'ye bağlandığını kontrol eder.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
5. FIPS 140-3
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
FIPS 140-3 düzeyleri — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
FIPS 140-3 nedir?
Kriptografik modüllerin doğrulanması standardı.
Modülün algoritmaları, kendini testi, anahtar yönetimi.
Yalnız modülü kapsar.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Güvenlik düzeyleri (1–4)
Düzey
Kabaca
1
Temel; onaylı algoritmalar
2
Kurcalama izi
3
Kurcalamaya direnç ve yanıt
4
En yüksek fiziksel koruma
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
FIPS 140-3 düzeyleri (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
FIPS 140-3 düzeyleri — uç durum: Düzey 4
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
⚠️ FIPS uyumluluğu tuzağı
FIPS doğrulanmış kütüphane kullanmak, uygulamayı otomatik FIPS uyumlu yapmaz .
Uygulama modülü onaylı kipte ve doğru kullanmalı.
Anahtarları da doğru yönetmeli.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
CC ve FIPS birlikte
CC: ürünün bütününü değerlendirir.
FIPS: kripto modülünü doğrular.
Bir ürün CC değerlendirmesinde FIPS'li modül kullanabilir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · FIPS düzey 1 denetimi
Proje kripto katmanı: OpenSSL EVP arayüzü, AES-256-GCM, anahtarlar getrandom()'dan üretiliyor, hata durumunda sessizce varsayılan bir anahtara düşüyor .
Düzey 1 beklentilerini tek tek işaretleyelim.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Düzey 1 · durum tablosu
Düzey 1 beklentisi
Durum
Neden
Onaylı algoritma, onaylı kipte
Kısmen
CAVP sertifikası yoksa iddia edilemez
Açılış/koşullu öz testler
Karşılanmadı
Proje kendi öz testini çalıştırmıyor
Roller ve hizmetler tanımlı
Karşılanmadı
Kod rol ayrımı yapmıyor
Parametrelerin sıfırlanması
Karşılanmadı
Hata durumunda varsayılan anahtara düşülüyor
Güvenlik politikası belgesi
Karşılanmadı
Böyle bir belge yok
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
En kritik açık ve Bölüm 5'in kuralı
Hata durumunda "varsayılan anahtara düşmek", sıfırlama (zeroization) ilkesinin tam tersidir .
haftadaki kural: "rastgele üreteç başarısız olursa dur , devam etme" — burada tersi yapılıyor.
Kural: bir FIPS iddiasının arkasında her zaman bir CMVP sertifika numarası ve kapsamı olmalı; yoksa "FIPS onaylı algoritmalar kullanıyoruz (doğrulanmış modül değil)" diye dürüstçe daraltın.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 4–5 — kısa sınama
ST ile PP farkı?
SFR ve SAR nedir?
"EAL4+ her zaman daha güvenli" neden yanlış?
FIPS'li kütüphane uygulamayı FIPS uyumlu yapar mı?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 4–5 — cevaplar
PP bir ürün sınıfı için standart gereksinim kümesi; ST belirli bir ürünün (TOE) neyi karşıladığını söyleyen belge.
SFR ürünün ne yapacağı (fonksiyonel); SAR buna ne kadar güvenileceği (güvence; EAL buradan gelir).
EAL güvence derinliğini ölçer, güvenlik miktarını değil; kapsam (ST/TOE) darsa yüksek EAL az şey kapsar.
Hayır. Modülü doğru kip/yapılandırmada, onaylı algoritmalarla kullanmak gerekir. Modül sertifikası ≠ uygulama uyumu.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
6. Sektöre özgü gereksinim setleri
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Sektör standartları — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Neden sektör standartları?
CC/FIPS geneldir; sektörler kendi risklerine göre ek gereksinim ister.
IoT, mobil, ödeme farklı tehdit ortamları.
Projeniz hangisine yakınsa onu izleyin.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
ETSI EN 303 645 (IoT)
Tüketici IoT için temel güvenlik gereksinimleri.
Örnek: varsayılan parola yok, güvenli güncelleme, hassas parametreleri güvenle sakla.
Geniş, uygulanabilir taban.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
ETSI · örnek maddeler
Benzersiz parolalar (ortak varsayılan yok).
Güvenlik güncellemelerini yönet.
Hassas güvenlik parametrelerini güvenle sakla (→ projede S5/S7/S8).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
GSMA
Mobil operatör ekosistemi için güvenlik yönergeleri.
Cihaz, ağ, servis güvenliği.
SIM/eSIM, kimlik.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
EMVCo
Kart ödeme ekosistemi standartları (kartlar, terminaller, mobil ödeme).
İşlevsel uygunluk + güvenlik değerlendirmesi.
Saldırı potansiyeli puanlaması (12. hafta).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
PCI
PCI DSS: kart verisi işleyen sistemler için güvenlik.
PCI MPoC/CPoC: yazılım tabanlı ödeme kabulü.
Sıkı; laboratuvar değerlendirmesi.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
OWASP MASVS
Mobile Application Security Verification Standard.
Mobil uygulama güvenlik gereksinimleri .
Düzeyler: temel (L1), derinlemesine (L2), direnç (R).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
MASVS · projeniz için
En uygulanabilir gereksinim seti.
MASTG ile test edilir (12. hafta).
Kripto, depolama, iletişim, kod kalitesi, direnç.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Standartlar · karşılaştırma
Standart
Alan
Odak
CC
Genel ürün
Değerlendirme derinliği
FIPS 140-3
Kripto modülü
Modül doğrulama
ETSI 303 645
IoT
Temel gereksinim
EMVCo/PCI
Ödeme
İşlevsel + güvenlik
MASVS
Mobil
Uygulama gereksinimi
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Karşılaştırma · ders
Hepsi aynı kökü paylaşır: yazılı, doğrulanabilir gereksinim.
Fark: kapsam ve sıkılık.
Projeniz için MASVS en pratik başlangıç.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aynı gereksinim, dört standart (1) — beklemede veri
Standart
Karşılığı
Ortak Kriterler
FCS + FDP bileşenleri
FIPS 140-3
Düzey 1: onaylı algoritma, öz test, sıfırlama
ETSI EN 303 645
Madde 5.4 "Hassas parametreleri güvenle sakla"
OWASP MASVS
MASVS-STORAGE
Dersin ailesi
CEN429-DR-01
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aynı gereksinim, dört standart (2) — zayıf kimlik doğrulama
Standart
Karşılığı
Ortak Kriterler
FIA bileşenleri
FIPS 140-3
Düzey 2: rol tabanlı kimlik doğrulama
ETSI EN 303 645
Madde 5.1 "Evrensel varsayılan parola yok"
OWASP MASVS
MASVS-AUTH
Dersin ailesi
CEN429-ID-01 / CEN429-ID-02
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Örtüşme ve Bölüm 6'nın kuralı
Bir standarda uyum kanıtı, başka bir standartta da kısmen yeniden kullanılabilir — ama "otomatik karşılanır" demek değildir; her standardın kendi ek ölçütü vardır.
Aynı gereksinimi birden çok standarda eşlemek (bir standart sütunu ekleyerek) işi hızlandırır; sertifikasyon değişse bile iş tekrarlanmaz.
"FIPS'li modül kullanıyoruz, o yüzden MASVS-CRYPTO'yu da karşılıyoruz" cümlesi tehlikelidir .
Kural: örtüşmeyi kanıt toplamayı hızlandırmak için kullanın, ama her standardı ayrı ayrı işaretleyin.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Sektör standartlarının ders ailelerine eşlenmesi (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Sektör eşlemesi — uç durum: GSMA karşılığı olmayan aile
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 6 — kısa sınama
ETSI EN 303 645 kimin için?
MASVS neden projeniz için en uygun?
CC ile MASVS farkı?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 6 — cevaplar
Tüketici IoT cihazları için temel güvenlik (varsayılan parola yok, güncelleme, güvenli iletişim…).
Proje uygulama odaklı; MASVS somut, kontrol edilebilir maddeler + MASTG test rehberi → doğrudan uygulanır.
CC ağır, akredite laboratuvar/sertifika (EAL); MASVS hafif, açık, geliştirici-dostu öz-değerlendirme standardı.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
7. Gereksinimleri yazılım planına ve varlık yönetimine aktarmak
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Uyum matrisinin yapısı — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim aktarma kararı — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim → varlık → önlem
Her gereksinim bir varlığa ve bir önleme bağlanır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Varlık yönetimiyle bağ
Gereksinimler S5 varlık listesine bağlanır.
Her varlık: C/I/I+ etiketi, koruma önlemi.
Gereksinim, o korumayı zorunlu kılar.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Plana aktarmak
İşlevsel gereksinim → tasarım/kod (S6–S11).
Güvence gereksinimi → test (S16).
Süreç gereksinimi → geliştirme süreci (S13).
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · CR-03'e altı adımı uygulamak
CEN429-CR-03 ("anahtarlar iş bitince silinmelidir"):
1. Uygulanabilirlik: oturum ve kasa dosyası anahtarı var → uygulanır.
2. Sorumluluk: kod projenin kendisi → biz karşılarız.
3. Varlıklara bağlama: kasa dosyası anahtarının "silinme" sütunu boş — eksiklik burada fark edilir .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aynı örnek · tehditten sürüm planına
4. Tehditlere bağlama: "fiziksel erişimi olan saldırgan bellek dökümü alır" tehdidine bağlanır.
5. Önlem/doğrulama: crypto_wipe() çağrısı; doğrulama: bellek dökümünde anahtar baytlarının bulunmadığını göstermek.
6. Sürüm planı: oturum anahtarı v0.9'da karşılandı; kasa dosyası anahtarı v1.0'a planlandı, o güne kadar karşılanmadı + kalan risk yazılır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinimi plana aktarmak (animasyon)
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinimi plana aktarmak — uç durum: uygulanmaz
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 7'nin kuralı
Her "uygulanmaz" kararı, gerekçesini destekleyen bir kanıtla (kod taraması, mimari diyagram) birlikte yazılmalı.
Gerekçesiz "uygulanmaz", gerekçesiz "karşılandı" kadar güvenilmezdir.
Altı adımdan 3. ve 4.'ü (varlık/tehdit bağlama) atlamak en sık yapılan hatadır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
8. Dersin gereksinim aileleri
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Gereksinim aileleri — şema
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Dersin kendi kimlikleri
Bu ders, açık standartlardan uyarlanmış kendi gereksinim ailelerini kullanır:
CEN429-AP (uygulama koruma), ID (kimlik), AS (varlık), DR/DU/DT (veri: beklemede/kullanımda/aktarımda)…
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aileler (1)
Aile
Konu
Örnek
AP
Uygulama koruma (gizleme, RASP)
Hassas fonksiyonlar gizlenir ve bütünlük denetimiyle korunur
ID
Kimlik ve bağlama
Cihaz ve sürüm, anahtar kullanımına bağlanır
AS
Varlık yönetimi
Her varlık C/I/I+ ile etiketlenir ve yaşam döngüsü belgelenir
DR
Beklemede veri
Yerel veri AEAD ile şifreli
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Aileler (2)
Aile
Konu
Örnek
DU
Kullanımdaki veri
Anahtar kullanımdan sonra silinir
DT
Aktarımdaki veri
TLS 1.3 + zincir doğrulama
RP
Raporlama/günlük
Sürümde hassas veri düz loglanmaz
CR
Kriptografi
Onaylı algoritma, kip, anahtar uzunluğu; anahtar hiyerarşisi belgeli
DV
Geliştirme/süreç
Her değişiklik birleştirilmeden önce incelenir; SBOM güncellenir
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Her aile → haftalara bağ
AP → 4, 5, 6, 9, 11, 14
CR/DR/DU/DT → 3, 10
AS → 1, 3
DV/RP → 12, 13
Projeniz bu ailelerden bir alt küme seçer.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Uyum matrisi etkinliği · Adım 1
Kendi projenizden beş gereksinim seçin (farklı ailelerden).
Her biri için bir gereksinim bloğu yazın.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Etkinlik · adım 2
Her gereksinim için matris satırı doldurun:
Gereksinim
Durum
Bölüm
Doğrulama
Kanıt
…
…
…
…
…
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Etkinlik · adım 3
En az birini devredilen olarak yazın (kime/neden/nasıl).
En az birinin kanıtını somut gösterin.
Bir "karşılanmadı" varsa kalan riske yazın.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Etkinlik · değerlendirme
Değerlendirici gözüyle kontrol:
Her satırın kanıtı var mı?
Devredilenler açık mı?
Gereksinimler doğrulanabilir mi?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
İşlenmiş örnek · ilk taslak (yetersiz)
Bir takımın CEN429-AP-04 için matris satırı, ilk taslakta :
Kimlik
Gereksinim
Durum
Önlem
Doğrulama
Kanıt
CEN429-AP-04
Uygulama çalışma anında bütünlüğünü denetlemeli
Karşılandı
Bütünlük kontrolü var
Test edildi
—
Üç sorun: (1) önlem, gereksinimin tekrarı . (2) "Test edildi" doğrulama yöntemi değil . (3) Kanıt boş .
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Taslağı düzeltme · adım adım
Önlemi somutlaştır: açılışta kod bölümünün özeti (hash) hesaplanır, derleme zamanında gömülü beklenen özetle karşılaştırılır; uyuşmazsa çalışma durur (S12.3).
Doğrulama yöntemini netleştir: binary dosyanın bir baytı değiştirilir, uygulamanın başlamayı reddettiği doğrulanır.
Kanıt ekle: CI işi ci-integrity-check, çalıştırma #391 , integrity_test.log.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Düzeltilmiş satır
Kimlik
Durum
Önlem
Doğrulama
Kanıt
CEN429-AP-04
Karşılandı
S12.3: açılış özeti hesaplanır, gömülü özetle karşılaştırılır
Bayt değişince başlamanın reddedildiği test edilir
CI ci-integrity-check #391, integrity_test.log
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Fark neyde?
Fark satırın uzunluğunda değil, her hücrenin somutluğunda .
İlk taslak da "dolu" görünüyordu ama hiçbir hücresi bağımsız olarak doğrulanamazdı .
Değerlendirici için önemli olan: her hücreyi okuyunca "bunu nereden biliyoruz?" sorusuna cevap bulabilmek.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 8'in kuralı
Her satırın kanıtı o satıra özgü olmalı: belirli test adı, belirli CI numarası, belirli günlük dosyası.
Tek bir genel raporu bütün satırlara kopyalamak, matrisin tamamını şüpheli hâle getirir.
Genel bir rapora referans veriliyorsa, raporun hangi bölümü/sayfası olduğu da belirtilmeli.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 7–8 — kısa sınama
Gereksinim hangi iki şeye bağlanır?
Dersin gereksinim ailelerinden üçünü sayın.
Uyum matrisinde her satırda ne olmalı?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bölüm 7–8 — cevaplar
Yukarıda kaynağa (tehdit/standart/varlık) ve aşağıda kanıta (test/kod) — iki yön.
(Dokuz aileden herhangi üçü) ör. veri güvenliği · kod sağlamlaştırma (hardening) · RASP · kriptografi/sertifika · bellek koruması · arayüz koruması .
Gereksinim ID+ifade · durum (karşılandı/devredildi) · kanıt (test/dosya/S-bölümü). Kanıtsız satır karşılanmamış sayılır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Uçtan uca: NotKasa'nın uyum matrisi (1/2)
Sentetik uygulama NotKasa (yerel şifreli not tutar, sunucuyla konuşur, güncellenir) için gereksinim tehditten türer:
Tehdit: cihaz çalınırsa yerel notlar okunur
↓
Amaç: beklemede gizlilik
↓
Gereksinim: C sınıfı veri AEAD ile şifrelenir
Bu zincirden iki "karşılandı" bloğu:
DR-01 — beklemede veri:
CEN429-DR-01
Metin: Yerel DB'deki C sınıfı veri AES-256-GCM ile şifrelenir.
Durum: Karşılandı
Karşılama: AES-256-GCM, anahtar TEE'de
Doğrulama: T-05
Kanıt: test çıktısı (S16)
CR-02 — kripto:
CEN429-CR-02
Metin: Anahtarların amacı, kripto-periyodu, imhası belgelenir.
Durum: Karşılandı
Karşılama: S8 anahtar tablosu
Doğrulama: belge incelemesi
Kanıt: S8
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Uçtan uca: NotKasa'nın uyum matrisi (2/2)
DT-03 — aktarımda veri:
CEN429-DT-03
Metin: Sunucu iletişimi TLS 1.3 ve sertifika zinciri doğrulaması kullanır.
Durum: Karşılandı
Karşılama: TLS 1.3 + SAN denetimi + SPKI pin
Doğrulama: T-11
Kanıt: test + S11
AP-04 — uygulama koruma (devredilen):
CEN429-AP-04
Metin: Güvenli kurulum ve güncelleme sağlanır.
Durum: Devredildi
Kime: Üst uygulama (MPA)
Neden: SDK dağıtım kanalına sahip değil
Nasıl: MPA imzalı güncelleme + sürüm denetimi
AS-05 — karşılanmadı:
CEN429-AS-05
Metin: Tüm hassas varlıklar için bellek izleme tespiti.
Durum: Karşılanmadı
Kalan risk: köklü cihazda canlı bellek analizi
Azaltma: kısa ömürlü anahtar + sunucu denetimi
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Matris · toplu görünüm
ID
Durum
Bölüm
Kanıt
DR-01
Karşılandı
S8
T-05
CR-02
Karşılandı
S8
S8
DT-03
Karşılandı
S11
T-11
AP-04
Devredildi
S14
—
AS-05
Karşılanmadı
S12
kalan risk
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Matristen okunanlar
Üç karşılandı (kanıtlı), bir devredildi, bir kalan risk.
Her satır izlenebilir.
Değerlendirici bu tablodan başlar.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Klasik hatalar — özet
Hata
Bölüm
Doğrulanamaz gereksinim ("güvenli olmalı" gibi)
Bölüm 1
Kanıtsız "karşılandı"
Bölüm 2
Sessiz devretme
Bölüm 3
EAL'i güvenlik miktarı sanmak
Bölüm 4
FIPS'li kütüphane = FIPS uyumlu sanmak
Bölüm 5
Kalan riski boş bırakmak
Bölüm 2
Her satırın ayrıntısı, ilgili bölümdeki ⚠️ kutusunda ve kuralda işlendi; burada tek bakışta toparlıyoruz.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
9. Dönem projesi: bu hafta
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Proje · S14 ve S17
S17 ve S14, değerlendiricinin ilk açtığı belgelerdir.
[ ] S17 uyum matrisi: uygulanan her gereksinim için durum, bölüm, doğrulama, kanıt.
[ ] S14 devredilenler: kime, neden, nasıl.
[ ] En az bir "karşılanmadı" varsa kalan riske yaz.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Değerlendirici gözüyle
Kanıtsız "karşılandı" = karşılanmamış.
Devredilenler açık ve gerekçeli mi?
Gereksinimler doğrulanabilir mi?
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Kontrol listesi
[ ] Her gereksinim doğrulanabilir + tekil
[ ] Her satırda durum/bölüm/doğrulama/kanıt
[ ] Devredilenler: kime/neden/nasıl
[ ] Karşılanmayanlar → kalan risk
[ ] Standart eşlemesi (ETSI/MASVS/CC)
[ ] En az bir aile başına gereksinim
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
45 dakikada nasıl hazırlanır + kanıt klasörü
Aile tablosundan uygulanan gereksinimleri işaretleyin; uygulanmayanları "uygulanmaz, gerekçe: ..." bırakın.
Altı sütunu (kimlik, gereksinim, durum, önlem, doğrulama, kanıt) doldurun; kanıtsız "karşılandı" yazmayın.
"Devredildi" satırlarını S14'e, kime/neden/nasıl ile taşıyın.
Varlık tablonuzu (S5) her gereksinime bağlayın; S1'e dayandığınız standartları yazın.
evidence/week13/ <- test/log/pcap dosyaları
README.md <- her dosya hangi gereksinimin kanıtı, bir satırla
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Zaman kısıtlıysa · öncelik sırası
Önce en az 15 gereksinimlik bir S17 iskeleti (kimlik+gereksinim+durum) — boş S17'den çok daha iyi.
Elde gerçek kanıtı olan "karşılandı" satırlarını tamamlayın; kanıtı olmayanı dürüstçe "karşılanmadı" yapın.
Devredilen satırları S14'e taşıyın.
Son olarak kalan önlem/doğrulama sütunlarını doldurun.
Kural: "az ama dürüst" bir matris, "çok ama kanıtsız" olandan her zaman daha iyi puan alır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Çözümlü kendini sınama
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 1
İyi bir güvenlik gereksiniminin dört ölçütü?
Cevap: Doğrulanabilir, tekil, ölçülebilir, gerçekçi.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 2
"Uygulama güvenli olmalıdır" neden kötü? Nasıl düzeltilir?
Cevap: Doğrulanamaz. Ölçülebilir yazılır: ör. "sürüm derlemesi yığın koruyucu, PIE ve tam RELRO ile üretilir".
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 3
İzlenebilirlik zinciri nedir?
Cevap: Gereksinim → önlem → doğrulama → kanıt. Her gereksinim bir kanıta bağlanır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 4
Uyum matrisinde kanıtsız "karşılandı" ne demek?
Cevap: Değerlendirici için karşılanmamış sayılır; ilk bulgulardan biridir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 5
Bir gereksinimi devrederken hangi üç soru yanıtlanır?
Cevap: Kime, neden, nasıl. Sessiz devretme "karşılanmadı" sayılır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 6
ST ile PP farkı?
Cevap: ST tek ürünün güvenlik hedefi; PP bir ürün sınıfı için ortak gereksinim seti. ST genelde bir PP'yi temel alır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 7
"EAL4+ her zaman EAL2'den güvenli" doğru mu?
Cevap: Hayır. EAL değerlendirmenin derinliğidir; güvenlik ST'deki tehdit ve amaçlara bağlıdır. "+" ek güvence bileşenidir.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 8
FIPS doğrulanmış kütüphane kullanan uygulama FIPS uyumlu mudur?
Cevap: Tek başına değil. Doğrulama modülü kapsar; uygulama onaylı kipte, doğru kullanmalı, anahtarları doğru yönetmeli.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 9
ETSI EN 303 645'in "hassas parametreleri güvenle sakla" maddesi projede nereye karşılık gelir?
Cevap: S5 varlık listesi, S7 veri güvenliği/kabuk matrisi, S8 anahtar yaşam döngüsü.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Soru 10
Bir kütüphane "güvenli güncelleme" gereksinimini karşılayamıyorsa?
Cevap: Üst uygulamaya devreder ve kılavuzda kime/neden/nasıl karşılanacağını yazar.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Sözlük
Terim
Anlam
İşlevsel/güvence/süreç
Üç gereksinim türü
İzlenebilirlik
Gereksinim→kanıt zinciri
Devredilen
Başka tarafa aktarılan gereksinim
TOE/ST/PP
CC temel kavramları
SFR/SAR/EAL
İşlevsel/güvence/derinlik
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
CEN429 Güvenli Programlama · Hafta 13
Bir sonraki hafta
14. hafta — Tigress ve çeşitlendirme
Bu hafta tanımladığımız dersin gereksinim ailelerinden CEN429-AP (uygulama koruması) grubundaki "hassas kod bölümleri gizlenmelidir" gibi gereksinimlerin somut karşılığını, yani önlem tarafını, 14. haftada göreceğiz: Tigress aracıyla kod gizleme ve çeşitlendirme dönüşümlerini uygulayıp bunları uyum matrisinizin (S17) ilgili satırlarına bağlayacaksınız. Gizleme kurallarının otomatik, çeşitlendirilmiş uygulaması; ölçme ve derleme hattı.
Bir gereksinim, tehditten doğar; bir önleme, bir teste ve bir kanıta bağlanır; karşılanamıyorsa açıkça
devredilir . Uyum matrisi bu zincirin haritasıdır.
RTEÜ Bilgisayar Mühendisliği · 2026-2027 Güz
Konuşma notu: Bu hafta güvenlik gereksinimlerini okuyup kendi projemize eşlemeyi öğreniyoruz: gereksinim, durum, kanıt.
Konuşma notu: Bu hafta güvenlik gereksinimlerini okuyup kendi projemize eşlemeyi öğreniyoruz: gereksinim → önlem → doğrulama → kanıt. Sıfır ön bilgi; her terimi tanımlayacağız.
Konuşma notu: "Uygulama kullanıcı verisini korumalıdır." cümlesi üzerinde altı adımı canlı çalıştırın — her adımda hangi kelimenin eklendiğini izleyin.
Konuşma notu: çok kısa bir cümle bile altı adımın tamamını gerektirir — tek bir belirsiz kelime onu test edilemez kılmaya yeter.
Konuşma notu: bu, `02-requirement-quality` demo aracı — örnek cümlelerde hangi kuralın (belirsiz ifade, ölçülebilir dayanak yok) ateşlendiğini izleyin.
Konuşma notu: belirsiz değil ama sayı ya da somut teknik terim yok — yalnız "ölçülebilir dayanak yok" kuralı bile yetiyor.
Konuşma notu: gerçek compliance_matrix.c kuralı — kanıt sütunu boş bir "karşılandı" ya da "devredildi" satırı boşluktur, satır satır taranır.
Konuşma notu: bilerek gerçekçi olmayan bir matris — bulgu mesajının her satırda tekrarlanma desenini gösterir.
Konuşma notu: Sonra gereksinim bloğu ve devredilenler.
Konuşma notu: aynı [Aile] Kimlik — Durum bloğunu bir karşılandı ve bir devredildi gereksinim için doldurun; üç devir sorusunun bir bir cevaplandığını izleyin.
Konuşma notu: "kime" ve "nasıl" cevaplanmış ama "neden" boş — yine de eksik bir blok, yine de bir bulgu.
Konuşma notu: Sonra Ortak Kriterler ve FIPS.
Konuşma notu: bir hedef EAL seçin ve SAR merdiveninin EAL1'den yukarı nasıl dolduğunu izleyin — her düzey bir öncekinin gereksinimlerini korur.
Konuşma notu: biçimsel doğrulanmış tasarım — çok yüksek risk, küçük sistemler; dönem projesi için hemen hiçbir zaman doğru hedef değildir.
Konuşma notu: dört düzey kümülatif — her düzeyin bir alttakinin üstüne ne eklediğini izleyin.
Konuşma notu: kurcalamaya düşman bir saha cihazı — çoğu öğrenci projesinde Düzey 4 için tek gerçekçi durum "buna ihtiyacımız yok"tur.
Konuşma notu: Sonra sektör standartları.
Konuşma notu: EMVCo'nun kendi aile listesi bizimkine neredeyse birebir denk — GSMA sütununun neden çoğunlukla boş kaldığını izleyin (ürünü değil tesisi denetler).
Konuşma notu: matristeki her "boşluk" bir hata değildir — bazen standart yalnızca farklı bir soru soruyordur.
Konuşma notu: Sonra gereksinimleri projeye aktarma.
Konuşma notu: CEN429-CR-03'ü "uygulanır mı?" sorusundan sürüm planındaki bir göreve kadar, altı adımın tamamında canlı çalıştırın.
Konuşma notu: 1. adım tek başına süreci bitirebilir — ama yalnız gerekçe yazılıysa, hiçbir zaman sessizce değil.
Konuşma notu: Sonra proje ve çözümlü sınama.