3. Bilgisayar Teknolojileri
Gelişim Dönemleri
1984 - 1993 1994 - 1999 2000 – 2005 2006 – Bugün
• Multimedya • WEB Başlangıç • Yeni Dönem • Yüksek
Dönemi Dönemi WEB performanslı
• E-posta • Yüksek kalite mobil iletişim
• CD ROM’lar ve uygulamalar
• İnternet ses ve
• İntranet görüntü
aktarımı
• Düşük Kalite
Ses ve
Görüntü
3
4. Kullanıcı talepleri teknolojik
gelişmeyi tetikliyor...
• 500 (1999)
İşlemci Hızı (Mhz) • 3000 (2009)
(Intel) • 6 katı
• 9,500,000 (1999)
Transistör Sayısı • 820,000,000 (2009)
(Intel) • 86.3 katı
• 237 (1999)
Mobil İletişim • 42,000 (2009)
(Kbps) • 177.2 katı
4
5. Gelişen Teknoloji, Kullanım
Oranlarını Yükseltiyor...
İnternet Kullanıcı • 360,985,492 (2000)
Sayısı • 1,668,870,408 (2009)
(kaynak:Internet • 4.6 katı (Dünya
WorldStats) Nüfusunun %25’i)
• 27,467,000,000 $ (2000)
E-ticaret • 127,395,000,000 $
(kaynak:PCWorld) (2007)
• 4.6 katı
• 20,547 (2002)
İnternet Tehdit
Sayısı • 1,656,227 (2008)
(kaynak:Symantec)
• 80.6 katı
5
6. İnternet Uygulamaları
Finans
E-Ticaret
Telekomünikasyon
Basın
Sigorta
Sağlık
Eğitim
Sosyal paylaşım siteleri (Facebook, Twitter)
Belediye hizmetleri
Devlet hizmetleri 6
7. Web sitesi ataklarının %78’i yazılım katmanında
gerçekleştiriliyor (Cenzic Web Application
Security Trends Report, 2009)
Uygulama
Güvenliği
Sistem
Güvenliği
Ağ
Güvenliği
Tehdit
7
8. Tespitler...
Yazılım güvenliği konusunda farkındalık yeterli değil.
Organizasyon düzeyinde
Yazılım geliştirici düzeyinde
Tedarikçiler düzeyinde
Güvenlik, çoğu kez kod geliştiricinin öncelikleri arasında yer
almıyor, zaman kaybettirdiği düşünülüyor.
Hızlı kod geliştirme ihtiyacı, güvenlik kontrollerinin
gerçekleştirilmesinde direnç oluşmasına neden oluyor.
Eğitim ihtiyacı var.
Uygulama Güvenliği ve Farkındalık Eğitimleri
Üniversitelerde ders olarak verilebilir.
E-öğrenme olanakları kullanılabilir.
E-Devlet çalışmaları kapsamında ele alınabilir.
8
9. Uygulama güvenliğini yazılım geliştirme yaşam
döngüsünün parçası olarak ele alanların oranı :
%31 (Deloitte, 2008).
9
10. Güvenlik açıkları kodu baştan yazmayı
gerektirebilir...
Uygulama Geliştirme Güvenliği, Uygulama Geliştirme Yaşam
Döngüsünün bir alt süreci olarak ele alınmalıdır.
Yazılım geliştirme ve bakım aşamalarında kod düzeyinde güvenlik test
süreci ilave edilmelidir.
Geliştirme zamanının belli bir bölümü (%5-10) kod analizine ayrılmalıdır.
Kontroller otomatik ve manuel düzeyde iki aşamalı yapılmalıdır.
Kontroller ;
kod yazılırken,
geliştirme sonrasında, üretime geçiş öncesinde,
üretimde belli periyodlarda yapılmalıdır.
Dışarıdan alınan test hizmetlerine uygulama güvenliğine
yönelik kontroller ilave edilmelidir.
10
11. Türkiye’de internet kullanıcı sayısı 2000-2009 yılları arasında12 kat
büyüdü. Nüfusun (75 milyon 738 bin 836) %35’i internet
kullanıcısı (26 milyon 500 bin).
(Kaynak:http://www.internetworldstats.com, 31 Mart 2009)
11
12. Mobil Teknolojilerdeki Gelişmeler Kapsamında
Uygulama Güvenliği...
GSM operatör bilgilerine göre Türkiye’de 2009’un
3.çeyreği itibariyle 63.8 milyon civarında cep
telefonu abonesi bulunuyor.
3G (>4G) teknolojilerinin kullanımı ile birlikte
mobil uygulamaların kullanım oranlarında daha
hızlı bir artış beklenebilir.
Mobil uygulama güvenliği GSM operatörleri,
uygulama sahibi kurum ve kuruluşlar, kullanıcılar
çerçevesinde farkındalık yaratılması gereken
alanlardan biridir.
12
13. Bilgi Toplumu Stratejisi ve Eylem Planı ve E-
Devlet Uygulamalarda Güvenlik...
E-Devlet uygulamalarında iletişim ağı ve
sistem güvenliğine ilaveten uygulama
güvenliği konusu da dikkate alınmalıdır.
13
14. Uygulama Güvenlik Altyapısı
Uygulama
Geliştiriciler
Uygulama
Altyapı
Tasarımı
Güvenlik Sistem
Uzmanları Yöneticileri
14
15. PCI (Payment Card Industry) Quick Reference
Guide – Data Security Standard Version 1.2, 2008
6.5 Develop all web applications based on secure code
to identify coding vulnerabilities.
6.6 Ensure that all public Web-facing applications are
protected known attacks with at least annual reviews
of code, and by installing a Web application fire-wall
in front of public-facing web applications.
15
16. OWASP : Open Web Application Security Project
http://www.owasp.org
Top 10 – 2010
A1 : Injection
A2 : Cross Site Scripting (XSS)
A3 : Broken Authentication and Session Management
A4 : Insecure Direct Object References
A5 : Cross Site Request Forgery
A6 : Security Misconfiguration
A7 : Failure to Redirect URL Access
A9 : Insecure Cryptographic Storage
A10: Insufficient Transport Layer Protection
16
18. Hataların oluşmadan önlenmesi için yapılacak çalışmalar,
oluşacak hataların çözülmesi için çaba harcamaktan daha
ekonomiktir.
BT Kalite Politikası
...
Süreç odaklı çalışmak esastır.
Güvenlik Yönetim Süreci BT Kalite Yönetimi’nin parçasıdır.
Güvenlik bir kalite hedefidir.
BT Güvenlik Politikası
...
Bir uygulamanın güvenlik gereksinimleri tasarım aşamasında belirlenir.
Süreç Uyumluluk Denetimleri
...
BT Kalite Yönetimi mevcut BT süreçlerinin iyileştirilmesini, hataların
azaltılmasını sağlar.
18
20. Tasarım aşaması : Tehdit Modelleme
STRIDE
Kandırma (Spoofing)
Değiştirme (Tampering)
İnkar Etme (Repudiation)
Bilgi Sızması (Information Disclosure)
Hizmet Kesintisi (Denial of Service)
Yetki Yükseltme (Elevation of Privilege)
20
21. Tasarım aşaması...
Kandırma > kimlik doğrulama
Değiştirme > yetkilendirme, imzalama
İnkar etme > kimlik doğrulama, yetkilendirme, imzalama, kayıt tutma
Bilgi sızması > yetkilendirme, kripto
Hizmet kesintisi > filitreleme, kimlik doğrulama, yetkilendirme
Yetkilerin yükseltilmesi > minumum yetki prensibiyle çalışma
Örnek güvenlik kalıpları için : http:// www.securitypatterns.org
21
22. Yazılım Güvenliği Gözden Geçirme Süreci
Yazılım geliştirme sırasında uygulama geliştirici
tarafından,
Static kod analiz gereçleri kullanılarak
İkinci bir geliştiricinin gözle kontrolü ile
Üretime geçiş öncesi güvenlik kontrolü sırasında
En yüksek riskten başlayarak değerlendirme
Üretime geçiş sonrası dışarıdan uygulama zayıflık
testleri yapılarak (Üçer aylık periyodlarda)
En yüksek riskten başlayarak değerlendirme
22
23. Yazılım güvenliği için...
Politika, Prosedür ve
Süreçlerin Uygulama
Uygulama güvenlik
Güvenliği
Testleri (Dış)
kapsamında
genişletilmesi
Yazılım Geliştirme
Metodolojisinin
Uygulama Güvenlik
Uygulama Güvenliği
Testleri (İç)
kapsamında
genişletilmesi
Eğitim (Uygulama
Geliştiriciler,
Yazılım BT Uyumluluk
Denetimleri (İç ve
Güvenlik Uzmanları)
Güvenliği Dış)
23
24. Bilgi Güvenliği
Güvenlik
• Gizlilik
• Bütünlük
• Erişebilirlik
Kullanılabilirlik
• İş Gereksinimleri
• Kurum Yapısı
• Güvenlik Riskleri
• Bütçe
• Diğer Koşullar
24