Ders Adı Kodu Yarıyıl T+U Saat Kredi AKTS
Güvenli Yazılım Geliştirme SG 508 0 3 + 0 3 6
Ön Koşul Dersleri

Nesne Yönelimli Programlama, Web Programlama

Önerilen Seçmeli Dersler
Dersin Dili Türkçe
Dersin Seviyesi YUKSEK_LISANS
Dersin Türü Seçmeli
Dersin Koordinatörü Dr.Öğr.Üyesi KAYHAN AYAR
Dersi Verenler Dr.Öğr.Üyesi KAYHAN AYAR,
Dersin Yardımcıları
Dersin Kategorisi Diğer
Dersin Amacı

Son yıllarda yazılımlardan kaynaklı güvenlik açıklıklarının artması ve bunun sonucu olarak beklenmedik kayıpların ortaya çıkması, yazılım geliştirilme süreçlerinin her aşamasında güvenlik konusunun göz önünde bulundurulması zorunluluğunu beraberinde getirmiştir. Bu ders kapsamında, güvenli yazılım geliştirme yaşam döngüsü ve web tabanlı uygulamaların güvenliği konuları irdelenecektir. Web uygulamalarının maruz kaldıkları yaygın güvenlik tehditleri incelenerek, alınması gereken önlemler güvenli yazılım geliştirme yaşam döngüsü kapsamında ele alınacaktır.

Dersin İçeriği

Yazılımların Güvenliği, Yazılım Geliştirme Yaşam Döngüsü, Web Tabanlı Uygulama Mimarisi (Senkron İletişim, Asenkron İletişim, Oturum Yönetimi, Veri Tabanı Bağlantıları, Erişim Denetimi...), Nesne Yönelimli Paradigma, SOLID İlkeleri, Web Servisleri, Güvenli Yazılım Geliştirme Yaşam Döngüsü ( Tehdit Modelleme ve Risk Analizi, Statik Kod Analizi, Dinamik Kod Analizi), Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi  , Web Tabanlı Uygulamaların Güvenli Hale Getirilmesi, Proje Çalışması

# Ders Öğrenme Çıktıları Öğretim Yöntemleri Ölçme Yöntemleri
1 Güvenli yazılım geliştirmenin temellerini anlar. Anlatım, Soru-Cevap, Tartışma, Sınav, Ödev,
2 Web tabanlı yazılımlara karşı yapılan temel saldırıları bilir Gösterip Yaptırma, Tartışma, Soru-Cevap, Örnek Olay, Anlatım, Sınav, Ödev, Proje / Tasarım,
3 Web uygulamalarına yapılan saldırılara karşı alınması gereken önlemleri uygulayabilir Gösterip Yaptırma, Tartışma, Soru-Cevap, Örnek Olay, Anlatım, Proje / Tasarım, Ödev, Sınav,
4 Tehdit modellemesi yapabilir Tartışma, Soru-Cevap, Anlatım, Ödev, Sınav,
5 Web uygulamalarının statik ve dinamik kod analizini yapabilir Gösterip Yaptırma, Anlatım, Ödev, Sınav,
Hafta Ders Konuları Ön Hazırlık
1 Ders Tanıtımı, Yazılımların Güvenliği
2 Güvenli Yazılım Geliştirme Yaşam Döngüsü, Programlama Paradigmaları
3 Web Tabanlı Uygulama Mimarisi (Senkron İletişim, Asenkron İletişim, Oturum Yönetimi, Veri Tabanı Bağlantılarıi)
4 Güvenli Yazılım Geliştirme Yaşam Döngüsü, Oturum Yönetimi, Rol Tabanlı Erişim Denetimi, Web Servisler
5 Güvenli Yazılım Geliştirme Yaşam Döngüsü: Tehdit Modelleme ve Risk Analizi
6 Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi
7 Statik Kod Analizi, Dinamik Kod Analizi
8 Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi
9 Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi
10 Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi, NodeGoat
11 Web Tabanlı Uygulamaların Güvenliği; Güvenlik Denetimleri, OWASP TOP 10 Listesi, NodeGoat
12 Web Tabanlı Uygulamaların Güvenliği; OWASP Güvenlik Doğrulama Standardı
13 Proje Sınavları
14 Proje Sınavları
Kaynaklar
Ders Notu

Ders Notları

https://github.com/celalceken/SecureSoftwareDevelopment
http://www.iotlab.sakarya.edu.tr/CoursesMain.html

Ders Kaynakları

1. OWASP, https://www.owasp.org/index.php/Main_Page
2. https://www.owasp.org/index.php/OWASP_Proactive_Controls
3. Software Security: Building Security In by Gary McGraw. Addison-Wesley, ISBN 978-321-35670-3
4. The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities, 978-0-321-4442-4, by Dowd, McDonald, and Schuh
 

Değerlendirme Sistemi
Yarıyıl Çalışmaları Katkı Oranı
1. Performans Görevi (Seminer) 100
Toplam 100
1. Yıl İçinin Başarıya 30
1. Final 70
Toplam 100
AKTS - İş Yükü Etkinlik Sayı Süre (Saat) Toplam İş Yükü (Saat)
Ders Süresi (Sınav haftası dahildir: 16x toplam ders saati) 16 3 48
Sınıf Dışı Ders Çalışma Süresi(Ön çalışma, pekiştirme) 16 1 16
Ara Sınav 1 10 10
Ödev 1 10 10
Proje / Tasarım 1 20 20
Final 1 35 35
Toplam İş Yükü 139
Toplam İş Yükü / 25 (Saat) 5,56
Dersin AKTS Kredisi 6