Genel Bilgi
Kod | CENG0034 |
Ad | Web Application Security |
Dönem | 2024-2025 Eğitim-Öğretim Yılı |
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ı / Hedefi
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 |