HacksPlaining: Yazılım Geliştiriciler için Hacking ve Saldırılardan Korunma Yöntemleri
Geliştirilen yazılımlar ve internet erişimine açık cihazlar için en büyük güvenlik tehditi hackerlar. Özellikle web tabanlı uygulamalarda bulunan açıklar hackerlar için bulunmaz nimet değerinde.
Yazılım geliştiriciler olarak her ne kadar güvenlikle ilgili önlemleri alsak da, çok hakim olamadığımız bazı teknik detaylar çoğu zaman bu tip açıklara yol açar. Bazen yazdığımız kodda bulunan bir eksiklik, bazense web sunucusunu, tarayıcının veya kullanılan bir JavaScript kütüphanesinin yapısal açıkları bu tip ciddi tehditlere fırsat vermektedir. Büyük firmalar bu konuda profesyonel ekiplerden penetrasyon testleri ile destek alıyor olsa da, yazılımcıların bu tür açıklara mahal vermeyecek şekilde kodlama yapmaları para ve zaman kaybını önleyecektir.
Bir yazılımı hacklemenin onlarca farklı yöntemi var, yazılımcılar olarak bu yöntemlerin belki de çoğunu bilmiyoruz. Bu yazıda site tanıtmak istediğim HacksPlaining isimli uygulama bu konuda geliştiriciler için browser üzerinde kapsamlı bir güvenlik eğitimi sunuyor. Hacksplaining.com adresinden ulaşabileceğiniz site içerisinde, uygulama geliştirirken karşılaşabileceğiniz 20 farklı güvenlik açığı konusunda bilgi sahibi olabilir, konu ile ilgili alınabilecek önlemleri kodunuza nasıl yansıtabileceğinizi öğrenebilir, sonunda ise basit bir quiz ile öğrendiklerinizi test edebilirsiniz.
Sitenin şu anda kullanımı tamamiyle ücretsiz, Facebook, Github, Linkedin hesaplarından biri ile ya da e-mail adresi ile kayıt olabilirsiniz. Uygulamanın ara yüzü oldukça basit ve kullanışlı, üye olduktan hemen sonra bir konu seçip ilgili eğitime başlayabilirsiniz.
Yukarıda da görüldüğü gibi ben örnek olarak Cross-Site Scripting(XSS) başlığına girdim. Ortadaki kartta bu başlığın ne için kullanıldığı açıklanmış, sonra yaygınlığı, yararlanma zorluğu ve etkisi derecelendirilmiş. Sağ tarafta ise istediğiniz menüden Exercise, Prevention, ya da Quiz menüsüne geçiş yapabilirsiniz.
Exercise
Bu menüde açığın nasıl işlediği parça parça ve efektif bir örnekle simüle edilmiş.
Preventions
Bu ekranda ise öncelikle XXS’in tanımı ve getirdiği riskler detaylı olarak açıklanıyor. Bir sonraki aşamada ise XSS atağından korunmak için detaylı bir bilgilendirme yapılmış ardından farklı programlama dillerinde bu açığın nasıl önlenebileceği örneklendirilmiş.
Quiz
Preventions sayfasını diğer kısımları bitirince Quiz ekranına geçiyoruz. Quiz ekranı diğer sekmelere göre bana kalırsa daha zayıf hazırlanmış, örneği XSS için yalnızca iki soru barındırıyor, bir nevi özet olarak düşünülmüş sanırım.
Benim bu yazı için ele aldığım XSS atakları ile ilgili kısım bu şekildeydi. Ancak sitede 20 adet bu tarz eğitim sayfası var ve hepsi birbirinden farklı şekilde işlenmiş. Örneğin SQL Injection eğitiminde Exercise ekranında sizden simüle sistemin içine sızabileceğiniz sorgu yazmanız bekleniyor.
Her ne kadar programlama dillerinde yapılan geliştirmeler, framework’ler ve çeşitli eklentiler birçok açığı engelleyebiliyor olsa da, yazılımcılar için güvenli kod yazmak gerçekten belirleyici bir unsurdur ve öğrenmek için Hackplaining adlı siteden başlamak gayet makul görünüyor.
1 Comment
ahmet
3 Mayıs 2016 at 09:21Teşekkürler