Azerbaycan Secure Coding in C & C++ Eğitimi

  • Eğitim Tipi: Classroom / Virtual Classroom / Online
  • Süre: 3 Gün
  • Seviye: Intermediate

Bu eğitim, Avatao platformunu dünyaca ünlü Güvenli Kodlama ortağımız Scademy'nin uzman içeriğiyle birleştiren karma bir öğrenme deneyimi sunar.

Açıkça söylemek gerekirse, C/C++ kodu yazmak, bellek yönetiminden veya eski kodla uğraşmaktan keskin teslim tarihlerine ve kod sürdürülebilirliğine kadar uzanan nedenlerle bir mayın tarlası olabilir. Ancak, tüm bunların ötesinde, saldırganların şu anda kodunuza girmeye çalıştığını söylesek? Başarılı olma olasılıkları ne kadar olurdu?

Bu eğitim, C/C++ kodunuza bakış açınızı değiştirecek. Bilgisayar korsanlarının sisteminize saldırmasına izin verebilecek yaygın zayıflıkları ve bunların sonuçlarını ve daha da önemlisi kendinizi korumak için uygulayabileceğiniz en iyi uygulamaları öğreteceğiz. Makine kodu seviyesinden sanal işlevlere ve işletim sistemi bellek yönetimine kadar C/C++ programlama hataları ve bunlara karşı önlemler hakkında bütünsel bir görüş sunuyoruz. Eğitimi ilgi çekici ve eğlenceli kılmak için tüm eğitimi canlı pratik alıştırmalarla sunuyoruz.

Güvenli kod yazmak, rakiplerinize göre size belirgin bir avantaj sağlayacaktır. Sürünün önünde olmak sizin seçiminizdir - bir adım atın ve siber suçla mücadelede oyunun kurallarını değiştirin.

Konular şunları içerir:

  • BT güvenliği ve güvenli kodlama
  • x86 makine kodu, bellek düzeni ve yığın işlemleri
  • Arabellek taşması
  • Pratik kriptografi
  • Güvenlik protokolleri
  • XML güvenliği
  • Yaygın kodlama hataları ve güvenlik açıkları
  • Güvenlik ve güvenli kodlama ilkeleri
  • Bilgi kaynakları
Daha fazla +
Bu eğitimi kendi kurumunuzda planlayabilirsiniz.

Önkoşullar

"Secure Coding in C & C++" eğitimi için genel C/C++ geliştirme becerilerine ihtiyaç vardır.

Daha fazla +

Neler Öğreneceksiniz

  • Güvenlik, BT güvenliği ve güvenli kodlamanın temel kavramlarını anlayın
  • Güvenli olmayan arabellek kullanımının ciddi sonuçlarını fark edin
  • Mimari koruma tekniklerini ve zayıflıklarını anlayın
  • Kriptografi hakkında pratik bir anlayışa sahip olun
  • Temel güvenlik protokollerini anlayın
  • XML güvenliği hakkında bilgi edinin
  • Tipik kodlama hataları ve bunlardan nasıl kaçınılacağı hakkında bilgi edinin
  • Çeşitli platformlardaki, çerçevelerdeki ve kütüphanelerdeki son güvenlik açıkları hakkında bilgi edinin
  • Güvenli kodlama uygulamaları hakkında kaynaklar ve daha fazla okuma edinin

Not: Bu eğitim, gerçek zamanlı etik hackleme eğlencesi sağlayan bir dizi anlaşılması kolay alıştırma ile birlikte gelir. Bu alıştırmaları eğitmenin desteğiyle gerçekleştirerek, katılımcılar belirli güvenlik sorunlarının temel nedenlerini tam olarak anlamak için savunmasız kod parçacıklarını analiz edebilir ve bunlara karşı saldırılar gerçekleştirebilir. Tüm alıştırmalar, tek tip bir geliştirme ortamı sağlayan önceden ayarlanmış bir masaüstü sanal makinesi kullanılarak tak ve çalıştır tarzında hazırlanır.

Daha fazla +

Outline

1. Gün

BT güvenliği ve güvenli kodlama

  • Güvenliğin doğası
  • Risk nedir?
  • BT güvenliği ve güvenli kodlama
  • Güvenlik açıklarından botnet'lere ve siber suçlara
  • Güvenlik kusurlarının doğası
  • Zorluk nedenleri
  • Enfekte bir bilgisayardan hedefli saldırılara
  • Yedi Zararlı Krallık
  • OWASP İlk On 2017

x86 makine kodu, bellek düzeni ve yığın işlemleri

  • Intel 80x86 İşlemciler – ana kayıtlar
  • Intel 80x86 İşlemciler – en önemli talimatlar
  • Intel 80x86 İşlemciler – bayraklar
  • Intel 80x86 İşlemciler – kontrol talimatları
  • Intel 80x86 İşlemciler – yığın işleme ve akış kontrolü
  • Bellek adresi düzeni
  • x86 üzerinde C/C++'da işlev çağırma mekanizması
  • Çağrı kuralları
  • Yerel değişkenler ve yığın çerçevesi
  • İşlev çağrıları – bir işlevin önsözü ve sonsözü
  • İç içe çağrıların yığın çerçevesi
  • Özyinelemeli işlevlerin yığın çerçevesi

Arabellek taşması

  • Yığın taşması
  • Yığında arabellek taşması
  • Dönüş adresinin üzerine yazma
  • Alıştırmalar – giriş
  • BOFIntro Alıştırma
  • BOFShellcode Alıştırma
  • BOFShellcode Alıştırma – hatayı bulun!
  • Yığın taşmasına karşı koruma
  • Belirli koruma yöntemleri
  • Farklı katmanlardaki koruma yöntemleri
  • Yazılım güvenliğinin PreDeCo matrisi
  • Yığın taşması – Önleme (geliştirme sırasında)
  • Yığın taşması – Algılama (yürütme sırasında)
  • Enstrümantasyonun güçlendirilmesi (FORTIFY_SOURCE)
  • BOFShellcode egzersizi – Güçlendirme
  • Yığın parçalama koruması
  • Yığın parçalama koruması çeşitleri
  • GCC'de yığın parçalama koruması
  • BOFShellcode egzersizi – Yığın parçalama koruması
  • Yığın parçalama korumasının etkileri
  • Yığın parçalama korumasını atlama
  • Bağımsız değişkenlerin üzerine yazma – Azaltma
  • Adres Alanı Düzeni Rastgeleleştirme (ASLR)
  • ASLR ile Rastgeleleştirme
  • ASLR'yi kullanma
  • ASLR'yi atlatma: NOP kızaklama
  • Yürütülemeyen bellek alanları – NX bit
  • Bellek segmentlerinde Erişim Denetimi
  • Never eXecute (NX) biti
  • BOFShellcode Egzersizi – NX bellek segmentlerini zorlama

2. Gün

Arabellek taşması

  • Return-to-libc saldırısı – NX bit korumasını atlatma
  • Bellek yürütme korumasını atlatma
  • Return-to-libc saldırısı
  • BOFShellcode egzersizi – Return-to-libc saldırısı
  • Return yönelimli programlama (ROP)
  • ROP ile istismar
  • ROP araçları
  • ROP aracı - Kayıtları sabitlerle doldurma
  • ROP aracı - Bellek yazma
  • ROP araçlarını birleştirme
  • Gerçek ROP saldırı senaryoları
  • ROP azaltma
  • ROP saldırısının azaltma teknikleri
  • Yığın taşması
  • Çift bağlantılı liste tarafından yönetilen bellek tahsisi
  • Yığın üzerinde arabellek taşması
  • Bellek bloklarını serbest bırakma ve birleştirme adımları
  • Ayrılmış bellek bloklarını serbest bırakma
  • Vaka çalışması – Heartbleed
  • TLS Heartbeat Uzantısı
  • Heartbleed – OpenSSL'de bilgi sızıntısı
  • Heartbleed – düzeltme v1.0.1g
  • Yığın taşmasına karşı koruma

Pratik kriptografi

  • Kripto sistemleri
  • Kripto sisteminin elemanları
  • Simetrik anahtar kriptografisi
  • Simetrik kriptografi ile gizlilik sağlama
  • Simetrik şifreleme algoritmaları
  • Blok şifreleri – çalışma modları
  • Diğer kriptografik algoritmalar
  • Karma veya mesaj özeti
  • Karma algoritmaları
  • SHAttered
  • Mesaj Kimlik Doğrulama Kodu (MAC)
  • Simetrik bir anahtarla bütünlük ve kimlik doğrulama sağlama
  • Rastgele sayılar ve kriptografi
  • Kriptografik olarak güçlü PRNG'ler
  • Donanım tabanlı TRNG'ler
  • Asimetrik (genel anahtar) kriptografi
  • Genel anahtar şifrelemesiyle gizlilik sağlama
  • Kural – özel anahtara sahip olma
  • RSA algoritması
  • RSA algoritmasına giriş
  • RSA ile şifreleme
  • Simetrik ve asimetrik algoritmaları birleştirme
  • RSA ile dijital imzalama
  • Genel Anahtar Altyapısı (PKI)
  • Aradaki Adam (MitM) saldırısı
  • MitM saldırısına karşı dijital sertifikalar
  • Genel Anahtar Altyapısında Sertifika Yetkilileri
  • X.509 dijital sertifikası

Güvenlik protokolleri

  • Güvenli ağ protokolleri
  • Belirli ve genel çözümler
  • SSL/TLS protokolleri
  • Güvenlik hizmetleri
  • SSL/TLS el sıkışması

XML güvenliği

  • Giriş
  • XML ayrıştırma
  • XML enjeksiyonu
  • (Ab)using CDATA to store XSS payload in XML
  • Alıştırma – XML enjeksiyonu
  • XML Varlığını Kötüye Kullanma
  • XML Varlığı tanıtımı
  • XML bombası
  • Alıştırma – XML bombası
  • XML dış varlık saldırısı (XXE) – kaynak dahil etme
  • XML dış varlık saldırısı – URL çağırma
  • XML dış varlık saldırısı – parametre varlıkları
  • Alıştırma – XXE saldırısı
  • Varlıkla ilgili saldırıları önleme
  • Vaka çalışması – Google Araç Çubuğunda XXE

Yaygın kodlama hataları ve güvenlik açıkları

  • Uygunsuz hata ve istisna işleme
  • Hata ve istisna işlemeyle ilgili tipik sorunlar
  • Boş yakalama bloğu
  • Aşırı geniş yakalama
  • Hata İşleme Egzersizi – hatayı tespit edin!
  • Egzersiz – Hata işleme
  • Vaka çalışması – macOS'ta '#iamroot' kimlik doğrulama atlama
  • macOS'ta (High Sierra) kimlik doğrulama süreci
  • opendirectoryd'de yanlış hata işleme
  • #iamroot güvenlik açığı (CVE-2017-13872)
  • Zaman ve durum sorunları
  • Zaman ve durumla ilgili sorunlar
  • Serileştirme hataları (TOCTTOU)
  • Sembolik bağlantılarla saldırılar
  • TOCTTOU Egzersizi
  • Kod kalitesi sorunları
  • Düşük kod kalitesinden kaynaklanan tehlikeler
  • Düşük kod kalitesi – hatayı tespit edin!
  • Yayımlanmamış kaynaklar
  • Tür uyumsuzluğu – Hatayı tespit edin!
  • Egzersiz Türü Uyumsuzluğu
  • Bellek tahsis sorunları
  • Akıllı işaretçiler
  • Sıfır uzunluk tahsisi
  • Çift serbest
  • Silme ve silmeyi karıştırma[]
  • Serbest olduktan sonra kullan
  • Serbest olduktan sonra kullan – Bir sınıfın örneği
  • Hatayı bul
  • Serbest olduktan sonra kullan – Sarkan işaretçiler

3. Gün

Yaygın kodlama hataları ve güvenlik açıkları

  • Giriş doğrulama
  • Giriş doğrulama kavramları
  • Tam sayı sorunları
  • Negatif tam sayıların gösterimi
  • Tam sayı aralıkları
  • Tam sayı taşması
  • C/C++'da tam sayı sorunları
  • C/C++'da tam sayı yükseltme kuralı
  • Aritmetik taşması – hatayı bulun!
  • Egzersiz IntOverflow
  • abs(INT_MIN) değeri nedir?
  • İşaretlilik hatası – hatayı bulun!
  • Tam sayı kesilmesi – hatayı bulun!
  • Tam sayı sorunu – en iyi uygulamalar
  • Vaka çalışması – Android Stagefright
  • Enjeksiyon kusurları
  • SQL Enjeksiyon egzersizi
  • Tipik SQL Enjeksiyon saldırı yöntemleri
  • Kör ve zaman tabanlı SQL enjeksiyonu
  • SQL Enjeksiyon koruma yöntemleri
  • Komut enjeksiyonu
  • Komut enjeksiyonu alıştırması – Netcat'i başlatma
  • Printf biçim dizesi hatası
  • Printf biçim dizeleri
  • Printf biçim dizesi hatası – istismar
  • Printf alıştırması
  • Printf biçim dizesi istismarı – dönüş adresinin üzerine yazma
  • printf biçim dizesi sorununun hafifletilmesi
  • Diğer bazı giriş doğrulama sorunları
  • Dizi dizinleme – hatayı tespit edin!
  • Off-by-one ve diğer null sonlandırma hataları
  • Unicode hatası
  • Yol geçişi güvenlik açığı
  • Yol geçişi azaltma
  • Günlük sahteciliği
  • Günlük dosyalarıyla ilgili diğer bazı tipik sorunlar
  • Vaka çalışması - Shellshock
  • Shellshock – bash'de işlevleri kullanmanın temelleri
  • Shellshock – bash'de güvenlik açığı
  • Alıştırma - Shellshock
  • Shellshock düzeltmesi ve karşı saldırılar
  • Alıştırma – Ortam değişkenleriyle komut geçersiz kılma
  • Güvenlik özelliklerinin uygunsuz kullanımı
  • Güvenlik özelliklerinin kullanımıyla ilgili tipik sorunlar
  • Güvensiz rastgelelik
  • C ve C++'da zayıf PRNG'ler
  • C'de daha güçlü PRNG'ler
  • Parola yönetimi
  • Alıştırma – Karma parolaların zayıflığı
  • Parola yönetimi ve depolama
  • Kaba kuvvet
  • Parola depolama için özel amaçlı karma algoritmaları
  • Argon2 ve PBKDF2 uygulamaları C/C++
  • C/C++'da bcrypt ve scrypt uygulamaları
  • Vaka çalışması – Ashley Madison veri ihlali
  • Şifre yönetimindeki tipik hatalar
  • Alıştırma – Sabit kodlanmış şifreler
  • Yetersiz anti-otomasyon
  • Captcha
  • Captcha zayıflıkları

Güvenlik ve güvenli kodlama ilkeleri

  • Matt Bishop'un sağlam programlama ilkeleri
  • Saltzer ve Schroeder'in güvenlik ilkeleri

Bilgi kaynakları

  • Güvenli kodlama kaynakları – başlangıç seti
  • Güvenlik açığı veritabanları
  • Önerilen kitaplar – C/C++

Sınav Bilgileri

Bu bir NCSC Sertifikalı Eğitimidir. Sınav, eğitimden sonra delegelerin kendi zamanlarında girecekleri Sertifika için bir Proctor-U APMG sınavıdır. Delegeler, genellikle sınavdan iki hafta sonra erişilebilen AMPG GCT aday portallarına erişmek için bireysel e-postalar alacaklardır.

Katılımcılar, sınıfta öğrendiklerini pratik etmek için Avatao dijital platformuna iki hafta erişim sağlarlar.

Daha fazla +


Eğitimlerle ilgili bilgi almak ve diğer tüm sorularınız için bize ulaşın!

Eğitim Tarihleri

Sınıf eğitimlerimizi Azerbaycan ofislerimizde düzenlemekteyiz. Kurumunuza özel eğitimleri ise, dilediğiniz tarih ve lokasyonda organize edebiliriz.

12 aprel 2025 (3 Gün)
Baku
Classroom / Virtual Classroom
25 aprel 2025 (3 Gün)
İstanbul
Classroom / Virtual Classroom
22 may 2025 (3 Gün)
İzmir
Classroom / Virtual Classroom
26 may 2025 (3 Gün)
Bodrum
Classroom / Virtual Classroom
11 iyun 2025 (3 Gün)
Antalya
Classroom / Virtual Classroom
13 iyun 2025 (3 Gün)
Kapadokya
Classroom / Virtual Classroom
07 iyul 2025 (3 Gün)
Bursa
Classroom / Virtual Classroom
07 iyul 2025 (3 Gün)
Ankara
Classroom / Virtual Classroom

İlgili Eğitimler

Secure Coding in C & C++ Eğitimi Azerbaycan

Kardeş ülke Azerbaycan (resmi adıyla Azerbaycan Cumhuriyeti) Kafkasya’da, Güney Kafkas Dağları bölgesinde bulunmaktadır. Çok zengin bir kültüren mirasa sahip olan Azerbaycan’ın, Hazar Denizi, Rusya, Gürcistan, Ermenistan ve İran gibi sınır komşuları vardır. Kafkasya’nın en büyük yüzölçümlü ülkesi olan Azerbaycan’da harika bir doğa çeşitliliği mevcut olup, hayvan yaşamının zenginliği de dikkat çekicidir. Üniter bir devlet olan Azerbaycan’ın Cumhurbaşkanı İlham Aliyev, resmi dili Azerice’dir.

Farsça Azar (Ateş) ve Payegan (Muhafız) kelimelerinin birlikteliğinden adını alan Azerbaycan Ateşler Ülkesi olarak da bilinmektedir. Bakü’de bulunan Flame Towers ülkenin en turistik yerlerinden biridir. Ülkede çok sayıda yanardağ ve petrol yatağı bulunmaktadır. Azerbaycan’ın mutlaka görülmesi gereken yerleri arasında Bakü’deki Alev Kuleleri, Kız Kalesi, Ateşgah, Targovi Caddesi ve Bakü Bulvarı’nın yanı sıra farklı şehirlerdeki Şeki Hanları Sarayı, Kobustan Milli Parkı, Han Bağı, Kebele ve Göygöl Milli Parkı sayılabilir.
Sitemizi kullanarak çerezlere (cookie) izin vermektesiniz. Detaylı bilgi için Çerez Politika'mızı inceleyebilirsiniz.