DEFENSIVE CODING BEST PRACTICES FOR C/C++ EĞİTİMİ

C/C++ için sahada kanıtlanmış savunma

C ve C++ için savunmacı kodlama en iyi uygulamaları, standartlar ve araç zinciri

Defensive Coding Best Practices C/C++ eğitimi; CERT ve MISRA Kural Aileleri, Bellek ve String Zafiyetleri, Tamsayı ve Tip Hataları, Kaynak ve Eşzamanlılık Zafiyetleri ve daha fazlası.

2 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

Kodlama Standartları ve Zafiyet Sınıfları ve Araç Zinciri ve Süreç ekseninde ilerleyen uygulamalı program

Bu eğitim C ve C++ kodunda güvenliği artıran en iyi uygulamaları bir araya getirir: CERT C / C++ ve MISRA kural aileleri, bellek ve string güvenliği, tamsayı hataları, biçim dizgisi zafiyetleri, race condition, güvenli yaşam döngüsü, derleyici sertleştirme bayrakları (stack protector, PIE, RELRO, FORTIFY_SOURCE), statik/dinamik analiz ve fuzzing. Gerçek CVE örnekleri savunma kalıplarıyla birlikte incelenir.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün Kodlama Standartları ve Zafiyet Sınıfları; 2. gün Araç Zinciri ve Süreç.

Seviye

İleri Seviye — C ve C++ için savunmacı kodlama en iyi uygulamaları, standartlar ve araç zinciri

Öğrenme Metodu

Her modülde kısa konu anlatımının ardından g++/clang++ ile derlenen kod egzersizleri yapılır; sanitizer ve derleyici uyarılarıyla hatalar birlikte ayıklanır.

Neden Bu Eğitim?

💻Kod Odaklı Öğrenme

Defensive Coding Best Practices C/C++ konuları her modülde yazıp çalıştırdığınız egzersizlerle pekiştirilir; teori kodla birlikte ilerler.

🐞Gerçek Hata Örnekleri

Sahada sık görülen hatalar bilinçli olarak üretilir, nedenleri incelenir ve kalıcı çözüm kalıpları gösterilir.

🎓Katılım Sertifikası

Eğitimi tamamlayan katılımcılar Digital Vizyon Akademi Katılım ve Başarı Sertifikası alır.

Anahtar Konular

Defensive Coding Best Practices C/C++ eğitimiDefensive Coding Best Practices C/C++ kursuC++ güvenli kodlamaCERT CMISRA Cbuffer overflowfuzzingderleyici sertleştirmeDigital Vizyon Akademi
“Güvenlik, sonradan eklenen bir özellik değil, her satırdaki alışkanlıktır.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
C++ Temelleri

Değişken, fonksiyon, sınıf ve işaretçi kavramlarına temel düzeyde aşinalık beklenir.

2
Derleyici Ortamı

g++ / clang++ veya MSVC ile C++17 standardında derleme yapabilen bir kurulum gerekir.

3
Komut Satırı

Derleme çıktılarını ve hata mesajlarını okuyabilecek kadar terminal alışkanlığı faydalıdır.

4
Editör veya IDE

VS Code, CLion ya da Visual Studio gibi bir geliştirme ortamı hazır olmalıdır.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı yaygın C/C++ zafiyet sınıflarını tanır ve ilgili standart kurallarıyla ilişkilendirir.
Modül 1
CERT ve MISRA Kural Aileleri
  • SEI CERT C ve C++ kodlama standartlarının yapısı
  • MISRA C:2012 ve MISRA C++:2023 kuralları (zorunlu, gerekli, öneri)
  • Sapma (deviation) süreci
  • C Core Guidelines ile ilişki
  • Kural ihlali örneklerinin incelenmesi
  • Standart seçiminde proje bağlamı
Modül 2
Bellek ve String Zafiyetleri
  • Stack ve heap buffer overflow
  • strcpy, gets, sprintf ve güvenli alternatifleri
  • Biçim dizgisi zafiyeti (printf(user_input))
  • Off-by-one ve null sonlandırıcı hataları
  • Use-after-free ve double free
  • CVE vaka çalışması: sınır denetimi eksikliği
Modül 3
Tamsayı ve Tip Hataları
  • Signed overflow ve unsigned wrap
  • Dönüşüm ve sign-extension hataları
  • malloc(n*size) taşması ve calloc/reallocarray
  • size_t, ssize_t ve ptrdiff_t doğru kullanımı
  • Integer promotion kuralları
  • Güvenli aritmetik yardımcı fonksiyonlar
Modül 4
Kaynak ve Eşzamanlılık Zafiyetleri
  • TOCTOU ve dosya yarış durumu
  • Dosya tanıtıcı sızıntısı ve fork sonrası mirası
  • Sinyal işleyici (async-signal-safe) kuralları
  • Veri yarışı ve atomic kullanımı
  • Ortam değişkeni ve PATH güvenliği
  • Ayrıcalık düşürme (setuid sonrası)
Günün hedefiKatılımcı derleyici sertleştirme ve analiz araçlarını geliştirme sürecine entegre eder.
Modül 1
Derleyici Sertleştirme
  • Wall -Wextra -Wformat=2 -Wconversion uyarıları
  • fstack-protector-strong, -D_FORTIFY_SOURCE=3
  • PIE/ASLR, RELRO ve NX bit
  • fstack-clash-protection ve CFI
  • checksec ile ikili sertleştirme denetimi
  • C++ standart kütüphane assertion modları
Modül 2
Statik Analiz
  • clang-tidy ve cppcheck kural setleri
  • Clang Static Analyzer ve scan-build
  • CodeQL ile sorgu tabanlı zafiyet arama
  • Yanlış pozitiflerin yönetimi
  • Analiz sonuçlarının CI'da kalite kapısı yapılması
  • Bulguların önceliklendirilmesi
Modül 3
Dinamik Analiz ve Fuzzing
  • ASan, UBSan, MSan ve TSan karşılaştırması
  • libFuzzer ve AFL++ ile fuzz hedefi yazımı
  • Korpus ve kapsam geri bildirimi
  • Fuzzer bulduğu çökmeyi küçültme ve kök neden
  • OSS-Fuzz mantığı
  • Valgrind ve rr ile hata ayıklama
Modül 4
Güvenli Geliştirme Yaşam Döngüsü
  • Tehdit modelleme (STRIDE) özeti
  • Güvenli kod incelemesi kontrol listesi
  • Bağımlılık ve SBOM yönetimi
  • Sürüm sonrası güvenlik açığı yönetimi
  • Güvenlik testlerinin birim testle birleşmesi
  • Kurumsal savunmacı kodlama politikası taslağı

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Standart Bilgisi

CERT ve MISRA kural ailelerinin amacını ve yapısını açıklayabilirsiniz

✅
Bellek Zafiyetleri

Buffer overflow ve use-after-free kalıplarını kodda tanıyabilirsiniz

✅
Tamsayı Güvenliği

Taşma ve dönüşüm hatalarını önleyen kod yazabilirsiniz

✅
Biçim Dizgisi

printf ailesi zafiyetlerini ve çözümlerini uygulayabilirsiniz

✅
Sertleştirme

Derleyici ve bağlayıcı sertleştirme bayraklarını doğru seçebilirsiniz

✅
Statik Analiz

clang-tidy, cppcheck ve CodeQL sonuçlarını yorumlayabilirsiniz

✅
Fuzzing

libFuzzer ile basit bir fuzz hedefi yazıp çökme bulabilirsiniz

✅
SDLC Entegrasyonu

Güvenli kodlama kontrollerini CI sürecine ekleyebilirsiniz

Kimler İçin Uygundur?

  • C veya C++ ile sistem
  • ağ ya da gömülü yazılım geliştiren
  • güvenli kodlama pratiklerini kurumsal hale getirmek isteyen mühendisler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
C veya C++ ile sistem, ağ ya da gömülü yazılım geliştiren, güvenli kodlama pratiklerini kurumsal hale getirmek isteyen mühendisler için uygundur.
Eğitimde hangi konular işlenir?
Program 2 gün sürer ve şu modülleri içerir: CERT ve MISRA Kural Aileleri, Bellek ve String Zafiyetleri, Tamsayı ve Tip Hataları, Kaynak ve Eşzamanlılık Zafiyetleri, Derleyici Sertleştirme, Statik Analiz, Dinamik Analiz ve Fuzzing, Güvenli Geliştirme Yaşam Döngüsü.
Eğitim C ve C++ için ayrı örnekler içeriyor mu?
Evet; her zafiyet sınıfı önce C tarzı ve ardından modern C++ çözümüyle gösterilir, katılımcılar kendi dillerine odaklanabilir.
MISRA uyumluluğu belgesi alınır mı?
Hayır; kural ailesi tanıtılır, uyumluluk belgelendirmesi bu eğitimin parçası değildir. Eğitim sonunda yalnızca DVA katılım sertifikası verilir.
Eğitim sonunda sertifika verilir mi?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir; programın dışında bir resmi sınav söz konusu değildir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Defensive Coding Best Practices for C/C++ Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
Seviyeİleri Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

C ve C++C++ Programlama Eğitimi
Yazılım Geliştirme Eğitimleri

C++ Programlama Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

C++ programlama eğitimi: işaretçiler, referanslar, sınıflar, kalıtım, şablonlar, STL konteynerleri, istisna yönetimi, dosya akışları ve modern C++ özellikleri.

Detayları Gör →
C ve C++C++ Yenilikleri ve Gelişmiş Özellikleri Eğitimi
Yazılım Geliştirme Eğitimleri

C++ Yenilikleri ve Gelişmiş Özellikleri Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

C++ yenilikleri ve gelişmiş özellikleri eğitimi: C++11/14/17/20/23, lambda, concepts, ranges, coroutines, modules, std::format ve optional/variant kullanımı.

Detayları Gör →
C ve C++Embedded Systems (Gömülü Sistemler) için C++ Eğitimi
Yazılım Geliştirme Eğitimleri

Embedded Systems (Gömülü Sistemler) için C++ Eğitimi

2 günİleriOnline / Yüz Yüze / Hibrit

Gömülü sistemler için C++ eğitimi: ARM Cortex-M, register soyutlama, constexpr, kesmeler, FreeRTOS, bellek kısıtlı tasarım, MISRA C++ ve host tabanlı test.

Detayları Gör →
C ve C++Object Oriented Programming (OOP) with C++ Eğitimi
Yazılım Geliştirme Eğitimleri

Object Oriented Programming (OOP) with C++ Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

OOP with C++ eğitimi: sınıf yaşam döngüsü, Rule of 5, kalıtım, sanal fonksiyonlar, çoklu kalıtım, SOLID ilkeleri ve Factory, Strategy, Observer tasarım desenler

Detayları Gör →
C ve C++Qt Programming Eğitimi
Yazılım Geliştirme Eğitimleri

Qt Programming Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Qt programlama eğitimi: Qt 6 ile sinyal-slot, Widgets, model/view, QML ve Qt Quick, C++-QML entegrasyonu, QThread, ağ, SQLite ve çapraz platform paketleme.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn