OWASP/WGT & WebGoat Bünyamin DEMİR www.owasp.org/index.php/Turkey www.webguvenligi.org OWASP [email protected] 19 Mart 2009 Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the.
Download ReportTranscript OWASP/WGT & WebGoat Bünyamin DEMİR www.owasp.org/index.php/Turkey www.webguvenligi.org OWASP [email protected] 19 Mart 2009 Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the.
OWASP/WGT & WebGoat OWASP
19 Mart 2009 Bünyamin DEMİR www.owasp.org/index.php/Turkey www.webguvenligi.org
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.
The OWASP Foundation
http://www.owasp.org
İçerik
OWASP Nedir?
Projeler WGT Niye Burdayız?
Projelerimiz Hedeflerimiz WebGoat Amaç ve Kurulum Path Based Access Control XSS Sql Injection
2
OWASP – Nedir?
Open Web Application Security Projest (OWASP) Güvensiz yazılımların sebep oldukları açıkları bulup, bunlarla mücadele eden bir topluluktur.
Tüm OWASP ürünleri ücretsiz ve açıktır.
Kar amacı gütmez Topluluga ait rakamlar 120+ (Chapter) 30+ Sponsor 50+ Proje 100+ E-posta listesi Aylık beş milyon üzerinde ziyaret
3
OWASP Ana Site Trafiği
Worldwide Users Most New Visitors 250 200 150 100 50 0 01.10.2002
01.10.2003
01.10.2004
01.10.2005
01.10.2006
01.10.2007
/wk
4
OWASP Neler Yapar?
WebGoat WebScarab Live CD .NET Research LAPSE …
Araçlar Topluluk
Testing Guide Top 10 Legal AppSec FAQ
Dökümanlar
Metrics … Wiki Bölgeler (chapters) Forumlar Günlükler (blogs) Çeviriler Konferanslar
5
OWASP Corporate Members – Jul 2008
6
OWASP Testing Guide
Çalışma ortamının oluşturulması (Testing Framework) Güvenlik testlerinin yapılması Güvenlik testlerinin nasıl yapılması gerektiği, metodolojisi Rapor hazırlanması
7
OWASP Top 10
Sık rastlanan on web uygulaması güvenliği zayıflıklarını içerir Açıklar hakkında özet bilgi ve ilgili linkler vardır Belli aralıklarla güncelleştirilir.
Zayıflıklarla ilgili istatistiksel bilgiler mevcuttur.
Şu an itibariyle sadece İngilizce,Fransızca,Japonca, Türkçe ve Kore dillerinde mevcuttur.
8
OWASP - Projeler
Projelere maddi destek sağlar WebGoat Projesi Eğitim projesidir. Kullanıcıların web güvenliği hakkında bilgiler edinmesi için hazırlanmıştır. İçinde güvenlik açıkları içeren dersler bulunmaktadır ve sizlerden bu açıkları bulmanızı ister.
WebScarab Projesi Uygulamaların güvenlik açıklarını bulmakta kullanılır.
Live CD Projesi OWASP projelerini ve dökümanlarını barındıran CD dir.
.NET Projesi DotNet ortamını daha güvenli hale getirecek araçlar bulundurmaktadır. Legal Projesi Yazılım alış verişindeki yasal düzenlemeleri yapmanıza yarayan bir projesidir ……
9
OWASP - Summer of Code 2008
OWASP da bulunan veya ilave edilebilecek projeler geliştirilir.
Proje geliştiricilerine maddi destekler sağlanır.
Projeler, geliştiricilerinin adlarıyla OWASP sitesinden yayınlanır Projeler açık kaynak kodlu olarak yayınlanır.
10
Niye Burdayız?
Dönem dönem web uygulaması güvenliği konulu etkinlikler yapmak istediğimiz, Web güvenliği konulu sohbetleri sevdiğimiz, Farklı güvenlik modellerini canlı olarak duymak istediğimiz, Güvenliğin de açık kaynak koddan ciddi şekilde beslendiğine inandığımız için.
11
Amacımız
Web uygulaması güvenliğine ülkemizde gerekli duyarlılığın gösterilmesini sağlamak Web uygulaması güvenliği konusunda çalışan ve ilgi duyan arkadaşları bir platformda toplamak Güvenlik konulu makaleler, dökümanlar ve projelere yer ve destek sağlamak.
Web uygulamalarının ortaya çıkardığı zararları en aza indirme yolunda çalışmalar yapmak Dünyada yapılan web uygulaması güvenliği konulu çalışmaların takibini sağlamak OWASP Vakfının Türkiye çalışmalarını sürdürmek
12
Projelerimiz
Jarvinen (Web tabanlı ModSecurity log analizi) Owasp-WeBekci (SoC 2008) ve MSALParser CAMMP ( C hroot A pache M ysql M odSecurity P HP) SecureImage (.NET, Java ve PHP API) SecureTomcat (Tomcat J2EE sunucu güvenlik denetimi) Çeviri Projesi (~400 sayfa doküman) Otomatize Sql Entektörleri Analizi (SoC 2008) AntiCsurf (Cross Side Request Forgery için PHP API`si) ApacheLive (Apache sunucusunun Keep-alive parametresi için güvenlik kontrolü yapan bir araçtır) Web Güvenliği Terimler Sözlüğü WIVET (Crawler Boy Ölçer)
13
Hedeflerimiz
Web uygulaması güvenliği projeleri geliştirmek.
Web uygulaması güvenliği alanında yardımcı dökümanlar temin etmek.
Özel ve kamu kuruluşları arası güvenlik konulu çalışmalar yapmak.
Uluslararası konferanslar düzenlemek Açık kaynak kodlu güvelik çalışmalarına destek vermek Üniversitelerimizde uygulamalı web güvenliği farkındalığı dersleri vermek
14
WebGoat
Güvenlik açıklıkları barındıran bir OWASP projesidir (J2EE ile yazılmıştır).
Web uygulama güveliği bilincini arttırmak için hazırlanmış bir eğitim aracıdır. Bu araç sayesinde açıklıkları anlayabilme ve bunları exploit edebilme yeteneği kazandırılmak istenmektedir.
Yüzlerce açıklık içermektedir.
Açıklıkların detaylı çözümleri ve bu açıklıkları çözmek için yardımcı ipuçları barındırır.
Açıklıklar belli kategorilerde sunulmaktadır.
Kolayca yeni açıklıklar ilave edilebilir.
Güvenlik testleri için ideal bir çalışma ortamı sunulur.
Kolay kurulma sahiptir.
15
WebGoat Kurulumu
WebGoat Proje Sayfası: http://www.owasp.org/index.php/Category:OWASP_WebGoat_Project WebGoat-OWASP_Standard-5.2 indirilir. Webgoat.bat çalıştırılır http://localhost/WebGoat/attack Kullanıcı adı: guest Şifre: guest WebScarab Proje Sayfası: http://www.owasp.org/index.php/Category:OWASP_WebScarab_Project webscarab-installer indirilir ve kolay şekilde kurulur.
WebScarab ile HTPP ve HTTPS trafiği izlenir ve araya girme imkanı sağlanır.
WebScarab aracını proxy (vekil sunucu) olarak kullanmak için Firefox Araçlar > Seçenekler > Gelişmiş > Ağ > Ayarlar > Vekil Sunucu Ayarları kısmına “Localhost, port 8008” yazılmalıdır.
WebScarab Proxy > Intercept Requests
16
Path Based Access Control (Demo)
Web uygulamalarında özellikle dizinlerden dosya okuturken karşımıza çıkan bir güvenlik açığıdır.
Erişim sağlanan dizinin dışına çıkma imkanı varsa, bu imkan sayesinde stahmin edilen bazı dosyalara izinsiz erişim sağlanır.
17
Stored XSS
Saldırgan tarafından girilen zararlı kod parçasının kurban tarafından çalıştırılmasından kaynaklanmaktadır.
3. Mesaj açıldıktan sonra, mesaj içindeki client tarafında çalışır.
2. Kullanıcı kendine gelen mesajı açmayı ister.
1.
Bir mesaj formı yardımıyla enjekte edilir.
18
1
Stored XSS (Demo)
3 2 4 1.Bruce olarak sisteme girilir.
2.Bilgileri güncellerken “street” alanında xss açığı olduğu tespit edilir ve zararlı kod parçaçığı yazılır.
3. Yönetici olan Moe sisteme girer.
4. Moe sisteme girdikten sonra kullanıcı profillerine bakarken Bruce`un girmiş olduğu zararlı kod parçacığı browser tarafından çalıştırılır.
19
Sql Injection (Demo)
Sql Injection açığı bulunan bir formdan arka arkaya sql cümleciklerinin çalışma demosu.
20
Dökümanlar
http://ha.ckers.org/xss.html
http://www.owasp.org/?title=XSS_%28Cross_Sit e_Scripting%29_Prevention_Cheat_Sheet http://ferruh.mavituna.com/sql-injection cheatsheet-oku/ http://www.owasp.org/index.php/SQL_Injection _Prevention_Cheat_Sheet
21
Teşekkürler!
www.webguvenligi.org
www.owasp.org
E-posta listesine kayıt olmak için
google:
owasp turkey mail list
22