CENG0034 Web Application Security

6 AKTS - 3-0 Süre (T+U)- . Yarıyıl- 3 Yerel Kredi

Genel Bilgi

Kod CENG0034
Ad Web Application Security
Yarıyıl . Yarıyıl
Süre (T+U) 3-0 (T-U) (17 Hafta)
AKTS 6 AKTS
Yerel Kredi 3 Yerel Kredi
Eğitim Dil İngilizce
Seviye Yüksek Lisans Dersi
Tür Normal
Öğretim Şekli Yüz Yüze Öğretim
Bilgi Paketi Koordinatörü Doç. Dr. FATİH ABUT


Dersin Amacı

Bu ders web sitelerine, web uygulamalarına ve web servislerine uygulanan güvenlik yöntemlerini içermektedir. Ders, güvenlik ilke ve tekniklerini uygulayarak güvenli web uygulamalarının nasıl geliştirileceği ve sürdürüleceğine odaklanmaktadır.

Dersin İçeriği

Kullanıcı izleme/profil oluşturma. Gizlilik koruma. Kullanıcı doğrulama ve oturum yönetimi. Web ortamı güvenliği: web sunucularının güvenli kurulumu ve güvenlik duvarı. SQL enjeksiyonu. Siteler arası komut dosyası çalıştırma (XSS). Siteler arası istek sahteciliği (CSFR). Güvenli HTTP (HTTPS): hedefler ve tuzaklar. İnternet e-postası: MIME ve PGP, kimlik avı, istenmeyen posta gönderme ve yanıltma. Web siteleri için güvenli e-ödeme sistemleri. Bulut bilişim ve güvenlik. Web DDoS saldırıları ve önleme. XML güvenliği. AJAX ve web hizmetleri güvenliği. PHP ve Java sunucu uygulamalarının güvenlik kavramları. Java sunucu sayfalarının güvenlik kavramları ve Java sunucu yüzleri. Son saldırı eğilimleri ve son teknoloji web güvenliği

Dersin Ön Koşulu

Ön koşul bulunmamaktadır.

Kaynaklar

1. Hanqing W. Web Security, CRC Press, 2015, ISBN: 978-1466592612

Notlar

2. Harwood, M., Goncalves, M., and Pemble, M. Security Strategies in Web Applications and Social Networking (Information Systems Security & Assurance), 2010. ISBN: 9780763791957 3. Bruce W. Perry, “Java Servlet & JSP Cookbook”. O’Reilly Media, 2004


Dersin Öğrenme Çıktıları

Sıra Dersin Öğrenme Çıktıları
ÖÇ01 Web tabanlı uygulamaları ve ilgili tehditleri tanımlama ve ana bilgisayar, istemci-sunucu uygulamalarından ayırt etme becerisi
ÖÇ02 Web uygulaması güvenlik açıklarını değerlendirebilme ve karşı önlem alabilme
ÖÇ03 Web DDoS saldırılarını tespit etme ve azaltma yeteneği
ÖÇ04 E-ticaret işlemlerinde güvenli web tabanlı uygulamaların rolünü anlama becerisi
ÖÇ05 PHP, PHP, java servlets, java server pages ve java server faces güvenlik kavramlarını tanımlayabilme
ÖÇ06 En son web saldırısı eğilimlerini ve son teknoloji web güvenliğini tanımlayabilme


Program Öğrenme Çıktıları ile İlişkisi

Sıra Tür Program Öğrenme Çıktıları Duzey
PÖÇ01 Bilgi - Kuramsal, Olgusal Lisans düzeyinde kazanılan yetkinlikler temelinde Bilgisayar Mühendisliği temel alanında özgün çalışmalar için gerekli temeli sağlayan ileri düzeyde bilgi ve kavrayışa sahiptir. 3
PÖÇ02 Bilgi - Kuramsal, Olgusal Mühendislik alanında bilimsel araştırma yaparak bilgiye genişlemesine ve derinlemesine ulaşır, bilgiyi değerlendirir, yorumlar ve uygular. 3
PÖÇ03 Yetkinlikler - Öğrenme Yetkinliği Mesleğinin yeni ve gelişmekte olan uygulamalarının farkında olup, gerektiğinde bunları inceler ve öğrenir. 4
PÖÇ04 Yetkinlikler - Öğrenme Yetkinliği Mühendislik problemlerini kurgular, çözmek için yöntem geliştirir ve çözümlerde yenilikçi yöntemler uygular. 4
PÖÇ05 Yetkinlikler - Öğrenme Yetkinliği Analitik, modelleme ve deneysel esaslı araştırmaları tasarlar ve uygular, bu süreçte karşılaşılan karmaşık durumları çözümler ve yorumlar. 5
PÖÇ06 Yetkinlikler - Öğrenme Yetkinliği Yeni ve/veya özgün fikir ve yöntemler geliştirir, sistem, parça veya süreç tasarımlarında yenilikçi çözümler geliştirir. 5
PÖÇ07 Beceriler - Bilişsel, Uygulamalı Öğrenme becerilerine sahip olur. 4
PÖÇ08 Beceriler - Bilişsel, Uygulamalı Bilgisayar Mühendisliğinin yeni ve gelişmekte olan uygulamalarının farkında olup gerektiğinde bunları inceler ve öğrenir. 3
PÖÇ09 Beceriler - Bilişsel, Uygulamalı Çalışmalarının süreç ve sonuçlarını Bilgisayar Mühendisliği alanındaki veya alan dışındaki ulusal ve uluslararası ortamlarda açık bir şekilde yazılı veya sözlü olarak aktarır. 3
PÖÇ10 Beceriler - Bilişsel, Uygulamalı Bilgisayar Mühendisliğinde uygulanan güncel teknik ve yöntemler ile bunların kısıtları hakkında kapsamlı bilgiye sahip olur. 4
PÖÇ11 Beceriler - Bilişsel, Uygulamalı Bilgisayar Mühendisliğinin gerektirdiği düzeyde bilgisayar yazılımı ile birlikte bilişim ve iletişim teknolojilerini ileri düzeyde etkileşimli olarak kullanır. 2
PÖÇ12 Bilgi - Kuramsal, Olgusal Mesleki tüm etkinliklerde toplumsal, bilimsel ve etik değerleri gözetir.


Haftalık Akış

Hafta Konu Ön Hazırlık Yöntemler
1 Web Uygulama Güvenliğine Giriş Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
2 Tarayıcı güvenliği: tarayıcılara saldırı, kullanıcı izleme/profil oluşturma, gizliliği koruma, anonimlik, güvenli tarama Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
3 Kullanıcı Doğrulama ve Oturum Yönetimi Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
4 Web Ortamı Güvenliği: Web sunucularının güvenli kurulumu ve güvenlik duvarı Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
5 Web Sitesi Saldırıları: SQL Enjeksiyonu, Siteler Arası Komut Dosyası Çalıştırma (XSS), Siteler Arası İstek Sahteciliği (CSFR) Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
6 Güvenli HTTP (HTTPS): Hedefler ve Tuzaklar Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
7 İnternet E-Postası: MIME ve PGP, kimlik avı, spam gönderme ve kimlik sahtekarlığı, e-posta adli tıp Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
8 Ara Sınavlar Ölçme Yöntemleri:
Yazılı Sınav
9 Web Siteleri için Güvenli E-Ödeme Sistemleri Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
10 Bulut Bilişim ve Güvenlik Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
11 Web DDoS Saldırıları ve Önleme Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
12 XML verilerinin ayrıştırılmasında güvenlik, XML enjeksiyonu Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
13 AJAX ve Web Servisleri (SOAP ve REST) Güvenliği Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
14 Java Sunucu Uygulamaları, Java Sunucu Sayfaları ve Java Sunucu Yüzlerinin Güvenlik Kavramları Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
15 Güncel Saldırı Trendleri ve Son Teknoloji Web Güvenliği Ders notunun ilgili bölümünü okumak Öğretim Yöntemleri:
Anlatım
16 Yarıyıl Sonu Sınavları Ölçme Yöntemleri:
Yazılı Sınav
17 Yarıyıl Sonu Sınavları Ölçme Yöntemleri:
Yazılı Sınav


Öğrenci İş Yükü - AKTS

Çalışmalar Sayısı Süresi (Saat) İş Yükü (Saat)
Ders ile İlgili Çalışmalar
Ders (Sınav haftaları dahil değildir) 14 3 42
Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) 14 5 70
Değerlendirmeler ile İlgili Çalışmalar
Ödev, Proje, Diğer 0 0 0
Ara Sınavlar (Yazılı, Sözlü, vs.) 1 15 15
Yarıyıl/Yıl Sonu/Final Sınavı 1 30 30
Toplam İş Yükü (Saat) 157
Toplam İş Yükü / 25 (s) 6,28
AKTS 6 AKTS