Geçtiğimiz günlerde Türkiye'ye gelen Microsoft'un güvenlik profesyonelleri ile çok özel bir öğle yemeğinde buluştuk. Sadece sınırlı sayıda gazetecinin davet edildiği bu etkinlikte takımın en başındakilerle sohbet etme ve günümüzde web sitelerinin güvenliğini ve alınacak tedbirleri enine boyuna tartışma imkanı bulduk. Elbette fırsattan istifade takımın babalarından Microsoft'un "ace" güvenlik takımının yöneticisi Irfan Chaudry ile çok özel bir röportaj gerçekleştirmeyi ve CHIP Online ziyaretçilerinin kafalarındaki en önemli sorulara cevap aramayı da ihmal etmedik! İşte sizler için gerçekleştirdiğimiz bu çok özel röportaj:
Cenk Tarhan: ACE'in açılımı nedir? Bu organizasyonun kuruluşu, amacı ve çalışan sayısı nedir?
Irfan Chaudry: ACE takımı, Microsoft Bilgi Teknolojileri (IT) departmanında Bilgi Güvenliği bölümünün bir parçasıdır. İsmini "Assessment Consulting & Engineering"in (Değerlendirme, Danışmanlık ve Mühendislik) baş harflerinden almıştır.
Başlangıçta Microsoft'un iş dünyası uygulamaları hakkında değerlendirmelerde bulunmak üzere 1999 yılında kurulan ACE, 2001'de bu uygulamaların güvenliği ve gizliliğine dayalı incelemelerden de sorumlu hale getirildi. Şu anda ACE bünyesinde 70'ten fazla kişi, dünya çapında uygulama güvenliği, yapısal güvenlik, performans değerlendirme ve gizlilik hizmetleri üzerinde çalışmaktadır.
Hizmetlerden MSIT, MS.COM ve MSN'in yanında Microsoft'un kurumsal müşterileri de yararlanmaktadır (ACE, harici hizmetler konusunda Microsoft Services ile işbirliği yapmaktadır).
Cenk Tarhan: ACE takımı kurulduktan sonra (tehlikeli açıkların, önlenen saldırıların ve exploit'lerin sayısında) ne gibi değişiklikler oldu?
Irfan Chaudry: Yazılım güvenliği incelemesi işine başlandığından beri, kod geliştirmeyle ilgili, çoğunlukla giriş doğrulamalarının eksikliğinden kaynaklanan problemleri daha kolay görmeye başladık.
Bu problemler genelde iki ana açığın, Cross-Site Script (siteler arası komutlar) ve SQL Injection'ın etrafında toplanmışlardı. Bunun sonucunda geliştiricilere, yazılım geliştirme döngüsünün ilk evrelerinde problemleri görmelerini sağlayacak şekilde ileriye dönük yardım vermeye başladık. Geliştiricilerin Cross-Site Script saldırılarını önlemek için kullanabilecekleri bir referans kütüphane hazırladık.
Bu kütüphane, Anti-XSS kütüphanesinden ve XSS Detect aracından (yazılım kodunu tarayarak Cross-Site Script saldırılarını tanımlamayan ücretsiz bir araç) oluşmakta.
Önlenen saldırı ve exploit'lerin sayısı konusunda ise, işkoluna yönelik yazılım güvenliği incelemesine başlandığından bu yana, işkolu uygulamalarımızda kayda değer bir güvenlik sorunu ortaya çıkmadı. Bu başarıyı, yazılım geliştirme döngüsüne güvenlik işlemlerini de dahil etmiş olmamıza borçluyuz.
Olabilecek saldırı türleri
Cenk Tarhan: Okuyucularımıza, günümüzde karşılaşabilecekleri saldırı türleri ve Web sitelerine yönelik tehditler hakkında kısa bir bilgi verebilir misiniz?
Irfan Chaudry: Web sitelerinin kredi kartı ve/veya kimlik bilgileri gibi kişiye özel, gizli bilgileri saklamak, işlemek veya yönetmek için kullanılması artık normal kabul ediliyor. Bu nedenle, Web siteleri için en büyük tehdidi, bu bilgilere ulaşmaya veya onları çalmaya, bozmaya yönelik saldırılar oluşturuyor. Verilerinizi bu saldırılara karşı korumak için belirli ölçülerde güvenlik önlemleri almak artık bir zorunluluk hali almış durumda. Güvenilir programlama teknikleri ile korunması gereken bu sitelere saldırılar birkaç farklı şekilde yapılıyor.
Bunlardan bazıları, siteler arası komutlar (cross site scripting - XSS), SQL injection, uygun olmayan giriş işlemleri ve siteler arası sahte istek komutları şeklinde gerçekleşmekte. Saldırı türleriyle ilgili daha fazla bilgi www.msdn.com/security veya www.hellosecureworld.com sitelerinde bulunabilir. Hellosecureworld sitesi, geçtiğimiz yıl Microsoft tarafından, geliştiricileri bu saldırıların kullandıkları açıklar konusunda bilgilendirmek, daha da önemlisi bu saldırılardan korunmak için gerekli adımları göstermek için kuruldu.
Cenk Tarhan: Web sitesi kurmak isteyen KOBİ'lere (Küçük ve Orta Bütçeli İşletme) yönelik tavsiyelerinizi ve çalışmaya başlamadan önce dikkat etmeleri gereken noktaları sıralar mısınız?
Irfan Chaudry: Web'de yer almayı planlayan KOBİ'ler, bu 3 önemli noktaya dikkat etmelidir:
A. Web sitesine yönelik tehditleri modellemek. Bu adım, site için herhangi bir kod yazmadan önce, siteye yönelik tehditleri ve sitenin açıklarını belirlemeye yardımcı olacaktır. Daha tasarım aşamasındayken bu açıkları belirlemek, zamandan, paradan ve kaynaklardan tasarruf sağlayacaktır. ACE Takımı, "Threat Analysis & Modeling" (Tehdit Analiz ve Modelleme) aracını, Microsoft'un işkolundaki uygulamalar için geliştirdi. Bu aracı, buradan indirebilirsiniz.
B. İkinci tavsiyemiz, Web sitesinin geliştiricilerinin uygulama güvenliği konusunda bir eğitimden geçirilmesi olacaktır. Bu konuda bir on-line alıştırma örneği www.hellosecureworld.com portalında mevcut. Yapılan yatırımın meyvelerini toplayabilmek için, bu eğitim, mutlaka site geliştirilmeye başlanmadan önce gerçekleştirilmelidir.
C. Üçüncü adım ise, XSS Detect ve Anti-XSS gibi tanımlama araçlarını yazılım geliştirme döngüsüne (Software Development Lifecycle - SDLC) dahil etmek. Bu tür araçlar, güvenlik açıklarını (kodlama aşamasında) bulmayı kolaylaştırmanın yanında, güvenlik kontrollerinin sisteme dahil edilmesini de sağlamaktadır. Bu sayede geliştirme işlemi bir bütün olarak daha kolay hale gelmektedir.
Doğru güvenlik planına giden yol
Cenk Tarhan: Günümüzde neredeyse her ofis bir şekilde internete bağlı. BT departmanları, şirket içerisinde fikri mülkiyetleri ve gizli şirket verilerini korumak için nasıl bir güvenlik planı oluşturmalı?
Irfan Chaudry: Riskleri öngören bir yapı oluşturmak ve verileri gizliliğine göre sınıflandırmak bu konuda çok büyük öneme sahip. Bu gerçekleştirildiğinde, şirket için en önemli verilerin hangileri olduğunu anlamak ve buna göre sistemi yapılandırmak mümkün oluyor.
Şirketlerin bu iş için kaynakları oldukça kısıtlı olduğu için, en önemli riskleri bilmek, kısıtlı kaynaklardan maksimum verimi almamızı sağlıyor. Güvenlikten sorumlu birim, hangi uygulamanın ticari önemi yüksek veriler içerdiğini bildiğinde, verilerin ve uygulamanın tamamını gözden geçirmeyi tercih edebilir. Söz konusu uygulamanın içerdiği verilerin ticari önemi düşük ise, güvenlik birimi yalnızca veriyi saklayan sunucular üzerinde tarama yapmayı seçer.
Son olarak şunu belirtmek isterim ki, SDLC'nin (Software Development Lifecycle – Yazılım Geliştirme Döngüsü) içine güvenlikle ilgili bazı adımlar eklemek artık bir zorunluluk halini almıştır ve bu adımlar kurumsal idare tarafından devreye alınmalıdır.
Cenk Tarhan: Zamanınızı ayırdığınız ve sorularımızı cevapladığınız için CHIP Online ziyaretçileri adına teşekkür ederim...