WEB UYGULAMA GÜVENLİĞİ KILAVUZU

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "WEB UYGULAMA GÜVENLİĞİ KILAVUZU"

Transkript

1 ULUSAL ELEKTRONİK VE KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ Doküman Kodu: BGT-4001 WEB UYGULAMA GÜVENLİĞİ KILAVUZU SÜRÜM KASIM 2007 Hazırlayan: Bedirhan URGUN P.K. 74, Gebze, Kocaeli, TÜRKİYE Tel: (0262) Faks: (0262)

2 WEB UYGULAMA GÜVENLİĞİ KILAVUZU ÖNSÖZ ÖNSÖZ Ulusal Elektronik ve Kriptoloji Araştırma Enstitüsü (UEKAE)'nün misyonu, "bilgi güvenliği, haberleşme ve ileri elektronik alanlarında Türkiye'nin teknolojik bağımsızlığını sağlamak ve sürdürmek için nitelikli insan gücü ve uluslararası düzeyde kabul görmüş altyapısı ile, bilimsel ve teknolojik çözümler üretmek ve uygulamaktır". Bu ana hedef göz önünde bulundurularak belirlenen "bilgi güvenliği, haberleşme ve ileri elektronik alanlarında yeni teknolojilerin geliştirilmesine öncülük eden uluslararası bilim, teknoloji ve üretim merkezi olmak" vizyonuna ulaşılabilmesi ve ülkenin ihtiyacı olan teknolojilerin geliştirilmesi için Enstitü'nün akredite test ortam ve laboratuarlarında temel ve uygulamalı araştırmalar yapılmakta ve ihtiyaç sahiplerine teknik destek sağlanmaktadır. Bu doküman Ulusal Bilgi Sistemleri Güvenlik Projesi kapsamında hazırlanmış olup ihtiyaç sahiplerini bilgi sistemleri güvenliği konusunda bilinçlendirmeyi hedeflemektedir. Tüm kurum ve kuruluşlar bu dokümandan faydalanabilir. Bu dokümanda bahsi geçen belirli ticari marka isimleri kendi özgün sahiplerine aittir. Burada anlatılanlar tamamen tavsiye niteliğinde olup değişik ürünler/yapılandırmalar için farklılık gösterebilir. UEKAE, yapılan uygulamalardan doğabilecek zararlardan sorumlu değildir. Bu doküman UEKAE nin izni olmadan değiştirilemez. 2 TÜBİTAK UEKAE

3 BİLGİLENDİRME WEB UYGULAMA GÜVENLİĞİ KILAVUZU BİLGİLENDİRME Bu dokümanın oluşturulmasında emeği geçen Ağ Güvenliği personeline ve dokümanı gözden geçirip fikirlerini öne sürerek dokümanın olgunlaşmasına katkıda bulunan kişilere teşekkürü borç biliriz. TÜBİTAK UEKAE 3

4 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER İÇİNDEKİLER 1. GİRİŞ Amaç ve Kapsam Hedeflenen Kitle Kısaltmalar WEB UYGULAMALARI GİRİŞ Teknolojiler CGI Filtreler Betik Yazmak Web Uygulama Çatıları Sunum (view) Kontrolcü (controller) Uygulama Mantığı (model) GÜVENLİ KODLAMA PRENSİPLERİ Değer Sınıflandırması Saldırganlar Hakkında Bilgi güvenliğinin temel dayanakları Güvenlik Mimarisi Güvenlik İlkeleri Saldırı Yüzey Alanını Küçültmek Güvenli Öntanımlar En Az Öncelik İlkesi Kademeli Savunma İlkesi Güvenli Aksama Dış Sistemlerin Güvenli Olmaması Görevlerin Ayrımı Belirsizlik Yolu ile Güvenliğe Güvenmeyin TÜBİTAK UEKAE

5 İÇİNDEKİLER WEB UYGULAMA GÜVENLİĞİ KILAVUZU 3.14 Basitlik Güvenlik Sorunlarını Uygun Şekilde Ele Almak TEHDİT RİSK MODELLEME Tehdit Riskleri Modellemesinin Yapılması Tehdit Model Akışı Güvenlik Hedeflerinin Belirlenmesi Uygulamanın Gözden Geçirilmesi Uygulamayı Ayrıştırma Bilinen Tehditlerin Dokümanı STRIDE Yanıltıcı kimlik Veriyle oynamak Reddetme Bilgi Açıklama Servis reddi Ayrıcalık Seviyesi WEB SERVİSLERİ Web Servislerinin Güvenliği İletişim Güvenliği Kimlik Bilgilerinin Taşınması Mesaj Tazeliğini Sağlamak Mesaj Bütünlüğünün Sağlanması Mesaj Gizliliğinin Korunması Erişim Kontrolü Denetleme Web Servisleri Güvenlik Hiyerarşisi Standartlar Komitesi SOAP XML Güvenlik Spesifikasyonları (XML-dsig & Şifreleme)...44 TÜBİTAK UEKAE 5

6 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER 5.13 Güvenlik Spesifikasyonları WS-Güvenlik) Standardı Standardın Organizasyonu Amaç WS- Güvenlik Yapı Taşlar Veri Nasıl Taşınıyor Güvenlik Başlığının Yapısı Sembol Çeşitleri Mesaj Parçacıklarına Atıf İletişim Korum Mekanizmaları Bütünlük Gizlilik Tazelik Erişim Kontrol Mekanizmaları Tanımlama Kimlik Doğrulama Yetkilendirme Politika Anlaşması Web Servis Zinciri Oluşturma Uyumsuz Kullanıcı Eşimi Kontrol Modelleri Servislerin Güven İlişkisi Güvenli Bağlantılar Kullanıcı Dizinlerinin Senkronizasyonu Etki Alanı Birleşmeleri Var olan Uygulamalar NET Web Servis Eklentisi Java Araç Kitleri Donanım, yazılım sistemleri TÜBİTAK UEKAE

7 İÇİNDEKİLER WEB UYGULAMA GÜVENLİĞİ KILAVUZU 5.41 Problemler Standartların Hamlığı Performans Karmaşıklık ve Birlikte Çalışırlık Anahtar Yönetimi KİMLİK DOĞRULAMA Amaç En İyi Uygulamalar Genel Web Kimlik Doğrulama Yöntemleri Temel ve Özet Kimlik Doğrulama Form Tabanlı Kimlik Doğrulama Bütünleşik Kimlik Doğrulama Sertifika Tabanlı Kimlik Doğrulama Güçlü Kimlik Doğrulama Ne Zaman Güçlü Kimlik Doğrulama Kullanılmalıdır: Risk Ne Anlam İfade Eder? Biometrikler Kendi Başlarında Güçlü Bir Kimlik Doğrulama Değillerdir Güçlü kimlik doğrulamanın sorunları Birleşik Kimlik Doğrulama Kimlik (Bilgisi) Kanunları (Kuralları) Microsoft Pasaport İstemci Taraflı kimlik doğrulama kontrolleri Saldırıya Açıklığı Anlama Korunma Yolları Pozitif Kimlik Doğrulama Saldırıya Açıklığı Anlama Korunma Yolları Birden Fazla Anahtar ile Bakmak Saldırıya Açıklığı Anlama...78 TÜBİTAK UEKAE 7

8 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER Korunma Yolları Yönlendirici Kontrolü Saldırıya Açıklığı Anlama Korunma Yolları Tarayıcılar parolaları hatırlar Saldırıya Açıklığı Anlama Korunma Yolları Varsayılan Hesaplar Saldırıya Açıklığı Anlama Korunma Yolları Kullanıcı adı seçimi Saldırıya Açıklığı Anlama Korunma Yolları Şifre Değiştirmek Saldırıya Açıklığı Anlama Korunma Yolları Kısa Parolalar Saldırıya Açıklığı Anlama Korunma Yolları Zayıf Parola Kontrolleri Saldırıya Açıklığı Anlama Korunma Yolları Tersinir Parola Şifreleme Saldırıya Açıklığı Anlama Korunma Yolları Otomatik Parola Yenilemeleri Saldırıya Açıklığı Anlama Korunma Yolları Kaba Kuvvet TÜBİTAK UEKAE

9 İÇİNDEKİLER WEB UYGULAMA GÜVENLİĞİ KILAVUZU Saldırıya Açıklığı Anlama Korunma Yolları Beni Hatırla Saldırıya Açıklığı Anlama Korunma Yolları İşe Yaramaz Zaman Aşımları Saldırıya Açıklığı Anlama Korunma Yolları Saldırıya Açıklığı Anlama Korunma Yolları Hesabın Kapatılması Saldırıya Açıklığı Anlama Korunma Yolları Kendi Kendine Kayıt Saldırıya Açıklığı Anlama Korunma Yolları TOBIAT(CAPTCHA) Saldırıya Açıklığı Anlama Korunma Yolları YETKİLENDİRME Amaç Minimum hak prensibi Saldırıya Açıklığı Anlama Korunmanın Yolları Erişim Kontrol Listeleri Saldırıya Açıklığı Anlama Korunmanın Yolları Özel yapım yetkilendirme kontrolleri Saldırıya Açıklığı Anlama Korunmanın Yolları TÜBİTAK UEKAE 9

10 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER 7.5 Merkezi yetkilendirme rutinleri Saldırıya Açıklığı Anlama Korunmanın Yolları Yetkilendirme matrisi Saldırıya Açıklığı Anlama Korunmanın Yolları İstemci taraflı yetkilendirme parçaları (jetonlar) Saldırıya Açıklığı Anlama Korunmanın Yolları Korunan kaynaklara erişimi kontrol etme Saldırıya Açıklığı Anlama Korunmanın Yolları Statik kaynaklara erişimi korumak Saldırıya Açıklığı Anlama Korunmanın Yolları OTURUM YÖNETİMİ Amaç Açıklama En iyi yöntemler Yanılgılar (Yanlış Bildiklerimiz) Serbest Oturum Üretmek Saldırıya Açıklığı Anlama Korunma Yolları Korunmasız Oturum Değişkenleri Saldırıya Açıklığı Anlama Korunma Yolları Sayfa ve Form Jetonları Saldırıya Açıklığı Anlama Korunma Yolları Zayıf Oturum Kriptografik Algoritmaları TÜBİTAK UEKAE

11 İÇİNDEKİLER WEB UYGULAMA GÜVENLİĞİ KILAVUZU Saldırıya Açıklığı Anlama Korunma Yolları Uygun Anahtar Uzayı Oturum Jeton Entropisi Oturum Zaman Aşımı Saldırıya Açıklığı Anlama Korunma Yolları Oturum Jetonlarının Yeniden Oluşturulması Saldırıya Açıklığı Anlama Korunma Yolları Oturum Sahteciliği/Kaba Kuvvet Yakalama ve/veya Kilitleme Saldırıya Açıklığı Anlama Korunma Yolları Oturum Jetonlarının Aktarılması (Transmission) Saldırıya Açıklığı Anlama Korunma Yolları Çıkış İşlemi Sırasında Oturum Jetonları Saldırıya Açıklığı Anlama Korunma Yolları Oturum Korsanlığı Saldırıya Açıklığı Anlama Korunma Yolları Oturum Doğruluğu Saldırıları Saldırıya Açıklığı Anlama Korunma Yolları Oturum Denetleme Saldırıları Saldırıya Açıklığı Anlama Korunma Yolları Önceden Belirlenmiş Oturum Saldırıları TÜBİTAK UEKAE 11

12 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER Saldırıya Açıklığı Anlama Korunma Yolları Oturum Kaba Kuvvet Saldırıları Saldırıya Açıklığı Anlama Korunma Yolları Oturum jeton tekrar oynaması (replay) Saldırıya Açıklığı Anlama Korunma Yolları GİRDİ DENETİMİ Amaç Açıklama Tanımlar Bütünlük kontrollerini nerde uygulamalı Denetlemeyi nereye koymalı İş mantığı denetlemesini nereye koymalı Örnek - Senaryo Yanlış Yol Kabul Edilebilir Yöntem En İyi Yöntem Sonuç Girdi Denetimi Stratejileri Sadece iyiyi kabul etmek Bilinen kötüleri refüze etmek Düzeltmek Denetim uygulamamak Parametre manipülasyonunu engellemek Gizli alanlar ASP.NET Viewstate Saldırıya Açıklığı Anlama Korunma Yolları TÜBİTAK UEKAE

13 İÇİNDEKİLER WEB UYGULAMA GÜVENLİĞİ KILAVUZU 9.9 Selects, radio button, ve checkbox Kullanıcıya Ait Veriler URL kodlama HTML kodlama Kodlanmış dizgiler (strings) Ayraçlar ve özel karakterler HATA YÖNETİMİ ve KAYIT TUTMA Amaç Tanımlama En iyi uygulamalar Hata başa çıkma Sistemden düşmeye karşı korunmalı Kusur giderme hataları Hariç tutma işlemi Fonksiyonel geri dönüş değerleri Ayrıntılı hata mesajları Tehlikeye açık olup olmadığınızı saptama Korunma Yolları Kayıt Nereye kayıtlama? Başa çıkma Genel kusur giderme Adli Analiz kanıt Saldırı saptama Geçerliliğin kanıtlanması Kayıt türleri Karmaşa Korunma Yolları İz kaybettirme TÜBİTAK UEKAE 13

14 WEB UYGULAMA GÜVENLİĞİ KILAVUZU İÇİNDEKİLER Korunma Yolları Yanlış alarmlar Korunma Yolları Hizmetin reddi Korunma Yolları İmha Korunma Yolları Saptama izleri Tehlikeye açık olup olmadığınızı saptama Korunma Yolları TÜBİTAK UEKAE

15 GİRİŞ WEB UYGULAMA GÜVENLİĞİ KILAVUZU 1. GİRİŞ Bu dokümanda web uygulaması geliştirmesinde uyulması gereken güvenlik esasları anlatılacaktır. Doküman büyük ölçüde OWASP Guide [1] dokümanın bazı ana konu bölümlerinin dilimize çevrilmesi ile oluşturulmuştur. Diğer çevirilere sayfasından ulaşabilirsiniz [3]. Bu bölümlerin çevirilerinde rol alan; Billur Ç. Yılmazyiğit e Çiğdem Akanyıldız a Emre Çakır a Mesut Timur a Oğuz Yılmaz a teşekkürler. 1.1 Amaç ve Kapsam Bu dokümanda amaç, bir web uygulamasının güvenli bir şekilde tasarımı ve geliştirilmesi için gerekli esasları belirlemektir. Esaslar belirlenirken, belirli bir kritiklik derecesindeki uygulamalar hedef alınmamıştır. Fakat bazı esasların daha kritik sistemlerde nasıl uygulanması gerektiği üzerinde durulmuştur. Literatürde kullanılan en iyi güvenli uygulama tasarım ve geliştirme metotları araştırılmış ve esas olarak belirlenmiştir. Esaslar, güvenli web uygulaması tasarım ve geliştirme amacı ile oluşturulmuştur. Esaslar içinde çoğu zaman esasların teknik anlamda nasıl uygulanması gerektiği üzerinde bilgiler verilmiştir. Ayrıca yapılan araştırma çalışmalarının kaynakları da referans bölümünde verilmiştir. Web uygulamaları tasarım ve geliştirme esasları dokuz ana başlık altında ele alınmıştır. Her başlık altında o başlığın güvenlik hedefleri anlatılmış ve daha sonra esaslar verilmiştir. 1.2 Hedeflenen Kitle Bu doküman bir web uygulaması planlama, geliştirme ve test sürecinde görev alan, yöneten ya da bu konularda çalışmak isteyen kişiler tarafından kullanılabilir. TÜBİTAK UEKAE 15

16 WEB UYGULAMA GÜVENLİĞİ KILAVUZU GİRİŞ 1.3 Kısaltmalar UEKAE : Ulusal Elektronik ve Kriptoloji Araştırma Enstitüsü IP : Internet Protocol XST : Cross Site Tracing XHR : XML HTTP Request HTTPS : Hyper Text Transfer Protocol Secure HTTP : Hyper Text Transfer Protocol FTP : File Transfer Protocol CGI : Common Gateway Interface PHP : PHP Hypertext Processor ASP : Active Server Pages JSP : Java Server Pages UML : Unified Modeling Language B2B : Business to Business SOAP : Service Oriented Application Protocol SQL : Structured Query Language LDAP : Lightweight Directory Access Protocol XML : extensible Markup Language URL : Unified Resource Locator XSS : Cross Site Scripting 16 TÜBİTAK UEKAE

17 WEB UYGULAMALARI GİRİŞ WEB UYGULAMA GÜVENLİĞİ KILAVUZU 2. WEB UYGULAMALARI GİRİŞ Web in ilk zamanlarında Internet içeriği statik sayfalardan oluşmaktaydı. Açıktır ki, statik içerik bir uygulamanın kullanıcıyla etkileşimde bulunmasını engeller. Bu durum sınırlayıcı olduğundan, web sunucu üreticileri Common Gateway Interface (veya CGI) ı kullanarak harici programların çalışmasını sağladılar. Bu gelişme, kullanıcının sağladığı girdilerin harici programlara veya betiklere gitmesini, işlenmesini ve kullanıcıya tekrar cevap dönülmesini sağladı. CGI bugün yaygın olarak kullanılan bütün web uygulama çatıların, betik dillerin, ve web servislerin babasıdır. CGI artık günümüzde çok daha az kullanılmaktadır ama kullanıcıdan veya veritabanından gelen dinamik bilginin işlem görmesi ve bunu takiben çıktı akışının dönülmesi fikri web uygulamalarında kullanılmaya devam edecektir. 2.1 Teknolojiler CGI CGI hala birçok site tarafından kullanılmaktadır. CGI ın bir avantajı C veya C++ gibi dillerde uygulama mantığının rahatlıkla yazılabiliyor olması veya web ile ilgili olmayan önceden yazılmış bir uygulamayı web tarayıcıları ile kullanılabilir hale getirilebiliyor olmasıdır. CGI ile uygulama yazmanın birçok dezavantajı vardır; TÜBİTAK UEKAE 17

18 WEB UYGULAMA GÜVENLİĞİ KILAVUZU WEB UYGULAMALARI GİRİŞ Çoğu alt seviye dilleri HTML çıkış akışını direk olarak desteklemediklerinden özel bir kütüphane yazımını gerektirirler veya HTML çıkış yazılımcı tarafından manuel olarak oluşturulur. Yaz Derle - Kur Yürüt döngüsü sonradan gelen teknojılere gore daha yavaştır. CGI ayrı bir süreçtir ve IPC & süreç yaratma işlemleri bazı mimarilerde büyük bir performans problemi oluştururlar. CGI oturum kontrollerini desteklemediğinden, bu işlemleri desteklemesi için bir kütüphane yazılması ve içerilmesi gerekmektedir. Herkes alt düzey dillerde (C veya C++ gibi) çok rahat olmadığından, program yazılımı sonradan çıkan teknolojilere gore zordur. CGI la kullanılan çoğu 3 üncü kuşak diller, arabellek taşmaları ve kaynak sızmalarından zarar görmektedirler. Bu problemlerden kurtulmak için büyük ölçüde bir yetenek gerekmektedir. CGI ağır yük ve uzun süren gerektiren az kullanıcılı işlemlerde faydalı olabilir Filtreler Filtreler, bir web sitesine erişimi kontrol etmek, başka bir web uygulama çatısı (mesela Perl, PHP, veya ASP) yazmak veya güvenlik kontrolü sunmak gibi belirli amaçlar için kullanılmaktadırlar. Bir filtrenin C veya C++ da yazılması gerekir ve web sunucunun çalışma kapsamında (execution context) bulunduğundan süreçlerde yüksek performans sergileyebilir. Filtre arabirimlerine verilebilecek tipik örnekler arasında Apache web sunucu modülleri, SunONE nın NSAPI sı, ve Microsoft un ISAPI sı yer almaktadır. Filtreler çok nadiren web sunucuların kullanılabilirliğini etkileyen arabirimlerde kullanıldığından daha fazla üzerinde durulmayacaktır Betik Yazmak CGI nın oturum yönetimi ve yetkilendirme kontrollerinin olmaması, ticari amaçlar için faydalı web uygulamaların gelişmesini engelledi. Yavaş kar dönüşümüyle birlikte, web geliştiriciler çözüm olarak yorumlanmış betik dillerine yöneldiler. Yorumlayıcılar, betikleri web sunucunun süreci içerinde çalıştırdıkları ve betikler derlenmedikleri için, yaz-kur-yürüt döngüsü biraz daha hızlı olmaktaydı. Betik dilleri çok nadiren arabellek taşmaları ve bilgi sızmalarından zarar gördüklerinden programcılar için genel güvenlik meselelerini önlemek daha kolay olmaktadır. 18 TÜBİTAK UEKAE

19 WEB UYGULAMALARI GİRİŞ WEB UYGULAMA GÜVENLİĞİ KILAVUZU Betik kullanmanın bazı dezavantajları; Çoğu betik dilleri güçlü tipleri zorunlu kılan diller (strongly typed) değildirler ve en iyi programcılık usullerinin gelişmesine yardım etmezler. Genel olarak betik diller derlenmiş dillerden daha yavaştırlar (bazen 100 kat daha yavaş) Betikler çoğu zaman idame edilemeyen kod bütünlüğüne dönüşür ve performansı büyük ölçüde düşürürler. Betikler ile birden fazla katmanlı büyük uygulamalar yazmak (imkansız değilse bile) zordur ve bundan dolayı çoğu zaman sunum, uygulama ve veri katmanları aynı makinada bulunurlar. Bu durumda ölçeklenirlik ve güvenlik sınırlanmış olur. Çoğu betik dilleri sisteme özgül olarak uzaktan metod ve servis çağrılarını desteklemezler ve bundan dolayı uygulama sunucuları ve harici web servisleri ile iletişim daha zor olur. Dezavantajları bir yana, egroupware (PHP) gibi büyük ve faydalı kod bazları betik dilleri ile ve çoğu eski Internet bankacılık siteleri çoğu zaman ASP ile yazılmıştır. Betik çatıları ASP, Perl, Cold Fusıon, ve PHP dillerini de içerir. Ama bunların çoğu, özellikle PHP ve Cold Fusion dillerinin en son versiyonları, hibrid yorumlamalar olarak düşünülmektedirler Web Uygulama Çatıları Betik dillerin performans ve ölçeklenirlik sınırlarına yaklaşıldıkça, bir çok büyük üretici Sun firmasının J2EE web geliştirme platformuna yöneldiler. J2EE: TÜBİTAK UEKAE 19

20 WEB UYGULAMA GÜVENLİĞİ KILAVUZU WEB UYGULAMALARI GİRİŞ Kolay kolay arabellek taşmalarından ve hafıza bilgi sızmaları gibi problemler yaşamayan ve hızlı web uygulamaları için (C++ uygulamaları kadar hızlı) Java dilini kullanır. İlk olarak büyük dağıtık uygulamaları kabul edilir ölçülerde çalışmasını mümkün kıldı. İyi oturum ve yetkilendirme kontrollerine sahiptir. Birçok uzaktan çağırma (remote invocations) mekanizmaları ile beraber neredeyse şeffaf çok katmanlı uygulamaları mümkün kıldı. Çoğu, genel güvenlik ve programcılık sorunlarını program çalışmadan bile engelleyen kuvvetli tipler kullanmaktadır Sunum (view) Ön uç görüntülemeye yarayan, çoğu zaman sunum katmanı denilen kod, HTML çıktısını uygulama mantığına hiç bağlı olmadan üretmeyi hedef alması gerekmektedir. Birçok uygulama uluslararası hale geleceğinden (yani sunum katmanında hiç yöresel dizgi (string) veya kültürel bilgisi olmayacağından), bu uygulamaların kullanıcının şeçtiği dil, kültür, yazı yönü, ve birimlere göre, faydalı bilgiyi görüntülemeye yarayan verileri almak için model in (uygulama mantığının) içine çağrılarda bulunması gerekmektedir. Büyün kullanıcı girdileri uygulama mantığında kontrolcülere yönlendirilmektedirler Kontrolcü (controller) Kontrolcü (veya uygulama mantığı) kullanıcılardan girdi alır ve bu girdiyi veri çekmek, işlemek veya saklamak için uygulamanın model nesnelerini çağıran çeşitli iş akışlarına aktarır Uygulama Mantığı (model) Modeller Hesap veya Kullanıcı gibi fonksiyonellikleri kapsar ve üst seviye iş süreçlerini gerçeklemek için metot (method) sağlarlar. Örnek olarak iyi bir model, kontrolcüde aşağıdaki gibi bir kod benzerinin bulunması yerine; if oaccount->ismyacct(fromacct) & amount < oaccount->getmaxtransferlimit() & oaccount->getbalance(fromacct) > amount & oaccount->toaccountexists(toacct) & 20 TÜBİTAK UEKAE

21 WEB UYGULAMALARI GİRİŞ WEB UYGULAMA GÜVENLİĞİ KILAVUZU then if oaccount->withdraw(fromacct, Amount) = OK then oaccount->deposit(toacct, Amount) end if end if if oaccount->ismyacct(fromacct) & amount < oaccount->getmaxtransferlimit() & oaccount->getbalance(fromacct) > amount & oaccount->toaccountexists(toacct) & then if oaccount->withdraw(fromacct, Amount) = OK then oaccount->deposit(toacct, Amount) end if end if aşağıdaki kod benzerinin bulunmasını sağlar; oaccount->transferfunds(fromacct, ToAcct, Amount) oaccount->transferfunds(fromacct, ToAcct, Amount) Web uygulamaları çok değişik yollarla ve dillerle yazılabilirler. Bu kılavuz verdiği örneklerde yaygın kullanılan üç uygulama çatılarına (PHP, J2EE, ASP.NET) ağırlık verse de, mesajları bütün web uygulamaları için geçerlidir. TÜBİTAK UEKAE 21

22 WEB UYGULAMA GÜVENLİĞİ KILAVUZU GÜVENLİ KODLAMA PRENSİPLERİ 3. GÜVENLİ KODLAMA PRENSİPLERİ Tasarımla güvenli uygulamalar üretebilmek için yönlendirmeye ihtiyaç duyan uygulama mimarları ve çözüm üreticileri, bunu gerçekleştirebilmek adına ana metinde belgelenen temel kontrolleri uygulamakla birlikte bu ilkelerin altında yatan Neden? sorusuna da tekrar gönderme yaparlar. Gizlilik, bütünlük ve kullanılabilirlik gibi güvenlik ilkeleri, önemli, geniş ve belirsiz olsalar da, değişime uğramazlar. Bu ilkeler ne kadar çok kullanılırsa, uygulamalar o denli sağlam olacaktır. Örneğin, girilen bütün bilgi türleri için, merkezileştirilmiş bir geçerlilik rutini kapsamaya yönelik veri geçerliliği uygulamak hassas bir süreçtir. Ancak, kullanıcının gireceği tüm bilgiler için uygun hata yönetimi ve sağlam erişim kontrolüyle birlikte her dizide geçerlilik görmek çok daha hassas bir süreçtir. 3.1 Değer Sınıflandırması Kontrollerin seçimi, ancak korunacak verinin sınıflandırılmasından sonra mümkün olabilmektedir. Örneğin, blog ve forumlar gibi düşük değerli sistemlerde uygulanabilen kontroller muhasebe, yüksek değerli bankacılık ve elektronik ticaret sistemlerine uygun kontrollerden seviye ve nicelik açısından farklıdır. 3.2 Saldırganlar Hakkında Uygulamalarınızın yanlış kullanımını engellemek üzere kontroller tasarlarken, olası saldırıları (olasılık ve gerçek kayıpları çoktan en aza indirebilmek adına) dikkate almanız gerekmektedir: 22 TÜBİTAK UEKAE

23 GÜVENLİ KODLAMA PRENSİPLERİ WEB UYGULAMA GÜVENLİĞİ KILAVUZU Memnun olmayan çalışanlar ya da üreticiler Yan etkiler ya da virüs, solucan ve truva atları saldırılarının doğrudan sonuçları gibi sürücü saldırıları Organize suç benzeri, güdülenmiş ve suçlu saldırganlar Tahrif ediciler gibi organizasyonunuzun aleyhinde bulunan ancak motive olmamış suçlu saldırganlar Niteliksiz saldırılar Bilgisayar korsanlığı terimi için hiçbir madde olmadığına dikkat çekmek isteriz. Bu, medyanın bilgisayar korsanlığı kelimesini duygusal ve yanlış kullanımından kaynaklanmaktadır. Doğru terim suçlu dur. Polise giderek daha ciddi suçluları cezalandırmaları için onlara destek olma konusunda istekli olmayan organizasyonlardan dolayı, polis tarafından yakalanan ve dava edilen tipik suçlular niteliksiz saldırganlardır. Ancak, bilgisayar korsanlığı kelimesinin yanlış kullanımını düzeltmek ve kelimeyi doğru köküne döndürmek için artık çok geçtir. Kılavuz, belirli bir özelliği aktif halde kötüye kullanma girişiminde bulunan bir şey ya da birini ifade ederken devamlı olarak saldırgan kelimesini kullanmaktadır. 3.3 Bilgi güvenliğinin temel dayanakları Bilgi güvenliği aşağıdaki unsurlara dayanmaktadır: Gizlilik sadece kullanıcıya izin verilen bilgiye erişim sağlama Bütünlük verilerin yetkisi olmayan kullanıcılar tarafından tahrif edilmemesini ve değiştirilmemesini sağlamak Kullanılabilirlik ihtiyaç duyulması halinde yetkisi olan kullanıcıların sistem ve verileri kullanabilmesi Aşağıdaki ilkeler ise bu üç dayanakla bağlantılıdır. Aslında, kontrolün nasıl oluşturulacağına karar verme aşamasında her dayanağı da dikkate almak, sağlam bir güvenlik kontrolü oluşturulmasını destekleyecektir. TÜBİTAK UEKAE 23

24 WEB UYGULAMA GÜVENLİĞİ KILAVUZU GÜVENLİ KODLAMA PRENSİPLERİ 3.4 Güvenlik Mimarisi Güvenlik mimarisi bulunmayan uygulamalar sınırlı eleman analizi ve rüzgar tüneli testi yapılmadan inşa edilen köprüler gibidir. Kesinlikle bir köprüye benzerler ancak bir kelebeğin kanatlarını ilk çırpışıyla birlikte yerle bir olacaklardır. Güvenli mimari gibi uygulama güvenliğine duyulan ihtiyaç, bina ya da köprü inşaatındaki kadar büyük ve önemlidir. Güvenlik mimarisi temel dayanaklarla ilgilidir: uygulama, sadece doğru kullanıcılar için bilgilerin gizliliğini, verilerin bütünlüğünü korumaya ve gerektiğinde veriye erişilebilirlik sağlamaya (kullanılabilirlik) yönelik kontroller temin etmelidir. Güvenlik mimarisi, güvenlik ürünleri carnucopia sının birlikte karıştırıldığı ve çözüm adının verildiği markitecture değil, titizlikle belirlenen özellik, kontrol, daha güvenli süreçler ve aksaklık güvenlik modu bütünüdür. Yeni bir uygulama başlatırken veya zaten var olan bir uygulamayı yeniden yapılandırırken her işlevsel özellik göz önüne alınmalı ve şunlara dikkat edilmelidir: Bu özellik kapsamındaki süreç olabildiğince güvenli mi? Başka bir deyişle, hatasız bir süreç mi? Eğer ben kötü amaçlı olsaydım, bu özelliği nasıl kötüye kullanırdım? Aksaklık durumunda bu özelliğin çalışır durumda olması gerekmekte midir? Eğer gerekliyse, bu özellikten kaynaklanan riskleri aza indirgemeyi sağlayacak limit ya da seçenekler mevcut mu? En iyi sistem mimari tasarımları ve ayrıntılı tasarım belgeleri, her özellik için risklerin nasıl azaltılacağına ve kodlama sırasında ne yapıldığına dair güvenlik bilgileri içerir. Güvenlik mimarları iş gerekliliklerinin modellenmeye başlamasıyla güne başlarlar ve uygulamanızın son kopyası tamamlanmadan da işlerini bırakmazlar. Güvenlik tek seferlik bir kaza değil, yaşam boyu devam eden bir süreçtir. 3.5 Güvenlik İlkeleri Bu güvenlik ilkeleri OWASP Kılavuzunun önceki versiyonundan alınmıştır ve Howard ile Leblanc ın son derece başarılı Writing Secure Code (Güvenli Kod Yazımı) adlı çalışmalarında açıklanan güvenlik ilkeleri doğrultusunda düzenlenmiştir. 24 TÜBİTAK UEKAE

25 GÜVENLİ KODLAMA PRENSİPLERİ WEB UYGULAMA GÜVENLİĞİ KILAVUZU 3.6 Saldırı Yüzey Alanını Küçültmek Bir uygulamaya eklenen her özellik, bütün uygulamalar için belirli oranda risk teşkil eder. Güvenli gelişimin amacı saldırı yüzey alanını daraltarak genel risk oranını azaltmaktır. Örneğin, bir web uygulaması arama işlevli online hizmet uygulamaktadır. Arama işlevi SQL enjeksiyon saldırılarına karşı korumasız olabilir. Eğer yardım özelliği yalnızca yetkisi bulunan kullanıcılarla sınırlandırılmış ise, saldırı olasılığı azaltılmış demektir. Eğer yardım özelliği merkezileştirilmiş veri geçerlilik kuralları aracılığıyla açılmışsa, SQL enjeksiyonun gerçekleştirebilme kapasitesi oldukça düşürülmüş demektir. Ancak, yardım özelliği arama özelliğini ortadan kaldırma (örneğin daha iyi kullanıcı ara alanı aracılığıyla) amacıyla yeniden yazılmış ise, yardım özelliği İnternet üzerinden büyük ölçüde erişilebilir olsa bile bu işlem saldırı yüzey alanını hemen hemen ortadan kaldıracak demektir. 3.7 Güvenli Öntanımlar Kullanıcılara sıra dışı bir deneyim yaşatmanın pek çok yolu vardır. Ancak, bu deneyimin ön tanımla güvenli olması sağlanmalıdır. Ayrıca, eğer yetkileri var ise, güvenliklerini azaltmak kullanıcıların kararına bırakılmalıdır. Örneğin, şifre eskitme ve karmaşıklığın ön tanımla yapılabilmesi sağlanmalıdır. Uygulamalarını kullanma süreçlerini basitleştirme ve risk oranlarını artırma konusunda yukarıda adı geçen iki özelliği uygulama dışı bırakmak için kullanıcılara yetki verilebilir. 3.8 En Az Öncelik İlkesi En az öncelik ilkesi, hesapların iş süreçlerini gerçekleştirmek en düşük oranda öncelik kapsaması gerektiğini önermektedir. Bu işlem, kullanıcı hakları, CPU sınırlandırmaları gibi kaynak izinleri, bellek, ağ ve dosya sistem izinlerini kapsar. Örneğin, bir aracı yazılım sunucusu, sadece ağ erişimi, veritabanı tablosunu okuma erişimi ve kayıt yazma kapasitesi gerektiriyorsa, verilmesi gereken tüm izinleri tanımlıyordur. Hiçbir koşulda bu sunucuya yönetimsel öncelikler tanınmamalıdır. TÜBİTAK UEKAE 25

26 WEB UYGULAMA GÜVENLİĞİ KILAVUZU GÜVENLİ KODLAMA PRENSİPLERİ 3.9 Kademeli Savunma İlkesi Kademeli savunma ilkesi, bir kontrolün akılcı olduğu durumda, riske farklı biçimlerde yaklaşan daha fazla sayıda kontrolün daha iyi olduğunu ifade eder. Kademeli olarak kullanıldıklarında kontroller, ciddi savunmasızlık durumlarınının kötüye kullanılmasını oldukça yüksek seviyede güçleştirir ve böylece oluşmalarını da engeller. Güvenli kodlama ile bu işlem dizi odaklı geçerlilik denetimi, merkezileştirilmiş denetim kontrolleri halini alabilir ve kullanıcıları bütün sayfalarda oturum açmak zorunda bırakabilir. Örneğin, üretim yönetim ağlarına erişimi doğru bir şekilde sağlıyor, yönetsel kullanıcı yetkilendirmesini kontrol ediyor ve bütün erişimi kaydediyorsa, hatalı bir yönetimsel ara yüzün isimsiz saldırılara karşı savunmasız kalması olası değildir 3.10 Güvenli Aksama Uygulamalar pek çok sebebe bağlı olarak işlemleri gerçekleştiremeyebilirler. Bu aksaklığın nasıl ortaya çıktığı, uygulamanın güvenli olup olmadığını belirleyebilir. Örneğin; isadmin = true; try { codewhichmayfail(); isadmin = isuserinrole( Administrator ); } catch (Exception ex) { log.write(ex.tostring()); } Eğer WhichMayFail() kodunda bir aksaklık ortaya çıkarsa, kullanıcı ön tanımla bir admin olur. Bu, açık bir şekilde bir güvenlik sorunudur Dış Sistemlerin Güvenli Olmaması Çok sayıda organizasyon, sizlerden farklı güvenlik sistem ve tutumları uygulayan üçüncü taraf ortakların işlem yapma kapasitelerini kullanmaktadırlar. Ana kullanıcılar, esas tedarikçiler ya da ortaklar olsalar da, dışarıdan üçüncü bir şahsı etkilemeniz ya da kontrol etmeniz mümkün değildir. 26 TÜBİTAK UEKAE

27 GÜVENLİ KODLAMA PRENSİPLERİ WEB UYGULAMA GÜVENLİĞİ KILAVUZU Bu nedenle, dışarı kaynaklı yürütme sistemlerine güven garantisi verilemez. Bütün dış kaynaklı sistemler benzer bir tutumla dikkate alınmalıdır. Örneğin, bağlı bir program tedarikçisi İnternet Bankacılığı tarafından kullanılan bir veri sunmaktadır. Bunun yanında, ödül puanlarını ve potansiyel geri alım kalemlerine yönelik küçük bir liste vermektedir. Ancak, bu verilerin en son kullanıcılara görüntülenmesinin güvenli olmasını sağlamak adına kontrol edilmesi, ödül puanlarının pozitif bir sayı olduğu ve büyük olmalarının imkânsız olduğundan emin olunması gerekmektedir Görevlerin Ayrımı Görevlerin ayrımı, dolandırıcılığa karşı kullanılabilecek temel bir kontrol aracıdır. Örneğin, bir bilgisayar isteyen biri aynı zamanda kayıt olamaz ya da bilgisayarı doğrudan alamaz. Böylece, kullanıcının çok sayıda bilgisayar istemesi ve eline ulaşmadığını iddia etmesi engellenmiş olacaktır. Belirli görevlerin, normal kullanıcılara göre farklı güven seviyeleri vardır. Özellikle, yöneticiler normal kullanıcılardan farklıdır. Genelde, yöneticiler uygulama kullanıcıları olmamalıdırlar. Örneğin, bir yönetici sistemi açabilmeli ya da kapatabilmeli, şifre politikasını belirleyebilmeli ancak süper öncelikli bir kullanıcı gibi depo bölümünde oturum açıp diğer kullanıcılar adına eşya satın alamamalıdır Belirsizlik Yolu ile Güvenliğe Güvenmeyin Belirsizlik yolu ile güvenlik zayıf bir güvenlik kontrolüdür. Tek kontrol aracı olduğu pek çok durumda da hemen hemen her zaman başarısız olur. Sır tutmanın kötü bir fikir olduğu anlamına gelmemekle birlikte, kilit sistemlerin güvenliğinin ayrıntıların gizli tutulması esasına dayandırılmaması ifade edilmektedir. Örneğin, bir uygulamanın güvenliği, gizlenen bir kaynak kod bilgisine dayandırılmamalıdır. Güvenlik pek çok etmene dayandırılmalıdır. Akla yatkın şifre politikaları, kademeli savunma, iş bağlamında işlem sınırlamaları, sağlam ağ mimarisi, dolandırıcılık ve denetim kontrolleri de dikkate alınmalıdır. Linux, oldukça pratik bir örnektir. Linux kaynak kodu geniş ölçüde erişilebilirdir. Bununla birlikte doğru bir şekilde güvence altına alındığında, zorlu, güvenli ve sağlam bir işletim sistemidir. TÜBİTAK UEKAE 27

28 WEB UYGULAMA GÜVENLİĞİ KILAVUZU GÜVENLİ KODLAMA PRENSİPLERİ 3.14 Basitlik Saldırı yüzey alanı ve basitlik yakından ilişkilidir. Belirli yazılım mühendisliği akımları, diğer bir şekilde doğrudan ve basit olabilecek kodlara yönelik oldukça karmaşık yaklaşımlar izlemektedirler. Daha basit yaklaşımların daha hızlı ve basit olacağı durumlarda, sistem geliştiricilerin de çifte negatif ve karmaşık mimari kullanımında kaçınmaları gerekmektedir. Örneğin, ayrı bir aracı yazılım sunucusunda çok sayıda tek varlık kullanımı çok moda olsa da, yarış durumlarına karşı korunma amacıyla uygun mutex mekanizmasıyla birlikte küresel değişkenler kullanmak hem daha güvenli hem de daha hızlıdır Güvenlik Sorunlarını Uygun Şekilde Ele Almak Bir güvenlik sorunu belirlendiğinde, sorun için bir test süreci oluşturmak ve soruna yol açan esas meselenin anlaşılması önemlidir. Tasarım biçimleri kullanıldığında, güvenlik sorununun bütün kod tabanlarına yayılmış olması olasıdır. Bu nedenle gerilemelere yol açmadan doğru çözüm yolunu geliştirmek esastır. Örneğin, bir kullanıcı, oturum bilgilerini uyumlaştırarak diğer bir kullanıcının bakiyesini görebilmektedir. Direk çözüm yolu ortadadır, ancak oturum bilgisi kullanım kodu bütün uygulamalar tarafından paylaşılmaktadır, bu nedenle yalnızca bir uygulama üzerinde yapılacak değişiklik bütün diğer uygulamaları etkileyecektir. Çözüm yolu, etkilenen bütün uygulamalar üzerinde denenmelidir. 28 TÜBİTAK UEKAE

29 TEHDİT RİSK MODELLEME WEB UYGULAMA GÜVENLİĞİ KILAVUZU 4. TEHDİT RİSK MODELLEME Uygulamanızı tasarlarken, en çok önem vermeniz gereken tehdit, riski tayin edilmiş kontrolleri kullanmaktır. Aksi halde kaynaklarınızı, zamanınızı ve paranızı gereksiz kontroller için boş yere harcarsınız ve bu gerçek riskler için yeterli değildir. Riskleri belirlemek için kullandığınız metot, yapılandırılmış tehdit riskleri modellemesi yapmanız kadar önemli değildir. Microsoft, güvenlik geliştirme programının en önemli ilerlemesinin, tehdit modellemesine evrensel bir uyum sağlaması olduğunu belirtmiştir. OWASP, Microsoft un tehdit modelleme yöntemini, uygulama güvenliğinde nadir olarak karşılaşılan sorunları iyi çözebilmesi ve tasarımcılar, geliştiriciler ve kodu kontrol eden kişiler tarafından kolay uyum sağlanıp öğrenilmesinden dolayı seçmiştir. Tehdit modelleme, güvenli web uygulamalarının gelişimi için temeldir ve organizasyonların doğru kontrolleri belirlemesini ve bütçe içinde etkili karşı tedbir oluşturmasını sağlar. Örneğin; ihmal edilebilecek kadar hilesi olan bir sisteme 100,000 dolarlık bir kontrol eklemek. 4.1 Tehdit Riskleri Modellemesinin Yapılması Tehdit modelleme yönteminde beş aşama bulunmaktadır. Microsoft tehdit ağaçlarını takip etmeyi ve göstermeyi destekleyen.net ortamında yazılmış bir tehdit modelleme aracı sağlar. Bu aracın kullanımı büyük ve uzun ömürlü projeler için yardımcı olabilir. TÜBİTAK UEKAE 29

30 WEB UYGULAMA GÜVENLİĞİ KILAVUZU TEHDİT RİSK MODELLEME 4.2 Tehdit Model Akışı Şekil 4-1 Tehdit model akış diyagramı 4.3 Güvenlik Hedeflerinin Belirlenmesi Şirketler (veya topluluk başkanlıkları) güvenlik hedeflerinin belirlenmesinde geliştirici takım ile hem fikir olmalıdır. Uygulamaların güvenlik hedefleri aşağıdakilere ihtiyaç duyar: 30 TÜBİTAK UEKAE

31 TEHDİT RİSK MODELLEME WEB UYGULAMA GÜVENLİĞİ KILAVUZU Kimlik: Bu uygulama kullanıcının kimliğini suistimallere karşı koruyor mu? Kimliğin doğruluğuna emin olmak için yeterli kontroller var mı? (Birçok banka uygulaması için gereklidir.) İtibar: Suistimal edilmiş veya saldırıya uğramış uygulamaların neden olduğu itibar kaybı Mali: Risk seviyesindeki şirketler potansiyel mali kayıpları iyileştirmek için yatırım yapmalıdırlar. Forum yazılımları ortak internet bankacılığından daha az mali risk taşır. Gizlilik ve düzenleme: Kullanıcının bilgilerinin ne kadar kapsamlı korunduğudur. Forum yazılımı yapısı gereği herkes tarafından görülebilir, fakat bir vergi programı birçok ülkede vergi düzenlemeleri ve gizlilik kanunlarıyla sınırlandırılmıştır. Kullanılırlık garantileri: Bu yazılım SLA veya benzer bir anlaşma tarafından tanınması gerekli midir? Ulusal olarak korunan bir altyapısı var mı? Hangi aşamada uygulamayı kullanmak gereklidir? Çok kullanılan uygulamalar ve teknikler aşırı derecede pahalıdır. Bu yüzden, doğru kontrollerin kurulması büyük ölçüde zaman, kaynak ve para kaybını önler. Bu ayrıntılı bir liste sayılamaz fakat kurulmuş teknik kontrolleri yürüten şirketin risk kararlarına dair bir fikir verir. Risk kılavuzunun diğer kaynakları bunlardır: Yasalar(gizlilik yasası veya mali yasalar gibi ) Düzenlemeler(bankacılık veya e-ticaret düzenlemeleri gibi ) Standartlar (ISO 17799, ve COBIT gibi) Yasal Anlaşmalar ( ticari anlaşmalar gibi) Bilgi Güvenliği Politikası 4.4 Uygulamanın Gözden Geçirilmesi Güvenlik hedefleri tanımlandığında, aşağıdakileri belirlemek için uygulama analiz edilmeli: TÜBİTAK UEKAE 31

32 WEB UYGULAMA GÜVENLİĞİ KILAVUZU TEHDİT RİSK MODELLEME Uygulamanın Kısımları Veri Akışı Güvenlik Sınırları Bunu yapmanın en iyi yolu uygulamanın yapısı ve tasarım dokümanlarını incelemektir. Uygulamanın kısımlarının UML şemalarına bakılmalıdır. Uygulamanın en üst kısmının şemaları genellikle veri akışının çeşitli yerlere neden ve nasıl olduğunun anlaşılması için gereklidir. Güvenlik sınırı ile çakışan veri (İnternette kaynak kod veya şirket mantığında veritabanı sunucusu gibi) dikkatlice analiz edilmeliyken aynı güvenlik seviyesinde akan verinin tekrar kontrol edilmesine gerek yoktur. 4.5 Uygulamayı Ayrıştırma Uygulamanın yapısı anlaşıldığında, uygulama ayrıştırılmalıdır. Bunun anlamı güvenlik etkisine sahip bütün özelliklerin ve kısımların ayrıştırılmasıdır. Örneğin; doğruluğu kanıtlanmış bir kısım araştırılırken, verinin bu kısma nasıl girdiği, bu kısmın veriyi nasıl onayladığını, verinin akışı ve eğer veri kaydediliyorsa bu kısmın aldığı kararların neler olduğu anlaşılmalıdır. 4.6 Bilinen Tehditlerin Dokümanı Bilinmeyen tehditleri listelemek imkânsızdır ve talihsizce yeni savunmasızlıklara karşı koymak için birçok müşteri sistemi kötü niyetli yazılımlar (malware) üretmiştir. Bunu yerine, bilinen ve araçlarla ya da Bugtraq tan kolayca belirlenebilen riskler üzerinde yoğunlaşılmalıdır. Bir tehdit yazılırken Microsoft iki farklı yaklaşım önerir. Bunlardan biri tehdit grafiği, diğeri ise yapı listesidir. Tipik olarak, tehdit grafiği okuyuculara kısa sürede birçok bilgi verir, fakat yapılandırılması uzun sürer. Yapı listesi yazmak için daha kolaydır fakat tehdidin etkisinin açığa kavuşmasında daha uzun süre alır. 32 TÜBİTAK UEKAE

33 TEHDİT RİSK MODELLEME WEB UYGULAMA GÜVENLİĞİ KILAVUZU Şekil 4-2 Olası tehditler 1. Saldırgan diğer kullanıcıların mesajlarını okuyabilir (Paylaşılan bir bilgisayarda kullanıcı sistemden çıkmamış olabilir.) 2. Veri doğrulanması SQL girişine izin verebilir. 3. Veri doğrulanmasını gerçekleştirme 4. Yekti sistemi başarısız olabilir, yetkisiz ulaşıma izin verme 5. Yetki kontrolünü gerçekleştirme 6. Tarayıcı önbellek mesajın içeriğine sahip olabilir. 7. Önbelleğe alınmayan http başlıklarını gerçekleştirme 8. Eğer risk yüksekse SSL kullanımı Tehditler saldırganlar tarafından harekete geçirilir; onlar genellikle sizin uygulamalarınızdan veya önlenmiş kontrollerinizden bir şeyler isterler. Hangi tehditlerin uygulanabilir olduğunu anlamak, uygulamaya kimin saldırdığını anlamak için güvenlik hedeflerini kullanmak: TÜBİTAK UEKAE 33

34 WEB UYGULAMA GÜVENLİĞİ KILAVUZU TEHDİT RİSK MODELLEME Rastlantısal buluş: yetkili kullanıcılar uygulama mantığında tarayıcı kullanarak hataya düşerler. Otomatikleştirilmiş kötü niyetli yazılım (malware) ( bilinen savunmasızlıkları fakat bu kez biraz daha dikkatli ve akıllıca araştırmak) Meraklı saldırgan ( sizin uygulamanızda bir şeylerin yanlış gittiğini fark eden güvenlik araştırmacıları veya kullanıcıları gibi) Betik Hırsızlığı: bilgisayar suçluları saygı için veya politik sebepler yüzünden uygulamalara saldırır ve ya uygulamaları bozar- kullanılan teknikler burada ve OWASP test kılavuzunda uygulamayı uzlaştırmak için açıklandı Harekete geçmiş saldırganlar(huzursuz personel ve ücretli saldırganlar gibi) Organize suç (genellikle e- ticaret veya bankacılık gibi yüksek riskli uygulamalar) Karşı koyduğunuz saldırganların seviyesini bilmek büyük önem taşır. Örneğin, işlemlerinizi anlayan bilgili bir saldırgan bir betik hırsızından çok daha fazla tehlikelidir. 4.7 STRIDE Yanıltıcı kimlik Yanıltıcı kimlik birçok kullanıcının sahip olduğu, uygulamanın anahtar risklerinden biridir. Fakat yanıltıcı kimlik uygulamada bir tane yürütme içeriği ve veritabanı seviyesi kullanır. Kullanıcılar kesinlikler başka bir kullanıcı gibi davranmamalı veya o kullanıcının yerine geçmemelidir Veriyle oynamak Kullanıcılar onlara ulaşan herhangi bir veriyi değiştirebilirler ve böylece alıcı doğrulamasını, GET ve POST verisini, HTTP başlıklarını ve bu gibi şeyleri değiştirebilirler. Örneğin, Uygulama, kullanıcıya uygulamanın kendisi tarafında bulunabilen faiz oranları veya dönemleri gibi verileri göndermemelidir. Uygulama, kullanıcıdan gelen herhangi bir verinin uygulanabilirliğini ve mantıklı olup olmadığını dikkatlice kontrol etmelidir. 34 TÜBİTAK UEKAE

35 TEHDİT RİSK MODELLEME WEB UYGULAMA GÜVENLİĞİ KILAVUZU Reddetme Yetersiz izlenilebilirlik ve kullanıcı aktivitelerinin yetersiz denetlenmesi söz konusu ise kullanıcı işleme itiraz edebilir. Örneğin, eğer kullanıcı Parayı bu dış hesaba aktaramadım derse ve başından sonuna kadar onların aktivitelerini izleyemediyseniz, bu kesinlikle işlemin başarısız olduğu anlamına gelir. Uygulamalar yeterli reddetme kontrolüne sahip olmalıdır, web erişim günlükleri, her kattaki izlerin kontrolü ve başından sonuna kadar kullanıcı içeriği gibi. Tercihen uygulama kullanıcı tarafından çalıştırılmalıdır fakat bu birçok çatıda (framework) mümkün olmamaktadır Bilgi Açıklama Kullanıcılar özel detayları siteme girmekten sakınırlar. Eğer bir saldırganın, kullanıcının detaylarını açıklaması mümkün olursa, isimsiz veya yetkili bir kullanıcı olsa da, itibar kaybının olacağı bir süreç başlayacaktır. Uygulamalar, kullanıcılar tek bir üyelikle tüm bir programı çalıştırırken, kullanıcı ID si ile oynanmasını engellemek için güçlü kontroller içermelidir. Kullanıcının tarayıcısı bilgi sızdırabilir. Her tarayıcı, HTTP başlıkları tarafından istenen ön belleğe alınmama yönergesini uygulamaz. Her uygulama, bilginin sızdırılmaması ve bir saldırgan tarafından daha çok bilgi öğrenebilmek için kullanılamaması için tarayıcı tarafından kaydedilen bilginin miktarını minimuma indirmelidir Servis reddi Uygulamalar servisin reddettiği saldırılar tarafından kötü kullanılabileceklerinden haberdar olmalıdırlar. Onaylanmış uygulamalar için pahalı kaynaklar geniş dosyalar, karışık hesaplamalar, ağır görev araştırmaları veya isimsiz kullanıcılar için değil yetkili kullanıcılar için muhafaza edilmesi gereken sorgular gibi. Bu lükse sahip olmayan uygulamalarda, en az işi yapmak için uygulamanın bütün kesimleri yürütülmeli, hızlı veritabanı sorguları kullanılmalı ya da hiç kullanılmamalı, geniş dosyalar açığa çıkarılmamalı veya servisin reddettiği basit bir saldırıyı engellemek için her kullanıcıya özel bağlantılar (links) sağlanmalı Ayrıcalık Seviyesi Eğer bir uygulama kullanıcı ve yönetici işlevleri sağlıyorsa, kullanıcının herhangi yüksek bir seviyenin işlevlerine erişemeyeceğinden emin olmak önemlidir. TÜBİTAK UEKAE 35

36 WEB UYGULAMA GÜVENLİĞİ KILAVUZU TEHDİT RİSK MODELLEME Özellikle, sadece kullanıcı bağlantıları (link) sağlamamak yeterli değildir ayrıcalıklı işlevselliklere sadece doğru kişilerin ulaşabildiğinden emin olmak için bütün eylemler bir otorite matrisinden geçmelidir. 36 TÜBİTAK UEKAE

37 WEB SERVİSLERİ WEB UYGULAMA GÜVENLİĞİ KILAVUZU 5. WEB SERVİSLERİ Kılavuzun bu bölümünde web servisi geliştiricilerinin karşılaştığı genel konular ve bu genel konuları işaret eden metotlar incelenmektedir. Web servisleri online basında çok fazla yazıldığından gerçekten ne oldukları hakkında büyük karışıklıklar ve yanlış anlaşılmalar meydana gelmiştir. Bazıları web servislerini, Web in kendisinden sonra ortaya çıkan en büyük teknolojik gelişme olarak görürken; başka bir grup, biraz daha şüpheci yaklaşarak biraz evrimleşmiş web uygulamaları olarak görmektedir. Her iki durumda da, web uygulaması güvenliğini ilgilendiren konular web servisleri için de geçerlidir. En basit seviyede web servisleri, sunum şekli açısından farklı olan, özelleşmiş web uygulamaları olarak görülebilir. Web uygulamaları tipik olarak HTML-tabanlı iken, web servisleri XML-tabanlıdır. B2C hareketlerinin interaktif kullanıcıları normalde web uygulamalarına erişirken, web servisleri, SOA modeli kullanarak B2B zincirleri oluştururlar ve bu web uygulamaları için yapı taşları olarak kullanılırlar. Web servisleri genel olarak, programlardan çağrılabilir, kamuya açık fonksiyonel bir arabirime sahipken; web uygulamaları daha zengin özelliklere sahip olma ve çoğu zaman içeriğe bağlı çalışma eğilimindedirler. 5.1 Web Servislerinin Güvenliği Web servisleri, diğer dağıtık uygulamalar gibi farklı seviyelerde korunur: SOAP mesajları, kablolardan, gizli olarak ve üzerinde değişiklik yapılamadan dağıtılmalıdır. Sunucu kimin konuştuğu ve konuşan istemcilerinin hakları konularında emin olmalıdır. İstemciler doğru sunucu ile konuştuklarından ve bir balık ağına yakalanmadıklarından (phishing) emin olmalıdırlar. Sistem mesajlarının kayıtları olaylar zincirinin güvenilebilir bir şekilde tekrar edilebilmesi ve kimliği doğrulanmış ziyaretçileri takip edebilecek kadar yeterli bilgiye sahip olmalıdırlar. Aynı şekilde, ileriki bölümlerde incelenen ve dağıtık uygulamaların güvenliğine yönelik yüksek seviye yaklaşımları, uygulama ayrıntılarındaki ufak değişiklerle web servisleri için de geçerlidir. TÜBİTAK UEKAE 37

38 WEB UYGULAMA GÜVENLİĞİ KILAVUZU WEB SERVİSLERİ Web servisleri geliştiriciler için güzel haber ise bu yaklaşımlar altyapı seviyesinde görevler gerektirir, dolayısıyla, teorik olarak, bu konularla sistem yöneticilerinin ilgilenmesi gerekir. Fakat bu bölümün ileriki kısımlarında bahsedilen bazı sebeplerden dolayı, web servisi geliştiricileri en azından bu risklerden haberdar olmalı ve çoğu zaman koruma işlemine bizzat katılmalıdırlar. 5.2 İletişim Güvenliği Ortak olarak benimsenen ve daha yaygın bir şekilde uygulanan bir yargı vardır: her türlü iletişimimizi korumak için SSL kullanıyoruz ve biz güvendeyiz. Aynı zamanda, birçok makale kanal güvenliğine karşı parçacık (jeton) güvenliği konusu üzerinde yayınlanmaktadır ki bu görüşleri burada tekrarlamak anlamsızdır. Bu yüzden aşağıdaki listede kanal güvenliğini yalnız bir şekilde kullanırken ortaya çıkabilecek gizli tehlikelerin özeti bulunmaktadır: Sadece noktadan noktaya güvenlik sağlar. Birden fazla noktadan oluşan herhangi bir iletişim, bu yol üzerindeki her bir iletişimde bulunan nokta arasında ayrı birer kanal (ve güvenlik) kurulmasını gerektirir. Ayrıca güvenin geçişliliği gibi hemen göze çarpmayan konular da vardır, mesela {A,B} ve {B,C} nokta ikilileri arasındaki güven, otomatik olarak {A,C} arasındaki güveni gerektirmez. Bellek meselesi Mesajlar sunucu tarafında alındıktan sonra (kastedilen alıcı olmasa da), en azından kısa süreliğine de olsa düz yazı biçiminde bulunur. Taşınan bilginin aradaki noktalarda kayıt edilmesi veya kayıt dosyalarındaki hedef sunucu (herkes tarafından görüntülenebilir) ve yerel önbellek problemi daha da kötü hale getirir. Birlikte çalışılabilirliğin eksikliği SSL taşıma korunmasında standart bir mekanizma sağlasa da, uygulamalar kimlik bilgilerinin taşınmasında, güvenli kanaldan taşınan verinin bütünlük, gizlilik ve tazelik gibi hususlarının sağlanmasında yüksek derecede özel mekanizmalar kullanır. Farklı bir sunucu kullanmak, işlev itibariyle değişmediği halde aynı bilgileri farklı formatlarda kabul ettiği için istemcilerin değişmesine ve B2B servis zincirlerinin oluşamamasına sebep olur. Standart-tabanlı parçacık (jeton) korunumu, birçok durumda, mesaj-bazlı Web Servisi SOAP iletişim modeline karşı ileri bir alternatiftir. 38 TÜBİTAK UEKAE

39 WEB SERVİSLERİ WEB UYGULAMA GÜVENLİĞİ KILAVUZU Bu demektir ki, bugünkü Web Servislerinin çoğu halen kanal güvenlik mekanizmalarının bir versiyonu ile korunmaktadır ki bu tek başına basit bir iç uygulama için yeterlidir. Fakat bu yaklaşımın sınırları iyice anlaşılmalıdır ve tasarım sırasında gerekli düzenlemeler yapılmalıdır, kanal güvenliğinin mi yoksa parçacık (jeton) güvenliğinin mi, yoksa bu ikisinin bir karışımının mı bu özel durum için gerekliliği düşünülmelidir. 5.3 Kimlik Bilgilerinin Taşınması Kimlik bilgilerinin karşılıklı değiştirilmesi ve Web Servislerinde kimlik doğrulamanın yapılabilmesi için, geliştiriciler aşağıdaki konuları hedef almalıdır. Öncelikle, SOAP mesajları XML-tabanlı olduğundan, değiştirilen bütün bilgiler yazı biçiminde olmalıdır. Bu, kullanıcı adı/şifre gibi kimlik bilgilerinde sorun yaratmazken, yürütülebilir dosyalar(mesela X.509 sertifikaları veya Kerberos parçacıkları-jetons-) gönderilmeden ve alınmadan önce Base64 kodlama sistemi ile kodlanmalı ve çözülmelidir. İkinci olarak da, kimlik bilgilerinin taşınması bu bilgilerin kaybedilmesi riskini hep taşır- iletim sırasında dinlenebilir veya sunucu kayıtları incelenebilir. Bu yüzden parola veya gizli anahtar gibi bilgilerin şifrelenmiş bir şekilde gönderilmesi veya hiçbir zaman düz yazı şeklinde gönderilmemesi gerekir. Hassas kimlik bilgilerinin yollanmasındaki genel yöntem, kriptografik hash ve/veya imzalama yöntemidir. 5.4 Mesaj Tazeliğini Sağlamak Yeniden oynatma saldırısında kullanıldığında geçerli bir mesaj bile tehlike arz edebilirmesela, sunucuya istenilen işlemin tekrar yaptırılması için birkaç kez gönderilmesi gibi. Mesaj değiştirilmeye karşı yeteri kadar sağlam olsa bile, saldırı için kullanılan mesajın kendisi olduğu için (bkz. XML Enjeksiyonu bölümü.), bu saldırı mesajın tamamının ele geçirilmesi ile uygulanabilir. Yeniden yollanan mesajlardan korunmak için kullanılan genel yöntemler, ya mesajda benzersiz tanımlayıcı kullanmak ve işlenenlerin kayıtlarını tutmak veya nispeten daha kısa geçerlilik süresi kullanmaktır. Web Servisleri dünyasında ise, mesajın hazırlandığı zamanın bilgisi genellikle mesaja eklenerek iletilir ve bunun yanında fazladan bilgi de eklenebilir, örneğin mesajın sona erme zamanı veya belirli durumlar gibi. TÜBİTAK UEKAE 39

Güvenli Kodlama İlkeleri

Güvenli Kodlama İlkeleri Güvenli Kodlama İlkeleri Genel Bakış Tasarımla güvenli uygulamalar üretebilmek için yönlendirmeye ihtiyaç duyan mimarlar ve çözüm üreticiler, bunu gerçekleştirebilmek adına ana metinde belgelenen temel

Detaylı

Web Uygulama Güvenliği Kontrol Listesi 2010

Web Uygulama Güvenliği Kontrol Listesi 2010 Web Uygulama Güvenliği Kontrol Listesi 2010 1 www.webguvenligi.org Web uygulama güvenliği kontrol listesi 2010, OWASP-Türkiye ve Web Güvenliği Topluluğu tarafından güvenli web uygulamalarında aktif olması

Detaylı

Bilgi Güvenliği Eğitim/Öğretimi

Bilgi Güvenliği Eğitim/Öğretimi Bilgi Güvenliği Eğitim/Öğretimi İbrahim SOĞUKPINAR Gebze Yüksek Teknoloji Enstitüsü İçerik Bilgi Güvenliği Eğitim/Öğretimi Dünyadaki Örnekler Türkiye deki Örnekler GYTE de Bilgi Güvenliği Dersi Sonuç ve

Detaylı

Microsoft Tehdit Modelleme Yöntemi Kullanılarak Tehdit Risklerini Modelleme

Microsoft Tehdit Modelleme Yöntemi Kullanılarak Tehdit Risklerini Modelleme Tehdit Risklerini Modelleme Uygulamanızı tasarlarken, en çok önem vermeniz gereken tehdit riski tayin edilmiş kontrolleri kullanmaktır. Aksi halde kaynaklarınızı, zamanınızı ve paranızı gereksiz kontroller

Detaylı

Mobil Cihazlardan Web Servis Sunumu

Mobil Cihazlardan Web Servis Sunumu Mobil Cihazlardan Web Servis Sunumu Özlem Özgöbek Ege Üniversitesi Bilgisayar Mühendisliği Bölümü 2010 İnternet erişiminin yaygınlaşması ve artık mobil cihazlar üzerinden bile yüksek hızlı veri iletişimine

Detaylı

ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR

ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR ĐSTEMCĐ SUNUCU SĐSTEMLER DERSĐ FĐNAL ÇALIŞMASI SORULAR YANITLAR 4.ÜNĐTE Đyi bir DNS in içermesi gereken özellikler nelerdir? ( 5 ) Đsimlendirme imlası açık ve süphesiz olmalıdır; Bir kullanıcı bir isme

Detaylı

BGYS KAPSAMI BELİRLEME KILAVUZU

BGYS KAPSAMI BELİRLEME KILAVUZU ULUSAL ELEKTRONİK VE KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ Doküman Kodu: BGYS-0002 BGYS KAPSAMI BELİRLEME KILAVUZU SÜRÜM 1.00 21 03 2008 Hazırlayan: Ünal Perendi P.K. 74, Gebze, 41470 Kocaeli, TÜRKİYE Tel: (0262)

Detaylı

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı. devrim@gunduz.org Devrim GÜNDÜZ TR.NET Sistem Destek Uzmanı devrim@gunduz.org http://seminer.linux.org.tr http://belgeler.linux.org.tr http://lkd.belgeler.org http://www.linux.org.tr/belgeler.php http://www.gunduz.org/belgeler.php

Detaylı

TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ

TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ GÜVENLİ KURUMSAL MESAJLAŞMA UYGULAMASI Ulusal Elektronik İmza Sempozyumu, 7-8 Aralık 2006 İsmail GÜNEŞ E-posta:ismail@uekae.tubitak.gov.tr

Detaylı

Güvenlik Java ve Web Uygulama Güvenliği

Güvenlik Java ve Web Uygulama Güvenliği Güvenlik Java ve Web Uygulama Güvenliği Melih Sakarya www.melihsakarya.com melih.sakarya@gmail.com www.mergecons.com Olası Açıklar Donanımsal açıklar Sistemsel Açıklar Yazılımsal Açıklar Sosyal Mühendislik

Detaylı

KAMU SİBER GÜVENLİK GÜNÜNE HOŞGELDİNİZ

KAMU SİBER GÜVENLİK GÜNÜNE HOŞGELDİNİZ KAMU SİBER GÜVENLİK GÜNÜNE HOŞGELDİNİZ SİBER GÜVENLİK FARKINDALIĞI 01.11.2013 Koray ATSAN korayatsan@kamusgd.org.tr Derneğimiz hakkında Kamu Siber Güvenlik Derneği 2013 yılında kuruldu. Temel Amaç : Ülkemizde

Detaylı

BİLİŞİM SİSTEMLERİ GÜVENLİĞİNDE YENİ EĞİLİMLER

BİLİŞİM SİSTEMLERİ GÜVENLİĞİNDE YENİ EĞİLİMLER BİLİŞİM SİSTEMLERİ GÜVENLİĞİNDE YENİ EĞİLİMLER Dr. Hayrettin Bahşi bahsi@uekae.tubitak.gov.tr 11 Mart 2010 Gündem Bulut Hesaplama Sistemleri ve Bilgi Güvenliği Güvenli Yazılım Geliştirme Hayat Döngüsü

Detaylı

ANET Bilgi Güvenliği Yönetimi ve ISO 27001. Ertuğrul AKBAS [ANET YAZILIM] 09.04.2011

ANET Bilgi Güvenliği Yönetimi ve ISO 27001. Ertuğrul AKBAS [ANET YAZILIM] 09.04.2011 ANET Bilgi Güvenliği Yönetimi ve ISO 27001 2011 Ertuğrul AKBAS [ANET YAZILIM] 09.04.2011 ISO 27001 AŞAMA 1 BGYS Organizasyonu BGYS kapsamının belirlenmesi Bilgi güvenliği politikasının oluşturulması BGYS

Detaylı

Bilgi Güvenliği Farkındalık Eğitimi

Bilgi Güvenliği Farkındalık Eğitimi NECMETTİN ERBAKAN Ü N İ V E R S İ T E S İ Meram Tıp Fakültesi Hastanesi Bilgi Güvenliği Farkındalık Eğitimi Ali ALAN Necmettin Erbakan Üniversitesi Meram Tıp Fakültesi Hastanesi Bilgi İşlem Merkezi 444

Detaylı

PHP 1. Hafta 1. Sunum

PHP 1. Hafta 1. Sunum PHP 1. Hafta 1. Sunum PHP101: PHP nedir? Bu dersten sonra bilecekleriniz PHP nedir? PHP ye neden ihtiyaç vardır? PHP nin gelişimi HTML, HTTP ve JS nedir? PHP yle alakası nedir? PHP nin uygulama alanları

Detaylı

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları.

Script. Statik Sayfa. Dinamik Sayfa. Dinamik Web Sitelerinin Avantajları. İçerik Yönetim Sistemi. PHP Nedir? Avantajları. Script Statik Sayfa Dinamik Sayfa Dinamik Web Sitelerinin Avantajları İçerik Yönetim Sistemi PHP Nedir? Avantajları Dezavantajları Script HTML kodları arasına yerleştirilen küçük kodlardır. Web sayfalarında

Detaylı

Hızlı Başlangıç Kılavuzu

Hızlı Başlangıç Kılavuzu Hızlı Başlangıç Kılavuzu 1. Adım Windows Server 2012'yi Yükleme Bilgisayarınız Windows Server 2012 yüklenmiş olarak teslim edildiyse, 1. Adım'ı atlayabilirsiniz. Yükleme Yönergeleri Yükleme yönergeleri,

Detaylı

WEB TASARIMIN TEMELLERİ

WEB TASARIMIN TEMELLERİ WEB TASARIMIN TEMELLERİ ~ Sunu 1 ~ Öğr. Gör. Mehmet Fatih TAN http://blog.kmu.edu.tr/mftan mftan@kmu.edu.tr Bilgi paylaşıldıkça kıymetlenir.. Kaynak göstermek şartıyla sunu içeriğini çalışmalarınızda kullanabilirsiniz.

Detaylı

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015

BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 BİH 605 Bilgi Teknolojisi Bahar Dönemi 2015 Ders- 13 World Wide Web (WWW) Yrd. Doç. Dr. Burcu Can Buğlalılar Bilgisayar Mühendisliği Bölümü Bilgisayar Katmanları İçerik World Wide Web (WWW) Anlık Mesajlaşma

Detaylı

İnternet te Bireysel Güvenliği Nasıl Sağlarız? Rauf Dilsiz Bilgi Güvenliği Uzmanı

İnternet te Bireysel Güvenliği Nasıl Sağlarız? Rauf Dilsiz Bilgi Güvenliği Uzmanı İnternet te Bireysel Güvenliği Nasıl Sağlarız? Rauf Dilsiz Bilgi Güvenliği Uzmanı İçerik Kişisel Bilgilerin Korunması İnternet üzerinden saldırganların kullandığı yöntemler Virüsler Trojan (Truva Atı)

Detaylı

Yeni Nesil Ağ Güvenliği

Yeni Nesil Ağ Güvenliği Yeni Nesil Ağ Güvenliği Ders 6 Mehmet Demirci 1 Bugün Taşıma katmanı güvenliği (TLS, SSL) İnternet katmanı güvenliği (IPSec) Kablosuz bağlantı güvenliği Güvenlik duvarları 2 SSL/TLS SSL ilk olarak Netscape

Detaylı

Siber Güvenlik Risklerinin Tanımlanması / Siber Güvenlik Yönetişimi

Siber Güvenlik Risklerinin Tanımlanması / Siber Güvenlik Yönetişimi KURUMLAR İÇİN SİBER GÜVENLİK ÖNLEMLERİNİ ÖLÇME TESTİ DOKÜMANI Kurumlar İçin Siber Güvenlik Önlemlerini Ölçme Testi Dokümanı, kamu kurum ve kuruluşları ile özel sektör temsilcilerinin siber güvenlik adına

Detaylı

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011

PHP I PHP I. E. Fatih Yetkin. 26 Eylül 2011 PHP I E. Fatih Yetkin 26 Eylül 2011 Outline Temel Tanımlar HTML e Giriş PHP ye Giriş MySQL ve PHP Temel Tanımlar Web Sunucu Nedir? Teknik detaylar bir kenara bırakılacak olursa, hazırlanan web sayfasını

Detaylı

Tanımı 46 2-4-6 Problemi 46 Şüpheci Yaklaşım 47 Tamsayı Taşması (Integer Overflow) 47 Tamsayı Taşması Java Uygulaması 48

Tanımı 46 2-4-6 Problemi 46 Şüpheci Yaklaşım 47 Tamsayı Taşması (Integer Overflow) 47 Tamsayı Taşması Java Uygulaması 48 1 Yazılım Güvenliği 2 Yazılım Güvenliği Olgunluk Modelleri 4 OpenSAMM 6 Tehdit Modelleme 7 Güvenli Kod Denetimi 8 Statik Kod Analizi 9 Sızma Testleri-Pentest 10 13 Ne Kadar Karmaşık Olabilir ki? 14 HTML

Detaylı

1.PROGRAMLAMAYA GİRİŞ

1.PROGRAMLAMAYA GİRİŞ 1.PROGRAMLAMAYA GİRİŞ Bilindiği gibi internet üzerindeki statik web sayfaları ziyaretçinin interaktif olarak web sayfasını kullanmasına olanak vermemektedir. Bu yüzden etkileşimli web sayfaları oluşturmak

Detaylı

Kerberos Kimlik Denetimi Altyapısı

Kerberos Kimlik Denetimi Altyapısı Kerberos Kimlik Denetimi Altyapısı Necdet Yücel nyucel~comu.edu.tr V. Linux ve Özgür Yazılım Şenliği, ODTÜ KAPSAM Nedir? Nasıl Çalışır? Bilet, Oturum Anahtarı, Özel Biletler Süreçler Ataklar Eşzamanlama,

Detaylı

Selective Framebusting

Selective Framebusting Selective Framebusting Seçiçi Çerçeveleme Engelleme Sema Arık, TurkcellTeknoloji, sema.arik@turkcellteknoloji.com.tr Bedirhan Urgun, Web Güvenlik Topluluğu, urgunb@hotmail.com Giriş PCI DSS Requirements

Detaylı

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir

Compiere Açık kodlu ERP + CRM yazılımı. Hüseyin Ergün Önsel Armağan Serkan Demir Compiere Açık kodlu ERP + CRM yazılımı Hüseyin Ergün Önsel Armağan Serkan Demir ERP Nedir? ERP = Kurumsal Kaynak Planlama Organizasyonların farklı fonksiyonlarının ve departmanlarının kullandığı enformasyonu

Detaylı

Bilgisayarda Programlama. Temel Kavramlar

Bilgisayarda Programlama. Temel Kavramlar Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu

Detaylı

Elektronik Bilgi Hizmetleri ve Erişim Yönetimi

Elektronik Bilgi Hizmetleri ve Erişim Yönetimi Elektronik Bilgi Hizmetleri ve Erişim Yönetimi Yaşar Tonta H.Ü. Kütüphanecilik Bölümü tonta@hacettepe.edu.tr http://yunus.hacettepe.edu.tr/~tonta/tonta.html Erişim Yönetimi Sorunu Dijital kütüphaneler,

Detaylı

Kullanım ve Yardım Kılavuzu

Kullanım ve Yardım Kılavuzu Kullanım ve Yardım Kılavuzu 2007 Genel Bakış TradeMaster International, uluslar arası piyasalardaki Hisse Senedi ve Futures işlemlerini kolay ve hızlı bir şekilde yapmanıza olanak sağlayan bir uygulamadır.

Detaylı

KURUM AĞLARINI ÖNEMLĠ ZARARLI YAZILIM SALDIRILARINDAN KORUMA. Osman PAMUK

KURUM AĞLARINI ÖNEMLĠ ZARARLI YAZILIM SALDIRILARINDAN KORUMA. Osman PAMUK KURUM AĞLARINI ÖNEMLĠ ZARARLI YAZILIM SALDIRILARINDAN KORUMA Osman PAMUK Ġçerik Giriş Örnek Zararlı Yazılımlar Conficker Stuxnet Önemli zararlı yazılım sızma noktaları ve korunma yöntemleri Taşınabilir

Detaylı

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1

Öğr. Gör. Serkan AKSU http://www.serkanaksu.net. http://www.serkanaksu.net/ 1 Öğr. Gör. Serkan AKSU http://www.serkanaksu.net http://www.serkanaksu.net/ 1 JavaScript JavaScript Nedir? Nestcape firması tarafından C dilinden esinlenerek yazılmış, Netscape Navigator 2.0 ile birlikte

Detaylı

BİLGİ GÜVENLİĞİ VE BİLGİ İŞLEM PROSEDÜRÜ

BİLGİ GÜVENLİĞİ VE BİLGİ İŞLEM PROSEDÜRÜ 1.AMAÇ: Kurumun otomasyon üzerindeki tüm bilgilerinin yönetimini, korunmasını, dağıtımını ve önemli işlevlerinin korunmasını düzenleyen kuralları ve uygulamaları belirlemeyi amaçlar. 2. KAPSAM: Bu talimat,

Detaylı

WEB SUNUCU GÜVENLİĞİ: Web Siteleri Neden Hacklenir?

WEB SUNUCU GÜVENLİĞİ: Web Siteleri Neden Hacklenir? WEB SUNUCU GÜVENLİĞİ: Web Siteleri Neden Hacklenir? Gereksiz yedek dosyaları Default ayarlarla gelen konfigürasyon dosyaları Yetkisi tam olarak verilmiş dosyalar ya da dosya izni kontrolü yapılmadan sunucuda

Detaylı

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

ASP.NET TEMELLERİ. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu ASP.NET TEMELLERİ Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu İnternet Nasıl Çalışır? Sunucu istemci modeline göre çalışır. Fiziksel olarak bu sistem genelde isteği yapan

Detaylı

TÜBİTAK ULAKBİM ELEKTRONİK İMZA ENTEGRASYONU HİZMET ALIMI TEKNİK ŞARTNAMESİ

TÜBİTAK ULAKBİM ELEKTRONİK İMZA ENTEGRASYONU HİZMET ALIMI TEKNİK ŞARTNAMESİ TÜBİTAK ULAKBİM ELEKTRONİK İMZA ENTEGRASYONU HİZMET ALIMI TEKNİK ŞARTNAMESİ 1. YAPILACAK İŞİN KONUSU VE TANIMI 1.1. Yapılacak İşin Konusu TRABIS (.tr Ağ Bilgi Sistemi) kapsamında doğacak olan e-imza ile

Detaylı

Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu

Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu T.C. SOSYAL GÜVENLİK KURUMU Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu Sürüm 1.1 OCAK 2010 Eczane İlaç Satış Onay Bildirimi Web Servislerinin Kullanım Kılavuzu İçindekiler İçindekiler...

Detaylı

İNTERNET PROGRAMLAMA II. Tanımlar

İNTERNET PROGRAMLAMA II. Tanımlar İNTERNET PROGRAMLAMA II Tanımlar WWW( World Wide Web) Dünya üzerindeki bütün bilgisayarların bağlı olduğu bir ağdır. Çoğunlukla Web olarak adlandırılır. Web üzerindeki bilgisayarlar standart protokolleri

Detaylı

ÖZGÜR YAZILIMLAR İLE J2EE

ÖZGÜR YAZILIMLAR İLE J2EE ÖZGÜR YAZILIMLAR İLE J2EE Buğra Çakır bugra@ibrahimcakir.com Seminer İçeriği 1. İki ve üç katmanlı yazılım mimarileri 2. Java ve J2EE platformu 3. Özgür yazılımlar ile J2EE 4. Eclipse, Lomboz ve JBoss

Detaylı

BİLGİ GÜVENLİĞİ POLİTİKASI

BİLGİ GÜVENLİĞİ POLİTİKASI Doküman No: EBG-GPOL-01 Revizyon No: 01 Tarih:01.08.2011 Sayfa No: 1/5 Amaç: Bu Politikanın amacı E-TUĞRA EBG Bilişim Teknolojileri ve Hizmetleri A.Ş. nin ve hizmet sunduğu birimlerin sahip olduğu bilgi

Detaylı

UE.18 Rev.Tar/No:09.05.2011/03 SAYFA 1 / 5

UE.18 Rev.Tar/No:09.05.2011/03 SAYFA 1 / 5 UE.18 Rev.Tar/No:09.05.2011/03 SAYFA 1 / 5 1. AMAÇ Türksat İnternet ve İnteraktif Hizmetler Direktörlüğü nün bilgi güvenliğini yönetmekteki amacı; bilginin gizlilik, bütünlük ve erişilebilirlik kapsamında

Detaylı

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No:

DOKÜMANLARIN KONTROLÜ PROSEDÜRÜ Doküman No: Yürürlük Tarihi: Revizyon Tarih/No: 1. AMAÇ Bu prosedürün amacı, İç Kontrol Sistemi içinde bulunan tüm dokümanların hazırlanması, onaylanması, yayını, sürdürülmesi, güncelleştirilmesi ve dağıtım esasları için yöntem ve sorumlulukları belirlemektir.

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Servlet Üst Düzey Programlama-ders01/ 1 Servlet Nedir? Web sayfaları ilk başlarda durağan bir yapıya sahipti ve kullanıcıdan bilgi alarak işlemler yapmıyordu. Zamanın geçmesiyle kullanıcıya

Detaylı

Web Güvenliği Topluluğu webguvenligi.org Web Uygulama Güvenliği Kontrol Listesi 2012

Web Güvenliği Topluluğu webguvenligi.org Web Uygulama Güvenliği Kontrol Listesi 2012 Web Güvenliği Topluluğu webguvenligi.org Web Uygulama Güvenliği Kontrol Listesi 2012 Web Uygulama Güvenliği Kontrol Listesi, web uygulamalarında bilgi güvenliği açısından gerçekleştirilmesi, aktif olması

Detaylı

BÖLÜM 8. Bilişim Sistemleri Güvenliği. Doç. Dr. Serkan ADA

BÖLÜM 8. Bilişim Sistemleri Güvenliği. Doç. Dr. Serkan ADA BÖLÜM 8 Bilişim Sistemleri Güvenliği Doç. Dr. Serkan ADA Bilişim Sistemleri Güvenlik Açıkları Güvenlik bilişim sistemlerine yönelik yetkisiz erişimi, değiştirmeyi, hırsızlığı veya fiziksel hasarları engellemek

Detaylı

İnternet Programcılığı

İnternet Programcılığı 1 PHP le Ver tabanı İşlemler Yaptığımız web sitelerinin daha kullanışlı olması için veritabanı sistemleri ile bağlantı kurup ihtiyaca göre verileri okuyup yazmasını isteriz. 1.1 Veritabanı Nedir? Veritabanı

Detaylı

Üst Düzey Programlama

Üst Düzey Programlama Üst Düzey Programlama Struts Framework Üst Düzey Programlama-ders08/ 1 JSP MODEL 1 ve MODEL 2 Mimarileri Bu mimariler bir web uygulaması geliştirilirken kullanılan yöntemlerdir. Bu yöntemler arasındaki

Detaylı

Smart Work ile SüreS. reçlerinizi Daha Verimli Hale Getirin Yeşim MUTLU. WebSphere Ürün Müdürü

Smart Work ile SüreS. reçlerinizi Daha Verimli Hale Getirin Yeşim MUTLU. WebSphere Ürün Müdürü Smart Work ile SüreS reçlerinizi Daha Verimli Hale Getirin Yeşim MUTLU IBM Çözümler Zirvesi 2011 WebSphere Ürün Müdürü Đş Süreci Yönetimi Websphere Lombardi Edition Örnek Proje Profili Referanslar Đş Süreci

Detaylı

Web Uygulamaları Mimarileri ve Güvenliği

Web Uygulamaları Mimarileri ve Güvenliği Web Uygulamaları Mimarileri ve Güvenliği METU CCLUB erbil Karaman başlıklar... Web uygulama mimarileri Uygulama geliştirme ve framework kullanımı Güvenli web uygulamaları için öneriler baslamadan önce...

Detaylı

Kaspersky Open Space Security: Release 2. İşletmeniz için birinci sınıf bir BT güvenliği çözümü

Kaspersky Open Space Security: Release 2. İşletmeniz için birinci sınıf bir BT güvenliği çözümü Kaspersky Open Space Security: Release 2 İşletmeniz için birinci sınıf bir BT güvenliği çözümü Güncellenmiş uygulamalar Updated applications Release 2 uygulamaları: Kaspersky Anti-virus for Windows Workstations

Detaylı

Bilgi Servisleri (IS)

Bilgi Servisleri (IS) Bilgi Servisleri (IS) GRID Kullanıcı Eğitimi Boğaziçi Üniversitesi 2007, İstanbul Emrah AKKOYUN Konu Başlığı Neden ihtiyaç duyulur? Kullanıcılar kimlerdir? Bilgi Servisi türleri MDS ve BDII LDAP Bilgi

Detaylı

LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler. Cem Yılmaz Genel Müdür LOGOBI Yazılım

LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler. Cem Yılmaz Genel Müdür LOGOBI Yazılım LOGO İş Zekası çözümü ile kurumsal raporlama ve analizler Cem Yılmaz Genel Müdür LOGOBI Yazılım Hakkımızda LOGOBI Yazılım A.Ş. iş zekası alanında faaliyet gösteren, Türkiye de sahip olduğu yüzlerce müşterinin

Detaylı

T. C. TÜRK STANDARDLARI ENSTİTÜSÜ

T. C. TÜRK STANDARDLARI ENSTİTÜSÜ T. C. TÜRK STANDARDLARI ENSTİTÜSÜ TS ISO/IEC 27001 BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ, TS ISO/IEC 20000-1 BT HİZMET YÖNETİM SİSTEMİ Sunucu: Gürol GÖKÇİMEN 25.10.2014 Türk Standardları Enstitüsü 1 Güvenlik;

Detaylı

IBM Güvenlik Sistemleri Yeni Nesil Güvenlik Bilgisi Toplama ve Olay Yönetimi

IBM Güvenlik Sistemleri Yeni Nesil Güvenlik Bilgisi Toplama ve Olay Yönetimi Yeni Nesil Güvenlik Bilgisi Toplama ve Olay Yönetimi 6 Aralık 2012 1 2012 IBM Corporation Gündem 2 Günümüzde BT güvenliği gereksinimi IBM güvenlik çerçevesi QRadar: Yeni Nesil Güvenlik Bilgisi Toplama

Detaylı

Aktarımı Çalıştırmak/Geri Almak 146 Alan Seçenekleri 148 Veri Tabanı Şeması 150 Veri Tabanı ile İlgili Bazı Rake Görevleri 162 Modeller 164

Aktarımı Çalıştırmak/Geri Almak 146 Alan Seçenekleri 148 Veri Tabanı Şeması 150 Veri Tabanı ile İlgili Bazı Rake Görevleri 162 Modeller 164 xi Ruby on Rails Nedir? 2 Rails Neden Farklıdır? 2 Başlamadan Önce Bilinmesi Gerekenler 4 İnternet Nasıl Çalışır? 4 İstemci-Web Sunucu İlişkisi 5 HTTP Protokolü 6 URL-Kaynak Konumlandırma Adresleri 7 HTTP

Detaylı

İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ

İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ İŞ SÜREKLİLİĞİ YÖNETİM SİSTEMİ İÇİN KRİTİK BAŞARI FAKTÖRLERİ Ali Dinçkan, BTYÖN Danışmanlık İş sürekliliği, kurumun kritik süreçlerinin belirlenmesi, bu süreçlerin sürekliliği için gerekli çalışmaların

Detaylı

TODAİE edevlet MERKEZİ UYGULAMALI E-İMZA SEMİNERİ 16-17 KASIM 2011. E-imza Teknolojisi. TODAİE Sunumu

TODAİE edevlet MERKEZİ UYGULAMALI E-İMZA SEMİNERİ 16-17 KASIM 2011. E-imza Teknolojisi. TODAİE Sunumu TODAİE edevlet MERKEZİ UYGULAMALI E-İMZA SEMİNERİ 16-17 KASIM 2011 E-imza Teknolojisi TODAİE Sunumu Ferda Topcan Başuzman Araştırmacı ferdat@uekae.tubitak.gov.tr (312) 4688486-19 İçerik Açık Anahtarlı

Detaylı

TÜRKĠYE BĠLĠMSEL VE TEKNOLOJĠK ARAġTIRMA KURUMU BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI ÇALIġMA USUL VE ESASLARI

TÜRKĠYE BĠLĠMSEL VE TEKNOLOJĠK ARAġTIRMA KURUMU BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI ÇALIġMA USUL VE ESASLARI TÜRKĠYE BĠLĠMSEL VE TEKNOLOJĠK ARAġTIRMA KURUMU BĠLGĠ ĠġLEM DAĠRE BAġKANLIĞI ÇALIġMA USUL VE ESASLARI BĠRĠNCĠ BÖLÜM Amaç ve Kapsam, Dayanak ve Tanımlar Amaç ve kapsam MADDE 1- (1) Bu Usul ve Esasların

Detaylı

FINDIK Herkese Açık Filtre 18.04.2009

FINDIK Herkese Açık Filtre 18.04.2009 FINDIK Herkese Açık Filtre 18.04.2009 FINDIK Ekibi Sunum Planı Neden içerik filtreleme? Peki neden FINDIK? FINDIK nasıl kullanılır? FINDIK uygulama tasarımı FINDIK nasıl geliştirilir? Gelecek

Detaylı

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu

İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, kabuk ve diğer temel kavramlar) Bir işletim sisteminin yazılım tasarımında ele alınması gereken iki önemli konu bulunmaktadır; 1. Performans: İşletim sistemi, makine

Detaylı

Kurumsal Ağlarda Web Sistem Güvenliği

Kurumsal Ağlarda Web Sistem Güvenliği Kurumsal Ağlarda Web Sistem Güvenliği Ar. Gör. Enis Karaarslan Ege Ü. Kampüs Network Yöneticisi ULAK CSIRT http://csirt.ulakbim.gov.tr İÇERİK 1. Neden Web Güvenliği 2. Kurumsal Web Güvenliği Modeli Standartları

Detaylı

Bölüm 10: PHP ile Veritabanı Uygulamaları

Bölüm 10: PHP ile Veritabanı Uygulamaları Bölüm 10: PHP ile Veritabanı Uygulamaları -231- Öğr.Gör. Serkan DİŞLİTAŞ 10.1. PHP PHP, platformdan bağımsız sunucu taraflı çalışan betik bir web programlama dilidir. PHP programlama dili ile MySQL, MSSQL,

Detaylı

Bakanlığımız Tüketici ve Rekabetin Korunması Genel Müdürlüğü'nce yürütülen,

Bakanlığımız Tüketici ve Rekabetin Korunması Genel Müdürlüğü'nce yürütülen, T.C. Sanayi ve Ticaret Bakanlığı İle Türkiye Bilimsel ve Teknolojik Araştırma Kurumu (TÜBİTAK) Ulusal Elektronik ve Kriptoloji Araştırma Enstitüsü (UEKAE) Arasında "Nitelikli Elektronik Sertifika Temini

Detaylı

PHP 1. Hafta 2.Sunum

PHP 1. Hafta 2.Sunum PHP 1. Hafta 2.Sunum Hello World Bu derste görülecekler WAMP ve PHP Hosting kavramı ve bizi neden ilgilendirmediği Domain ve localhost kavramları www klasörü İlk PHP kodunun

Detaylı

Nagios XI Günümüzün talep gören kurumsal gereksinimleri için en güçlü BT altyapısı gözetim ve uyarı çözümüdür.

Nagios XI Günümüzün talep gören kurumsal gereksinimleri için en güçlü BT altyapısı gözetim ve uyarı çözümüdür. Nagios Enterprises, kurumsal ölçekte, BT altyapı gözetiminde endüstri standardı olan Nagios için resmi ürünler, hizmetler ve çözümler sunuyor. Dünya çapında yüz binlerce kullanıcıyla Nagios bilgi teknolojileri

Detaylı

ULUSAL GRID ÇALIŞTAYI 2005

ULUSAL GRID ÇALIŞTAYI 2005 ULUSAL GRID ÇALIŞTAYI 2005 Güvenlik ve Sertifika Otoritesi Aslı Zengin asli@ulakbim.gov.tr 21-22 Eylül ANKARA GüVENLiK VE SERTiFiKA OTORiTESi Güvenlik Nedir? Grid Uygulamalarında Güvenlik Çözüm: Sertifika

Detaylı

NESNEYE YÖNELİK TASARIM SÜRECİ

NESNEYE YÖNELİK TASARIM SÜRECİ NESNEYE YÖNELİK TASARIM SÜRECİ GİRİŞ Nasıl? sorusuna yanıt aranır. Nesne modeli: Analizden tasarıma. Doğrudan problem alanı ile ilgili nesnelerden oluşan model, yardımcı nesnelerle zenginleştirilir. Ana

Detaylı

ISO 27001:2013 BGYS BAŞDENETÇİ EĞİTİMİ. Planlama - Destek

ISO 27001:2013 BGYS BAŞDENETÇİ EĞİTİMİ. Planlama - Destek Planlama - Destek Risk ve fırsatları ele alan faaliyetler enel ilgi güvenliği yönetim sistemi planlaması yaparken, kuruluş Madde 4.1 de atıf yapılan hususları ve Madde 4.3. de atıf yapılan şartları göz

Detaylı

T. C. TÜRK STANDARDLARI ENSTİTÜSÜ

T. C. TÜRK STANDARDLARI ENSTİTÜSÜ T. C. TÜRK STANDARDLARI ENSTİTÜSÜ BİLGİ GÜVENLİĞİ YÖNETİM SİSTEMİ, TS ISO/IEC 20000-1 BT HİZMET YÖNETİM SİSTEMİ Sunucu: Gürol GÖKÇİMEN 1 Bilgi Güvenliği Yönetim Sistemi Bilgi : anlamlı veri, (bir kurumun

Detaylı

BİLGİ GÜVENLİĞİ VE FARKINDALIK WEB SİTESİ KULLANIM KILAVUZU

BİLGİ GÜVENLİĞİ VE FARKINDALIK WEB SİTESİ KULLANIM KILAVUZU 1 BİLGİ GÜVENLİĞİ VE FARKINDALIK WEB SİTESİ KULLANIM KILAVUZU Günümüzde kurumlar ve bireylerin sahip olduğu en değerli varlıkları olan bilginin; gizlilik, bütünlük ve erişilebilirlik nitelikleri bakımından

Detaylı

YAZILIM GÜVENLİĞİ POLİTİKASI 1/6. Doküman No : Yayınlandığı Tarih: Revizyon No: 00

YAZILIM GÜVENLİĞİ POLİTİKASI 1/6. Doküman No : Yayınlandığı Tarih: Revizyon No: 00 1/6 1. AMAÇ: Bu doküman İstanbul Üniversitesinde geliştirilmiş ve geliştirilmekte olan tüm uygulamalarında yazılımın her türlü güvenliğinin sağlanması amacıyla tüm yazılım geliştiriciler, veri tabanı ve

Detaylı

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzmanı Görev Tanımı

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzmanı Görev Tanımı Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzmanı Görev Tanımı Formal Doküman Detayları Hazırlanma Tarihi 17 Eylül 2012 Yayın Taslak Hazırlayan Ersun Ersoy Doküman Numarası

Detaylı

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu

Turquaz. Açık kodlu muhasebe yazılımı http://www.turquaz.com. Turquaz Proje Grubu Turquaz Açık kodlu muhasebe yazılımı http://www.turquaz.com Turquaz Proje Grubu Konu Başlıkları 1. Turquaz Proje Grubu 2. Programın fikri 3. Geliştirme aşaması 4. Programın içeriği 5. Yapılacaklar 6. Dizayn

Detaylı

Bilgi Güvenliği Denetim Sürecinde Özgür Yazılımlar. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net

Bilgi Güvenliği Denetim Sürecinde Özgür Yazılımlar. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Bilgi Güvenliği Denetim Sürecinde Özgür Yazılımlar Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Bilgi Güvenliği Denetimi Kurumların sahip olduğu politikaların ve uygulamalarının, güvenlik

Detaylı

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015

Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 Arş.Gör.Muhammet Çağrı Gencer Bilgisayar Mühendisliği KTO Karatay Üniversitesi 2015 KONU BAŞLIKLARI 1. Yazılım Mimarisi nedir? 2. Yazılımda Karmaşıklık 3. Üç Katmanlı Mimari nedir? 4. Üç Katmanlı Mimari

Detaylı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı

Internet Programming II. Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Internet Programming II Elbistan Meslek Yüksek Okulu 2014 2015 Bahar Yarıyılı Öğr. Gör. Murat KEÇECĠOĞLU 11-14 May. 2014 Form Form İşlemleri Tarayıcıdan bilgi alarak işlem gerçekleştirme FORM elemanları

Detaylı

ORTA DOĞU TEKNİK ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI. Güvenlik ve Virüsler. ODTÜ BİDB İbrahim Çalışır, Ozan Tuğluk, Cengiz Acartürk 04.04.

ORTA DOĞU TEKNİK ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI. Güvenlik ve Virüsler. ODTÜ BİDB İbrahim Çalışır, Ozan Tuğluk, Cengiz Acartürk 04.04. Güvenlik ve Virüsler ODTÜ BİDB İbrahim Çalışır, Ozan Tuğluk, Cengiz Acartürk 04.04.2005 Bilgi güvenliği neden gerekli? Kişisel bilgi kaybı Üniversiteye ait bilgilerin kaybı Bilgiye izinsiz erişim ve kötüye

Detaylı

ISO 27001:2013 BGYS BAŞDENETÇİ EĞİTİMİ. Kapsam - Terimler

ISO 27001:2013 BGYS BAŞDENETÇİ EĞİTİMİ. Kapsam - Terimler Kapsam - Terimler K A P A M Kapsam u standard kuruluşun bağlamı dâhilinde bir bilgi güvenliği yönetim sisteminin kurulması, uygulanması,sürdürülmesi ve sürekli iyileştirilmesi için şartları kapsar. u standard

Detaylı

Kaynak Kod Güvenliği Bir Güvensiz API Örneği

Kaynak Kod Güvenliği Bir Güvensiz API Örneği Kaynak Kod Güvenliği Bir Güvensiz API Örneği Bedirhan Urgun, Ağustos 2010, WGT E-Dergi 6. Sayı Bu yazıda Tomcat J2EE kısmi uygulama sunucusunda bulunan bir güvenlik açığına, güvenlik probleminin kaynağına

Detaylı

Yazılım-donanım destek birimi bulunmalıdır.

Yazılım-donanım destek birimi bulunmalıdır. BİLGİ YÖNETİMİ Yazılım-donanım destek birimi bulunmalıdır. o Yazılım-donanım destek birimi 24 saat kesintisiz hizmet sunmalı, o Yazılım-donanım destek birimi çalışanlarının güncel iletişim bilgileri santralde

Detaylı

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr

9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II. Öğr.Gör. Hakan YILMAZ. hakanyilmaz@karabuk.edu.tr 9. HAFTA KBT204 İNTERNET PROGRAMCILIĞI II Öğr.Gör. Hakan YILMAZ hakanyilmaz@karabuk.edu.tr Karabük Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi 2 İçindekiler Request Nesnesinin Özellikleri

Detaylı

1 Temel Kavramlar. Veritabanı 1

1 Temel Kavramlar. Veritabanı 1 1 Temel Kavramlar Veritabanı 1 Veri Saklama Gerekliliği Bilgisayarların ilk bulunduğu yıllardan itibaren veri saklama tüm kurum ve kuruluşlarda kullanılmaktadır. Veri saklamada kullanılan yöntemler; Geleneksel

Detaylı

ÖRÜN (WEB) GÜVENLİĞİ. Hazırlayan: Arda Balkanay 704041003

ÖRÜN (WEB) GÜVENLİĞİ. Hazırlayan: Arda Balkanay 704041003 ÖRÜN (WEB) GÜVENLİĞİ Hazırlayan: Arda Balkanay 704041003 Taslak Giriş WEB Nasıl Çalışır Hedef WEB Güvenlik Açıkları / Uygulama Problemleri Tehditler Sonuç Giriş WWW World Wide Web İnternet servislerini

Detaylı

ÖZ DEĞERLENDİRME SORU LİSTESİ

ÖZ DEĞERLENDİRME SORU LİSTESİ T.C TÜRKİYE KAMU HASTANELERİ KURUMU BURSA İLİ KAMU HASTANELERİ BİRLİĞİ GENEL SEKRETERLİĞİ ORHANELİ İLÇE DEVLET HASTANESİ VE RAPORU BİLGİ YÖNETİMİ ÖZDEĞERLENDİRME SORU LİSTESİ TARİH: Doküman Kodu Yayın

Detaylı

TS EN ISO 9241-151 EŞLEŞTİRME LİSTESİ

TS EN ISO 9241-151 EŞLEŞTİRME LİSTESİ Kriter No Kriter Başlığı Rehber İlke Başlığı A 6. Üst Düzey Tasarım Kararları ve Tasarım Stratejisi 6.1 Genel özellikler 6.2 Web uygulamasının amacının belirginliği 3.10.1. Kurumsal Bilgiler 1.3.2. Kullanıcıların

Detaylı

AHTAPOT Merkezi Güvenlik Duvarı Yönetim Sistemi Kontrol Paneli

AHTAPOT Merkezi Güvenlik Duvarı Yönetim Sistemi Kontrol Paneli AHTAPOT Merkezi Güvenlik Duvarı Yönetim Sistemi Kontrol Paneli Bu dökümanda, Ahtapot bütünleşik güvenlik yönetim sisteminde kullanılan Merkezi Güvenlik Duvarı Yönetim Sistemi uygulamasının yapılandırması,

Detaylı

Özgür Yazılımlar ile VoIP Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net

Özgür Yazılımlar ile VoIP Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Özgür Yazılımlar ile VoIP Denetimi Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci@gamasec.net Konular VoIP Güvenliği VoIP Güvenlik Denetim Süreci Denetim Kapsamının Belirlenmesi Ağ Altyapısı Analizi

Detaylı

BİLGİ GÜVENLİĞİ BİLİNÇLENDİRME EĞİTİMİ www.bilgimikoruyorum.org.tr

BİLGİ GÜVENLİĞİ BİLİNÇLENDİRME EĞİTİMİ www.bilgimikoruyorum.org.tr BİLGİ GÜVENLİĞİ BİLİNÇLENDİRME EĞİTİMİ www.bilgimikoruyorum.org.tr PROJE HAKKINDA Bilgimi Koruyorum e Öğrenme Projesi DPT tarafından desteklenmiş olan Ulusal Bilgi Sistemleri Programı kapsamında gerçekleştirilmiş

Detaylı

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC) Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC) Sistem analistlerinin ve kullanıcı faaliyetlerinin spesifik döngüsünün kullanılmasıyla En iyi geliştirilmiş sistemin oluşmasını

Detaylı

Kamu Sertifikasyon Merkezi

Kamu Sertifikasyon Merkezi TÜBİTAK UEKAE ULUSAL ELEKTRONİK ve KRİPTOLOJİ ARAŞTIRMA ENSTİTÜSÜ E-İmza ve Kamu Sertifikasyon Merkezi Mustafa C. Kuşçu Tel: 0 262 648 1871 e-posta: mck@uekae.tubitak.gov.tr mustafa.kuscu@kamusm.gov.tr

Detaylı

EKLER. EK 12UY0106-4/A5-2: Yeterlilik Biriminin Ölçme ve Değerlendirmesinde Kullanılacak Kontrol Listesi

EKLER. EK 12UY0106-4/A5-2: Yeterlilik Biriminin Ölçme ve Değerlendirmesinde Kullanılacak Kontrol Listesi EKLER EK 12UY0106-4/A5-1: nin Kazandırılması için Tavsiye Edilen Eğitime İlişkin Bilgiler Bu birimin kazandırılması için aşağıda tanımlanan içeriğe sahip bir eğitim programının tamamlanması tavsiye edilir.

Detaylı

Kurumsal Kimlik Yönetimi ve Güçlü Kimlik Doğrulama. Yılmaz Çankaya

Kurumsal Kimlik Yönetimi ve Güçlü Kimlik Doğrulama. Yılmaz Çankaya Kurumsal Kimlik Yönetimi ve Güçlü Kimlik Doğrulama Yılmaz Çankaya Mart, 2010 Kimlik Yönetimi Kaynak (Resource) Uygulamaları oluşturan ve kullanılması hedeflenen bütün yetki seviyelerinin kontrolünü sağlayabilecek

Detaylı

ISO 9001:2015 KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU

ISO 9001:2015 KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU ISO 9001:2015 KALİTE YÖNETİM SİSTEMİ GEÇİŞ KILAVUZU Dünyada en çok kullanılan yönetim sistemi standardı ISO 9001 Kalite Yönetim Sistemi Standardının son revizyonu 15 Eylül 2015 tarihinde yayınlanmıştır.

Detaylı

TEMİZLEME PROSEDÜRLERİ VE ÇİZELGELERİ

TEMİZLEME PROSEDÜRLERİ VE ÇİZELGELERİ BRC Gıda standardında geçen gerekliliklerin bir kısmına yönelik olarak açıklayıcı klavuzlar BRC tarafından yayınlandı. Bu klavuzlardan biri olan bu dokümanın Türkçe çevirisi sayın ECE BAĞUÇ tarafından

Detaylı

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri

AJAX nedir? AJAX nasıl çalışır? AJAX. Tahir Emre KALAYCI. Sunucu Yazılım Teknolojileri nedir? Sunucu Yazılım Teknolojileri nedir? Gündem 1 nedir? 2 XML 3 nedir? nedir? : Asynchronous JavaScript and XML Yeni bir teknoloji değil, daha çok bir yöntembilim, teknik, tasarım deseni. RIA = Zengin

Detaylı

Pardus. S.Çağlar Onur, caglar@pardus.org.tr. 21 Aralık 2006. Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği

Pardus. S.Çağlar Onur, caglar@pardus.org.tr. 21 Aralık 2006. Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği Yenilikleri Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği 21 Aralık 2006 Yenilikleri İçerik 1 Neden? Nasıl? 2 Yenilikleri man 3 Yenilikleri Neden? Nasıl? 1 Neden? Nasıl? 2 Yenilikleri man 3 Yenilikleri

Detaylı

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1

Web Formlar ve Sayfalar Arasında Bilgi Gönderme. BATML İnternet Programcılığı 1 Web Formlar ve Sayfalar Arasında Bilgi Gönderme BATML İnternet Programcılığı 1 Bazı web sitelerinde sayfalar arasında bilgi veya değişken göndermek gerekebilir. Gönderilen bu bilgi kullanıcı adı ve şifre

Detaylı

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzman Yardımcısı Görev Tanımı

Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzman Yardımcısı Görev Tanımı Atılım Üniversitesi Bilgi & Đletişim Teknolojileri Müdürlüğü Sistem Yönetim Uzman Yardımcısı Görev Tanımı Formal Doküman Detayları Hazırlanma Tarihi 11 Temmuz 2013 Yayın Taslak Hazırlayan Ersun Ersoy Doküman

Detaylı