SlideShare a Scribd company logo
1 of 15
Download to read offline
“İki tür fakir insan vardır. Birlikte fakir olanlar ve yalnız fakir olanlar. Birincisi gerçek fakir diğerleri
ise şanssız insanlardır.” Jean - Paul Sartre.
Merhabalar Arkadaşlar.
Uzun zaman oldu hiç bir konu paylaşamadım. Reldeki bir çok meseleler yüzünden doğru dürüs bir
Bilgisayarı da açamaz olduk. Şimdi bir fırsat buldum ve yine bir makale yazmak kararına geldim.
Bugünkü konumuz her birimizin ismi duymuş olduğu OWASP daha detay verecek olursak Owasp top
10 security vulnerabilities hakkında olucak.
Nedir OWASP?
Açık Web Uygulaması Güvenliği Projesi veya
OWASP, web uygulaması güvenliğine adanmış
uluslararası bir organizasyondur. Sundukları
materyaller dokümantasyonu, araçları, videoları ve
forumları içerir. Belki de en iyi bilinen projesi OWASP Top 10'dur.
OWASP top 10
OWASP Top 10, web uygulama güvenliği konusundaki güvenlik kaygılarını belirleyen ve en kritik
10 riske odaklanan, düzenli olarak güncellenen bir rapordur. Ve bu Rapor, tüm dünyadan bir güvenlik
uzmanları ekibi tarafından bir araya getirildi. OWASP, ilk 10'a “farkındalık belgesi” olarak atıfta bulunur
ve tüm şirketlerin güvenlik risklerini en aza indirmek ve / veya azaltmak için raporu kendi süreçlerine
dahil etmelerini önerir. Hatta ben söylerim ki, Ethical Hacking sahasında kim kendini geliştirmek vey a
daha iyi bir şeyler öğrenmek istiyorsa ilk önce
OWASP top 10 u incelemeli ve araştırmalı.
Nedenlerini yazımızın ardında daha iyi bir şekilde
anlayacaksınız.
Sağdakı resimde 2017 için raporu görmüş
oluyorsunuz..
Saldırganlar, işinize veya kuruluşunuza zarar vermek için başvurunuz boyunca birçok farklı yolu
kullanabilirler. Bu yolların her biri, dikkatini çekecek kadar ciddi olabilecek veya olmayabilecek bir riski
temsil eder.
Saldırganlar Saldırı Vektörleri Güvenlik Kontroller Teknik etkiler iş etkileri
zaafiyyetleri
Bazen bu yollar bulmak ve sömürmek için basitken ve bazen de çok zordur. Kuruluşunuz için
riski belirlemek üzere, her bir saldırgan, saldırı vektörü ve güvenlik zayıflığı ile ilgili olabilirlik durumunu
değerlendirebilir ve kuruluşunuzdaki teknik ve ticari etkini tahmini ile birleştirebilir.
Risk/ Tehdit nedir?
OWASP Top 10 Güvenlik zaafiyyetleri.
A1:2017
Injection
SQL, NoSQL, OS ve LDAP enjeksiyonu gibi enjeksiyon hataları, güvenilmeyen veriler bir
komut veya sorgunun bir parçası olarak yorumlayıcıya gönderildiğinde ortaya çıkar.
Saldırganın kötü amaçla verileri Yorumlayıcını istenmeyen komutları yerine getirme veya
uygun yetkilendirme olmadan verilere erişme konusunda kandırabilir.
A2:2017-Broken
Authentication
Bozuk bir kimlik doğrulama güvenlik açığı, saldırganın sistemde istediği herhangi bir
hesap üzerinde kontrol kazanmaya çalışmak için veya daha da kötüsü sistem üzerinde
tam kontrol elde etmek için manuel veya otomatik araçlar kullanmasına izin verebilir.
A3:2017-
Sensitive Data
Exposure
Birçok web uygulaması ve API, finansal, sağlık ve kişisel bilgiler gibi hassas verileri düzgün
şekilde korumaz. Saldırganlar, kredi kartı sahtekarlığı, kimlik hırsızlığı veya diğer suçları
işlemek için bu gibi zayıf korunan verileri çalabilir veya değiştirebilir.
A4:2017-XML
External Entities
(XXE)
Çoğu XML ayrıştırıcısı, varsayılan olarak XXE saldırılarına açıktır. Bu nedenle,
uygulamanın bu güvenlik açığına sahip olmamasını sağlama sorumluluğu temel olarak
geliştiriciye aittir.
A1: İnjection
Bir saldırgan web uygulamasına geçersiz veriler gönderdiğinde, uygulamanın tasarlandığı /
programlandığı şeyden farklı bir şey yapması için bir kod enjeksiyonu olur. Muhtemelen bu güvenlik
açığı etrafındaki en yaygın örnek, güvenilmeyen verileri tüketen SQL sorgusudur. OWASP’in
örneklerinden birini aşağıda görebilirsiniz:
String query = "SELECT * FROM accounts WHEREcustID = '" + request.getParameter("id") + "'";
Bu tür saldırılarla web uygulamalara zararlı kodlar yürüterek Veritabanından hassas bilgileri ele
geçirmek mümkündür. Günümüzde bu türlü saldırıları yapan bir çok araç (sqlmap, havij, jsql vb) vardır.
İnceliyoruz....
A5:2017-Broken
Access Control
Kimliği doğrulanmış kullanıcıların yapmasına izin verilen kısıtlamalar genellikle uygun
şekilde yapılmaz. Saldırganlar, diğer kullanıcıların hesaplarına erişmek, hassas dosyaları
görüntülemek, diğer kullanıcıların verilerini değiştirmek, erişim haklarını değiştirmek vb.
Yetkisiz işlevlere veya verilere erişmek için bu kusurlardan yararlanabilir.
A6:2017-
Security
Misconfiguration
A7:2017- Cross-
Site Scripting
(XSS)
Siteler Arası Komut Dosyası Çalıştırma (XSS), birçok web uygulamasını etkileyen yaygın
bir güvenlik açığıdır. XSS, saldırganların kurbanın tarayıcısında, kullanıcı oturumlarını ele
geçirebilecek, web sitelerini tahrif edebilecek veya kullanıcıyı kötü amaçlı sitelere
yönlendirebilen komut dosyaları yürütmesine izin verir.
A8:2017-
Insecure
Deserialization
Güvensiz seriyi kaldırma genellikle uzaktan kod yürütülmesine neden olur. Seri dışı
bırakma kusurları uzaktan kod yürütülmesine neden olmasa bile, tekrarlama saldırıları,
enjeksiyon saldırıları ve ayrıcalık yükselme saldırıları dahil saldırıları gerçekleştirmek için
kullanılabilir.
A9:2017-Using
Components with
Known
Vulnerabilities
Kütüphaneler, çerçeveler ve diğer yazılım modülleri gibi bileşenler, uygulama ile aynı
ayrıcalıklarla çalışır. Korunmasız bir bileşenin kullanılması durumunda, böyle bir saldırı
ciddi veri kaybını veya sunucu ele geçirilmesini kolaylaştırabilir. Bilinen güvenlik açığı
olan bileşenleri kullanan uygulamalar ve API'ler uygulama savunmasını kırabilir ve çeşitli
saldırı ve etkilere neden olabilir.
A10:2017-
Insufficient Logging
& Monitoring
Olay yanıtı ile eksik veya etkisiz entegrasyonla birleştirilmiş yetersiz kayıt ve izleme,
saldırganların sistemleri daha fazla saldırmalarına, kalıcılığını sürdürmelerine, daha fazla
sisteme dönmelerine ve verileri kurcalamalarına, çıkartmalarına veya tahrip etmelerine
olanak sağlar.
Güvenlik yanlış yapılandırması en sık görülen konudur. Bu genellikle güvensiz varsayılan
yapılandırmalar, eksik veya geçici yapılandırmalar, açık bulut depolama, yanlış
yapılandırılmış HTTP başlıkları ve hassas bilgiler içeren ayrıntılı hata mesajlarının bir
sonucudur.
A2: Broken Authentication
Birçok web sitesi kullanıcıların hesaplarına erişmek, bir
satın alma işlemi yapmak, vb. İçin giriş yapmasını gerektirir.
Sık sık, bu bir kullanıcı adı ve şifre kullanılarak yapılır. Bu
bilgiyle, bir site giriş yapmış her ziyaretçiye, kullanıcının
sunucudaki kimliğinin anahtarı olarak hizmet veren benzersiz
bir oturum kimliği atar ve gönderir.
Doğru şekilde korunmazsa, hatalı bir kimlik doğrulama
ve oturum yönetimi şeması bir saldırganın geçerli bir
kullanıcıyı taklit etmesine neden olabilir.
Nasıl yapılır?
Bir ziyaretçi bir web sitesinde oturum açtığında, site
benzersiz bir oturum kimliği oluşturmak için özel bir algoritma
kullanır. Ziyaretçinin cihazı daha sonra bu oturum kimliğini,
oturum açma oturumunun geri kalanında kimliğinin anahtarı olarak kullanır. Bu bilgilerin tümü,
ziyaretçi ve sunucu arasında ileri geri gönderilmelidir. Bu, özellikle başkalarının erişebileceği ve
muhtemelen araya girebileceği bir kamu ağı (kahvehane gibi) üzerinde çalışırken geçerlidir.
Bir saldırganın üstlenebileceği bir başka yaklaşım, bir kullanıcının doğru şifresini tahmin etmek
amacıyla tekrar tekrar ortak şifreleri denedikleri kaba kuvvet saldırısı (Brute force) yapmaktır.
Saldırganların rastgele oturum kimlikleri oluşturması (login) da mümkündür. Örneğin, bir saldırgan
numaralandırılan birkaç meşru oturum kimliğini yakalarsa, bir sonraki meşru oturum kimliğini tahmin
etmek ve siteye sahte bir şekilde erişmek mümkündür.
A3: Sensitive Data Exposure (Hassas veri maruziyyeti)
Bu türlü güvenlik açıkları kriptografik hassaslıkla gizli kalması gereken verilerin, gizliliğin
bozulması ve ya bir şekilde erişebilir olmasıdır. Bazen bazı bu verilen Veritabanında Şifreli olarak
saklanılmaz ve en basit SQL injection saldırılarında kolaylıkla erişile bilir. Başka bir örnek vermek
gerekirse bazen bu tür hassas veriler yanlış izinlendirilmeden (permission, chmod) kaynaklana
bilinmektedir. Örn aşağıdakı görüntüsünde Wordpress siteler için veritabanı bilgilerini taşıyan wp-
config.php.txt her kes tarafından erişilebilir bir durumdadır. Bu da saldırgan için güzen fürsetler
sunmaktadır. Saldırgan bununla uzaktan mysql erişim kura bilir. Ve ya FTP ye yönelik Brute force
saldırısı gerçekleştire bilir.
Diger bir yaygın hatalardan birsi zayıf şifreleme algoritmaları ve ya basit anahtarlar
kullanılmasıdır. İyi bir CPU ya sahip bilgisayarlarla, bir kaç sene önce Güvenli olunarak düşünülen md5
lere karşı sözlük saldırısı yapabilirler. Ve ya daha basit olarak hashkiller.co.uk gibi servisleri kullana
bilirler.
A4:XML external entity –XXE (XML dış varlık)
Bir XML Dış Varlık (XXE) saldırısı (bazen XXE enjeksiyon saldırısı olarak adlandırılır) Sunucu Tarafı
İsteği Sahteciliği'ne (SSRF) dayanır. Bu tür bir saldırı, XML ayrıştırıcılarının yaygın olarak bulunan ancak
nadiren kullanılan bir özelliğini kötüye kullanır. Bir saldırgan XXE kullanarak, Hizmet Reddi'ne (DoS)
neden olabilir, ayrıca yerel ve uzak içerik ve hizmetlere de erişebilir. Bazı durumlarda, XXE bağlantı
noktası taramasını bile etkinleştirebilir ve uzaktan kod yürütülmesine neden olabilir. İki tür XXE saldırısı
vardır: bant içi ve bant dışı (OOB-XXE).
XML (Genişletilebilir İşaretleme Dili) çok popüler bir veri biçimidir. Web servislerinden (XML-
RPC, SOAP, REST) dokümanlara (XML, HTML, DOCX) resim dosyalarına (SVG, EXIF verileri) kadar her
şeyde kullanılır. XML verilerini yorumlamak için, bir uygulamanın bir XML ayrıştırıcısına (ayrıca XML
işlemci olarak da bilinir) ihtiyacı vardır.
Nasıl yapılır?
Aşağıda, XML girişini kabul eden, onu çözümleyen ve sonucu veren basit bir web uygulamasının
bir örneği verilmiştir.
XML'yi öğeleri, nitelikleri ve metni bildirmekten daha fazlası için kullanabilirsiniz. XML belgeleri
belirli bir türde olabilir. Tür tanımını belirterek bu türü belgede beyan edersiniz. XML ayrıştırıcısı, XML
belgesinin belgeyi işlemeden önce bu tür tanımlamaya uyup uymadığını doğrular. İki tür tür tanımı
kullanabilirsiniz: bir XML Şeması Tanımı (XSD) veya Belge Türü Tanımı (DTD). Belge Türü Tanımlarında
XXE açıkları ortaya çıkar. DTD'ler eski olarak kabul edilebilir ancak yine de yaygın olarak
kullanılmaktadır. SGML'den (XML'in atası) elde edilirler.
Aşağıdaki bir XXE payload örneğidir. Dünya kelimesi için bir takma ad olan bar adında bir öğe
içeren foo adı verilen bir Belge Türü Tanımıdır. Bu nedenle, herhangi bir zaman ve &bar;
kullanıldığında, XML ayrıştırıcısı bu varlığın yerine Dünya kelimesini koyar.
Zararsız görünebilir, ancak saldırgan varlıkları varlıklar içindeki varlıkları içine yerleştirerek hizmet
reddine neden olmak için XML varlıkları kullanabilir. Bu saldırıya genellikle Milyar Gülüşmeler saldırısı
denir. XML ayrıştırıcısının belleğini aşırı yüklüyor. Bazı XML ayrıştırıcıları, kullanabilecekleri bellek
miktarını otomatik olarak sınırlandırır.
Saldırganlar, XML kullanılabilirliğini uygulama kullanılabilirliğini azaltmaktan daha fazlası için
kullanabilirler. Bunun nedeni, XML belgesinde XML varlıklarını tanımlamanız gerekmediğindendir.
Aslında, XML varlıkları dış kaynaklar da dahil olmak üzere neredeyse her yerden gelebilir (bu nedenle
XML Dış Varlık adı). Bu, XXE'nin bir tür Sunucu Tarafı İsteği Sahteciliği (SSRF) saldırısı haline geldiği
yerdir.
Bir saldırgan bir URI kullanarak aşağıdaki isteği yapabilir (XML'de sistem tanımlayıcısı olarak bilinir).
XML ayrıştırıcısı harici varlıkları işleyecek şekilde yapılandırılmışsa (varsayılan olarak, birçok popüler
XML ayrıştırıcısı bunu yapacak şekilde yapılandırılmışsa), web sunucusu sistemdeki bir dosyanın
içeriğini, potansiyel olarak hassas veriler içeren döndürür.
Elbette, bir saldırgan sistem dosyaları ile sınırlı değildir. Kaynak kodu dahil diğer yerel dosyaları
kolayca çalabilirler (eğer web uygulamasının yerini ve yapısını biliyorlarsa). Bazı XML ayrıştırıcılarda,
yerel kaynakların içeriğine ek olarak dizin listeleri bile mümkündür.
XML Dış Varlık saldırıları, saldırganın yerel ağdaki dosyalara düzenli HTTP istekleri yapmasına bile
izin verebilir (yani, yalnızca güvenlik duvarının arkasından erişilebilir).
/etc /fstab, XML gibi görünen bazı karakterler içeren bir dosyadır (XML olmasalar bile). Bu, XML
ayrıştırıcısının bu öğeleri denemesine ve ayrıştırmasına, yalnızca geçerli bir XML belgesi olmadığını fark
etmesine neden olur.
Bu nedenle, bu XML Dış Varlığı (XXE) aşağıdaki iki önemli yolla sınırlar.
• XXE yalnızca “geçerli” XML içeren dosyalar veya yanıtlar almak için kullanılabilir
• XXE ikili dosyaları elde etmek için kullanılamaz
Örnek bir saldırı...
Hack.me üzerinde bir XXE lab buldum arkadaşlar.
Bize bir giriş sunmakta ve bizim işimiz Admin panele
Erişmektir.
Şimdi arkadaşlar Bir okuduklarımızı hatırlayalım.
İlk olarak hedef üzerinde Http istekleri görmek ve
Müdahele etmek için Burp yazılımını açalım ve proxy
Ayarlarını yapalım.
Evet arkadaşlar rastgele bir login girelim.
Evet arkadaşlar gördüğünüz gibi rastgele bir deneme sonrası bize incorrect username or password
tarzında bir cevap döndürüyor.
Bakalım login kısmında admin şeklinde bir istek gönderirsek ne cevap dönür.
Evet arkadaşlar gördüğünüz gibi yine aynı cevabı yolladı. Fakar bu defa bir şifreli bir anahtar da kendi
beraberinde getirdi. Bu bir base64 şifreleme. Hemen açalım.
Decode ettikten sora çıkan sonuca bakırsak ana dizinde secret.txt isminde bir dosyanın olduğu
görüyoruz. Hemen inceleyelim.
Evet arkadaşlar işte giriş şifrelerini bize sunuyor...
A5:Broken access control (Kırık Erişim Kontrolü)
Erişim kontrolü, kullanıcıların amaçlanan izinlerinin dışında hareket edemeyecekleri bir
politika uygular. Hatalar, tipik olarak, tüm verilerin yetkisiz bilgilerin ifşa edilmesine,
değiştirilmesine veya imha edilmesine veya bir kullanıcı işlevinin kullanıcının sınırları dışında
kalmasına neden olur.
Ortak erişim denetimi güvenlik açıkları şunlardır:
• Erişim kontrolünü atlamak, URL’yi, dahili uygulama durumunu veya HTML sayfasını
değiştirerek veya yalnızca özel bir API saldırı aracı kullanarak denetler
• Birincil anahtarın başkalarının kullanıcı kaydı ile değiştirilmesine izin vermek, başkasının
hesabını görüntülemek veya düzenlemek için izin vermek.
• Ayrıcalık yükselmesi. Giriş yapmadan kullanıcı olarak hareket etmek veya kullanıcı olarak
giriş yaptığınızda yönetici olarak hareket etmek.
• JSON Web Token (JWT) erişim kontrol belirteciyle yeniden oynatma veya kurcalama veya
ayrıcalıkları yükseltmek için manipüle edilmiş bir çerez veya gizli alan veya JWT geçersiz
kılmayı kötüye kullanma gibi meta veri işleme
• CORS yanlış yapılandırması yetkisiz API erişimine izin veriyor.
• Kimliği doğrulanmamış bir sayfaya kimliği doğrulanmamış bir kullanıcı olarak veya standart
bir kullanıcı olarak ayrıcalıklı sayfalara zorlayın. POST, PUT ve DELETE için eksik erişim
kontrolleriyle API’ye erişim.
Daha iyi örnek verecek olursak exploit sitelerinde user priveladge esclation şeklinde olan tüm
exploitler bu zafiyyetin en basit örneklerinden biridir.
A6:Security Misconfiguration (Yanlış güvenlik yapılandırılması)
Sistem üzerinde çalışan uygulamaların ön tanımlı ayarlarda bırakılması durumunda ortaya çıkan
zafiyetlerdir. Saldırgan bu durumda ön tanımlı ayarları tahmin ederek sisteme erişim sağlar. Bu zafiyet
türünde yanlış yapılandırma da saldırgana fırsat verir.
Çeşitli kusurlara yol açan yanlış sunucu veya web uygulaması yapılandırması:
• Hata ayıklama etkin.
• Yanlış klasör izinleri.
• Varsayılan hesapların veya şifrelerin kullanılması.
• Kurulum / Yapılandırma sayfaları etkin.
Tüm verileriniz zaman içinde yavaşça çalınabilir veya değiştirilebilir.
Mevcut uygulama güvenliği mimarileri varsayılan olarak güvenliği izlemez. Aksine, programcılar
özel veya gizli kaynaklara erişimi önlemek için güvenlik önlemleri almak zorundadır.
Daha iyi bir örnek verecek olursak, yukarıda belirttiğim Wordpressdeki wp-config.php
dosyasının erişebilir olması aslında bu zafiyyete de uygun gelmektedir. Ve ya bir çoklarımızın
karşısına çıkan inurl:/setup.php gibi dorklar da bu zaafı barındılan sistemlerı hedeflemektedirler.
Bu zaaflar daha çok sistem yeni kurulduğunda ve yapılandırıldığıda ortaya çıkar. Gerekli
dosyaların kaldırılmaması sebebiyle saldırganlar bu dosyalara erişebilir, hatta sunucuya ve yine
hatta Hassas verilere bile erişe bilirler.
A7: Cross site scripting (xss)
Günümüzde bolluca bulunan XSS Saldırısı, saldırganın diğer kullanıcıların gördüğü web
sayfalarına zararlı komut dizileri eklemesine olanak tanır. XSS saldırıları, Web Saldırılarının en yaygın
biçimlerinden biridir ve tüm web saldırılarının % 12.75‘ini şaşırtıcı derecede bu saldırı türü oluşturur.
Bazıları bunun zayıf tehdit oluşturduğunu söylese de bu benim en sevdiğim zafiyyetlerden birisidir.
Günümüzde büyük firmalarda bile bu zaafiyyetler bulunmaktdırlar.
XSS, Cross Site Scripting için bir güvenlik kısaltmasıdır. Geçmişteki XSS Saldırılarından etkilenen
göze çarpan siteler; Twitter, Facebook ve Youtube. Son yıllarda, XSS güvenlik açıkları en yaygın şekilde
exploit enjekte edilmiş (sömürülmüş) güvenlik açığı haline geldi. Tüm web güvenlik açıklarının yaklaşık
% 70’i XSS ile ilgilidir.
Nasıl yapılır?
Adım 1 : Saldırganlar, genelde kullanıcı adları, şifreler veya fatura bilgileri gibi kullanıcı verilerini
incelemek amacıyla kötü niyetli bir script dosyası tasarlarlar.
Adım 2 : Saldırganlar, kötü amaçlı scripti bir web sitesine ekler. Komut bir şekilde kullanıcıya iletilir ve
kullanıcı komut eklenmiş siteye eriştiği zaman kullanıcı çerezleri habersizcesine çalınıyor.
Adım 3 : Saldırganlar bundan sonra, kullanıcı verilerini başarıyla toplarken olaydan geri bildirim alırlar.
XSS türleri.
Xss zaafiyyeti reflected, stored, ve DOM based olmak üzre 3 yere ayrılmaktadır.
Reflected xss : Site url lerin sonlarına script kodlarını eklemekle ortaya çıkar. Örnek vericek olursak
http://site.com/index.php?id=<script>alert(‘xss’)</script> siteye script kodları ekledikten sonra bir
alert mesaji dönerse XSS zafiyyeti vardır demektir. Örnek olarak Acer firmasının resmi sitesnde
bulduğum reflected xss açığını göstermek isterim.
Stored xss : bir yorum, veritabanı veya forum gibi hedef sunucularda enjekte edilen ve saklanan komut
dosyasıdır. Daha sonra, legal bir kullanıcı siteyi kullanırken komut dosyası yürütülebilir. Bilgiler bu yolla
çekilebilir. Bu daha çok konu altına yorum eklenen sitelerede (forum ve sair) Guestbook eklentileri olan
sitelerde bulunmaktadır.
Örnek gösterecek olursak
Burada yorum yapma kısmına kendi Xss payloadımızı ekliyoruz ve bu sitenin bu sayfasına dahil olacak
Tüm kullanıcılar, insanlar böyle bir alertle karşı karşıya gelecekler.
Dom based Xss : DOM Tabanlı XSS, bir HTML parçasında değil DOM (Document Object Model)’da
meydana gelen XSS zafiyetidir” denilebilir. Stored ve Reflected XSS saldırılarında, saldırı sonrası dönen
sayfada XSS atağını görmek mümkünken; DOM tabanlı XSS saldırılarında HTML kaynağı ve dönen
yanıt, tamamen aynı olacaktır. Başka bir deyişle, XSS atağı dönen sayfada bulunamaz ve sadece
runtime sırasında ya da sayfanın DOM’u incelenirken gözlemlenebilir.
Örnek verecek olursak....
Bir site düşünelim site.com/page.html ve bu site kaynak kodlarında aşağıdakı şekilde bir kod
barındırıyor.
http://site.com/page.html#<script>alert(1)</script> gibi bir HTTP isteği gönderdiğinizde JavaScript
kodunun çalışması için yeterli olacaktır. Çünkü siz document.write fonksiyonuyla URL’ye ne yazarsanız
sayfa da onu ekrana yazar. Sayfanın kaynağına baktığınızdaysa <script>alert(1)</script> kodunu
görmezsiniz. Bunun sebebiyse olan biten her şeyin DOM’da gerçekleşmesi ve JavaScript kodu
tarafından çalıştırılmasıdır.
Zararlı JavaScript kodu sayfa tarafından çalıştırıldıktan sonra, kullanıcıya ait çerezlerin (cookie)
çalınması veya sayfa davranışının istenildiği gibi değiştirilmesi amacıyla, DOM tabanlı XSS zafiyetinin
basit bir şekilde exploit edilmesi mümkündür.
A8: Insecure Deserialization (Güvensiz Seritleşme)
Bu güvenlik açığı, saldırganların serileştirilmiş nesneleri kullanarak bir yük taşımalarını sağlar.
Bütünlük kontrolleri yerinde olmadığında ve seri hale getirilmiş veriler sterilize edilmediğinde veya
doğrulanmadığında bu zaafiyyet olur.
Serileştirme ve Seri kaldırma Nedir?
Serileştirme, nesneyi depolamak veya onu belleğe, bir
veritabanına veya bir dosyaya aktarmak için bir bayt akışına
dönüştürme işlemidir. Temel amacı, gerektiğinde yeniden
yaratabilmek için nesnenin durumunu kurtarmaktır.
Bunun tersi ise Seri kaldırma adlandırılıyor.
Serileştirme modülünde unserialize() işlevine iletilen güvenilmeyen
veriler, derhal çağrılan bir işlev ifadesiyle (IIFE) serileştirilmiş bir JavaScript Nesnesini geçirerek rasgele
kod yürütme gerçekleştirmek için kullanılabilir.
A9: Using Components With Known Vulnerabilities (Bilinen güvenlik açıkları
olan bileşenleri kullanmak)
Güvenlik açığı bulunan bazı bileşenler (örneğin, çerçeve kütüphaneleri) otomatik araçlarla
tanımlanabilir ve bunlardan yararlanılabilir, böylece tehdit ajanı havuzu hedefli saldırganların ötesinde
kaotik aktörler içerecek şekilde genişletilebilir.
Hemen hemen her uygulamanın bu sorunları vardır çünkü çoğu geliştirme ekibi
bileşenlerinin/kütüphanelerinin güncel olmasını sağlamaya odaklanmaz. Çoğu durumda, geliştiriciler
kullandıkları tüm bileşenleri bile bilmiyor, sürümlerini incelemiyorlar ve ya görmezden geliyorlar.
Bileşen bağımlılıkları işleri daha da kötüleştirir.
Örn bir web scriptinde bir zaaf ortaya çıkar ve paylaşılırsa elbette scripti yapan firma bunu düzenler.
Fakat bazı Adminler bu gibi hüsuslara dikkat etmezler ve zaafiyyet taşıyan bileşenlere karşı hiç bir
önlem almazlar. Zaten Saldırganlar ilk önce versiyona uygun exploitleri araştırıyorlar.
A10 : Insufficient Logging And Monitoring (Yetersiz kayıt ve izleme)
Güvenlik açısından kritik olaylar düzgün bir şekilde kaydedilmediyse ve sistem mevcut olayları
izlemiyorsa, yetersiz günlüğe kaydetme ve izleme güvenlik açığı ortaya çıkar. İnkar edilemez bir
şekilde, bu işlevselliklerin eksikliği, kötü niyetli etkinliklerin tespit edilmesini zorlaştırabilir ve bir
saldırı olduğunda etkili olayı ele almayı etkiler.
Uygulamalar birkaç bileşen kullanır ve genellikle günlükler oluşturulmaz veya bazı diğer
bileşenlerle paylaşılır. Otomatik araçlarla birlikte algılanması zor, çeşitli hata durumları için manuel
analiz esastır.
Bu zaafı kullanarak saldırganlar sisteme daha sıklıkla saldırır, hatta sisteme daha uzun süre
kalabilirler.
Evet arkadaşlar. Bu yazıyi da burda bitirmek istiyorum. Saygılarla....
Mikayıl İlyasov / Cyber-warrior.org - Lojistik

More Related Content

What's hot

OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...
OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...
OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...Lenur Dzhemiliev
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriBGA Cyber Security
 
WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ BGA Cyber Security
 
Secure Code Warrior - CRLF injection
Secure Code Warrior - CRLF injectionSecure Code Warrior - CRLF injection
Secure Code Warrior - CRLF injectionSecure Code Warrior
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9BGA Cyber Security
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziBGA Cyber Security
 
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker imagesRootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker imagesDaniel Garcia (a.k.a cr0hn)
 
SSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiSSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiBGA Cyber Security
 
Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Amazon Web Services Korea
 
Cybersecurity - Mobile Application Security
Cybersecurity - Mobile Application SecurityCybersecurity - Mobile Application Security
Cybersecurity - Mobile Application SecurityEryk Budi Pratama
 
A2 - broken authentication and session management(OWASP thailand chapter Apri...
A2 - broken authentication and session management(OWASP thailand chapter Apri...A2 - broken authentication and session management(OWASP thailand chapter Apri...
A2 - broken authentication and session management(OWASP thailand chapter Apri...Noppadol Songsakaew
 
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated Environments
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated EnvironmentsLessons Learned Deploying Modern Cloud Systems in Highly Regulated Environments
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated EnvironmentsPuma Security, LLC
 
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS 솔루션즈 아키텍트:: AWS Summit Online Korea 2020
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS  솔루션즈 아키텍트::  AWS Summit Online Korea 2020AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS  솔루션즈 아키텍트::  AWS Summit Online Korea 2020
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS 솔루션즈 아키텍트:: AWS Summit Online Korea 2020Amazon Web Services Korea
 

What's hot (20)

OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...
OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...
OWASP Top 10 Vulnerabilities - A5-Broken Access Control; A6-Security Misconfi...
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği Temelleri
 
WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ
 
Secure Code Warrior - CRLF injection
Secure Code Warrior - CRLF injectionSecure Code Warrior - CRLF injection
Secure Code Warrior - CRLF injection
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 7, 8, 9
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem Analizi
 
Kablosuz Ağlarda Adli Analiz
Kablosuz Ağlarda Adli AnalizKablosuz Ağlarda Adli Analiz
Kablosuz Ağlarda Adli Analiz
 
Privileged Access Manager POC Guidelines
Privileged Access Manager  POC GuidelinesPrivileged Access Manager  POC Guidelines
Privileged Access Manager POC Guidelines
 
BGA Pentest Hizmeti
BGA Pentest HizmetiBGA Pentest Hizmeti
BGA Pentest Hizmeti
 
Secure Code Review 101
Secure Code Review 101Secure Code Review 101
Secure Code Review 101
 
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker imagesRootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
RootedCON 2017 - Docker might not be your friend. Trojanizing Docker images
 
SSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiSSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain Tespiti
 
OWASP Top Ten
OWASP Top TenOWASP Top Ten
OWASP Top Ten
 
Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트Security on AWS :: 이경수 솔루션즈아키텍트
Security on AWS :: 이경수 솔루션즈아키텍트
 
Cybersecurity - Mobile Application Security
Cybersecurity - Mobile Application SecurityCybersecurity - Mobile Application Security
Cybersecurity - Mobile Application Security
 
A2 - broken authentication and session management(OWASP thailand chapter Apri...
A2 - broken authentication and session management(OWASP thailand chapter Apri...A2 - broken authentication and session management(OWASP thailand chapter Apri...
A2 - broken authentication and session management(OWASP thailand chapter Apri...
 
AWS Fargate on EKS 실전 사용하기
AWS Fargate on EKS 실전 사용하기AWS Fargate on EKS 실전 사용하기
AWS Fargate on EKS 실전 사용하기
 
20150109 - AWS BlackBelt - IAM (Korean)
20150109 - AWS BlackBelt - IAM (Korean)20150109 - AWS BlackBelt - IAM (Korean)
20150109 - AWS BlackBelt - IAM (Korean)
 
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated Environments
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated EnvironmentsLessons Learned Deploying Modern Cloud Systems in Highly Regulated Environments
Lessons Learned Deploying Modern Cloud Systems in Highly Regulated Environments
 
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS 솔루션즈 아키텍트:: AWS Summit Online Korea 2020
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS  솔루션즈 아키텍트::  AWS Summit Online Korea 2020AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS  솔루션즈 아키텍트::  AWS Summit Online Korea 2020
AWS 환경에서의 위협 탐지 및 사냥 - 신은수, AWS 솔루션즈 아키텍트:: AWS Summit Online Korea 2020
 

Similar to Owasp top 10 inceleme

Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Securitymtimur
 
Hacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıHacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıMustafa
 
Man in-the-browser Saldırılarının Analizi
Man in-the-browser Saldırılarının AnaliziMan in-the-browser Saldırılarının Analizi
Man in-the-browser Saldırılarının AnaliziBGA Cyber Security
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Securitycanyoupwn.me
 
Web Uygulama Güvenliği
Web Uygulama GüvenliğiWeb Uygulama Güvenliği
Web Uygulama GüvenliğiMesut Güngör
 
Siber güvenlik ve SOC
Siber güvenlik ve SOCSiber güvenlik ve SOC
Siber güvenlik ve SOCSerkan Özden
 
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıBilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıRaif Berkay DİNÇEL
 
Web Guvenligi Konferansi - Web Hacking Yontemleri
Web Guvenligi Konferansi - Web Hacking YontemleriWeb Guvenligi Konferansi - Web Hacking Yontemleri
Web Guvenligi Konferansi - Web Hacking YontemleriEPICROUTERS
 
Web Güvenlik Açıkları - Web Application Vulnerabilities
Web Güvenlik Açıkları - Web Application VulnerabilitiesWeb Güvenlik Açıkları - Web Application Vulnerabilities
Web Güvenlik Açıkları - Web Application VulnerabilitiesMehmetKelepce
 
Owasp top ten 2017
Owasp top ten   2017Owasp top ten   2017
Owasp top ten 2017YEmreASLAN
 
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıSüleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıKasım Erkan
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarBGA Cyber Security
 
Information security Bilgi Guvenligi
Information security Bilgi GuvenligiInformation security Bilgi Guvenligi
Information security Bilgi GuvenligiBilal Dursun
 
Ağ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit SistemleriAğ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit Sistemleriosmncht
 
Ağ Tabanlı Saldırı Tespit Sistemleri
Ağ Tabanlı Saldırı Tespit SistemleriAğ Tabanlı Saldırı Tespit Sistemleri
Ağ Tabanlı Saldırı Tespit SistemleriCihat Işık
 

Similar to Owasp top 10 inceleme (20)

Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Security
 
Sql Injection
Sql Injection Sql Injection
Sql Injection
 
Hacking Uygulamaları ve Araçları
Hacking Uygulamaları ve AraçlarıHacking Uygulamaları ve Araçları
Hacking Uygulamaları ve Araçları
 
BTRisk - Siber Olay Tespit ve Mudahale Egitimi
BTRisk - Siber Olay Tespit ve Mudahale EgitimiBTRisk - Siber Olay Tespit ve Mudahale Egitimi
BTRisk - Siber Olay Tespit ve Mudahale Egitimi
 
Internet.ppt_4
Internet.ppt_4Internet.ppt_4
Internet.ppt_4
 
Man in-the-browser Saldırılarının Analizi
Man in-the-browser Saldırılarının AnaliziMan in-the-browser Saldırılarının Analizi
Man in-the-browser Saldırılarının Analizi
 
Web Application Security
Web Application SecurityWeb Application Security
Web Application Security
 
Web Uygulama Güvenliği
Web Uygulama GüvenliğiWeb Uygulama Güvenliği
Web Uygulama Güvenliği
 
Siber güvenlik ve SOC
Siber güvenlik ve SOCSiber güvenlik ve SOC
Siber güvenlik ve SOC
 
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik KonferansıBilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
Bilgi Güvenliği ve Ağ Güvenliği //Fırat Üniversitesi Siber Güvenlik Konferansı
 
Web Guvenligi Konferansi - Web Hacking Yontemleri
Web Guvenligi Konferansi - Web Hacking YontemleriWeb Guvenligi Konferansi - Web Hacking Yontemleri
Web Guvenligi Konferansi - Web Hacking Yontemleri
 
Web Güvenlik Açıkları - Web Application Vulnerabilities
Web Güvenlik Açıkları - Web Application VulnerabilitiesWeb Güvenlik Açıkları - Web Application Vulnerabilities
Web Güvenlik Açıkları - Web Application Vulnerabilities
 
IIS
IISIIS
IIS
 
Owasp top ten 2017
Owasp top ten   2017Owasp top ten   2017
Owasp top ten 2017
 
Cyber Kill Chain
Cyber Kill ChainCyber Kill Chain
Cyber Kill Chain
 
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımıSüleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
Süleyman Özarslan - Cyber kill chain modeli güvenlik denetim yaklaşımı
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka Kapılar
 
Information security Bilgi Guvenligi
Information security Bilgi GuvenligiInformation security Bilgi Guvenligi
Information security Bilgi Guvenligi
 
Ağ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit SistemleriAğ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit Sistemleri
 
Ağ Tabanlı Saldırı Tespit Sistemleri
Ağ Tabanlı Saldırı Tespit SistemleriAğ Tabanlı Saldırı Tespit Sistemleri
Ağ Tabanlı Saldırı Tespit Sistemleri
 

More from Cyber-Warrior.org

More from Cyber-Warrior.org (7)

XSS nedir? Nasıl Ortaya çıkar #Bölüm 1
XSS nedir? Nasıl Ortaya çıkar #Bölüm 1XSS nedir? Nasıl Ortaya çıkar #Bölüm 1
XSS nedir? Nasıl Ortaya çıkar #Bölüm 1
 
Siber istihbrata giriş
Siber istihbrata girişSiber istihbrata giriş
Siber istihbrata giriş
 
Kabuk programlama 2
Kabuk programlama 2Kabuk programlama 2
Kabuk programlama 2
 
Kabuk / bash proglama
Kabuk / bash  proglamaKabuk / bash  proglama
Kabuk / bash proglama
 
One time ped kriptography
One time ped kriptographyOne time ped kriptography
One time ped kriptography
 
Nmap el kitabi
Nmap el kitabiNmap el kitabi
Nmap el kitabi
 
Bilgi güvenliği
Bilgi güvenliğiBilgi güvenliği
Bilgi güvenliği
 

Owasp top 10 inceleme

  • 1. “İki tür fakir insan vardır. Birlikte fakir olanlar ve yalnız fakir olanlar. Birincisi gerçek fakir diğerleri ise şanssız insanlardır.” Jean - Paul Sartre. Merhabalar Arkadaşlar. Uzun zaman oldu hiç bir konu paylaşamadım. Reldeki bir çok meseleler yüzünden doğru dürüs bir Bilgisayarı da açamaz olduk. Şimdi bir fırsat buldum ve yine bir makale yazmak kararına geldim. Bugünkü konumuz her birimizin ismi duymuş olduğu OWASP daha detay verecek olursak Owasp top 10 security vulnerabilities hakkında olucak. Nedir OWASP? Açık Web Uygulaması Güvenliği Projesi veya OWASP, web uygulaması güvenliğine adanmış uluslararası bir organizasyondur. Sundukları materyaller dokümantasyonu, araçları, videoları ve forumları içerir. Belki de en iyi bilinen projesi OWASP Top 10'dur. OWASP top 10 OWASP Top 10, web uygulama güvenliği konusundaki güvenlik kaygılarını belirleyen ve en kritik 10 riske odaklanan, düzenli olarak güncellenen bir rapordur. Ve bu Rapor, tüm dünyadan bir güvenlik uzmanları ekibi tarafından bir araya getirildi. OWASP, ilk 10'a “farkındalık belgesi” olarak atıfta bulunur ve tüm şirketlerin güvenlik risklerini en aza indirmek ve / veya azaltmak için raporu kendi süreçlerine dahil etmelerini önerir. Hatta ben söylerim ki, Ethical Hacking sahasında kim kendini geliştirmek vey a daha iyi bir şeyler öğrenmek istiyorsa ilk önce OWASP top 10 u incelemeli ve araştırmalı. Nedenlerini yazımızın ardında daha iyi bir şekilde anlayacaksınız. Sağdakı resimde 2017 için raporu görmüş oluyorsunuz..
  • 2. Saldırganlar, işinize veya kuruluşunuza zarar vermek için başvurunuz boyunca birçok farklı yolu kullanabilirler. Bu yolların her biri, dikkatini çekecek kadar ciddi olabilecek veya olmayabilecek bir riski temsil eder. Saldırganlar Saldırı Vektörleri Güvenlik Kontroller Teknik etkiler iş etkileri zaafiyyetleri Bazen bu yollar bulmak ve sömürmek için basitken ve bazen de çok zordur. Kuruluşunuz için riski belirlemek üzere, her bir saldırgan, saldırı vektörü ve güvenlik zayıflığı ile ilgili olabilirlik durumunu değerlendirebilir ve kuruluşunuzdaki teknik ve ticari etkini tahmini ile birleştirebilir. Risk/ Tehdit nedir? OWASP Top 10 Güvenlik zaafiyyetleri. A1:2017 Injection SQL, NoSQL, OS ve LDAP enjeksiyonu gibi enjeksiyon hataları, güvenilmeyen veriler bir komut veya sorgunun bir parçası olarak yorumlayıcıya gönderildiğinde ortaya çıkar. Saldırganın kötü amaçla verileri Yorumlayıcını istenmeyen komutları yerine getirme veya uygun yetkilendirme olmadan verilere erişme konusunda kandırabilir. A2:2017-Broken Authentication Bozuk bir kimlik doğrulama güvenlik açığı, saldırganın sistemde istediği herhangi bir hesap üzerinde kontrol kazanmaya çalışmak için veya daha da kötüsü sistem üzerinde tam kontrol elde etmek için manuel veya otomatik araçlar kullanmasına izin verebilir. A3:2017- Sensitive Data Exposure Birçok web uygulaması ve API, finansal, sağlık ve kişisel bilgiler gibi hassas verileri düzgün şekilde korumaz. Saldırganlar, kredi kartı sahtekarlığı, kimlik hırsızlığı veya diğer suçları işlemek için bu gibi zayıf korunan verileri çalabilir veya değiştirebilir. A4:2017-XML External Entities (XXE) Çoğu XML ayrıştırıcısı, varsayılan olarak XXE saldırılarına açıktır. Bu nedenle, uygulamanın bu güvenlik açığına sahip olmamasını sağlama sorumluluğu temel olarak geliştiriciye aittir.
  • 3. A1: İnjection Bir saldırgan web uygulamasına geçersiz veriler gönderdiğinde, uygulamanın tasarlandığı / programlandığı şeyden farklı bir şey yapması için bir kod enjeksiyonu olur. Muhtemelen bu güvenlik açığı etrafındaki en yaygın örnek, güvenilmeyen verileri tüketen SQL sorgusudur. OWASP’in örneklerinden birini aşağıda görebilirsiniz: String query = "SELECT * FROM accounts WHEREcustID = '" + request.getParameter("id") + "'"; Bu tür saldırılarla web uygulamalara zararlı kodlar yürüterek Veritabanından hassas bilgileri ele geçirmek mümkündür. Günümüzde bu türlü saldırıları yapan bir çok araç (sqlmap, havij, jsql vb) vardır. İnceliyoruz.... A5:2017-Broken Access Control Kimliği doğrulanmış kullanıcıların yapmasına izin verilen kısıtlamalar genellikle uygun şekilde yapılmaz. Saldırganlar, diğer kullanıcıların hesaplarına erişmek, hassas dosyaları görüntülemek, diğer kullanıcıların verilerini değiştirmek, erişim haklarını değiştirmek vb. Yetkisiz işlevlere veya verilere erişmek için bu kusurlardan yararlanabilir. A6:2017- Security Misconfiguration A7:2017- Cross- Site Scripting (XSS) Siteler Arası Komut Dosyası Çalıştırma (XSS), birçok web uygulamasını etkileyen yaygın bir güvenlik açığıdır. XSS, saldırganların kurbanın tarayıcısında, kullanıcı oturumlarını ele geçirebilecek, web sitelerini tahrif edebilecek veya kullanıcıyı kötü amaçlı sitelere yönlendirebilen komut dosyaları yürütmesine izin verir. A8:2017- Insecure Deserialization Güvensiz seriyi kaldırma genellikle uzaktan kod yürütülmesine neden olur. Seri dışı bırakma kusurları uzaktan kod yürütülmesine neden olmasa bile, tekrarlama saldırıları, enjeksiyon saldırıları ve ayrıcalık yükselme saldırıları dahil saldırıları gerçekleştirmek için kullanılabilir. A9:2017-Using Components with Known Vulnerabilities Kütüphaneler, çerçeveler ve diğer yazılım modülleri gibi bileşenler, uygulama ile aynı ayrıcalıklarla çalışır. Korunmasız bir bileşenin kullanılması durumunda, böyle bir saldırı ciddi veri kaybını veya sunucu ele geçirilmesini kolaylaştırabilir. Bilinen güvenlik açığı olan bileşenleri kullanan uygulamalar ve API'ler uygulama savunmasını kırabilir ve çeşitli saldırı ve etkilere neden olabilir. A10:2017- Insufficient Logging & Monitoring Olay yanıtı ile eksik veya etkisiz entegrasyonla birleştirilmiş yetersiz kayıt ve izleme, saldırganların sistemleri daha fazla saldırmalarına, kalıcılığını sürdürmelerine, daha fazla sisteme dönmelerine ve verileri kurcalamalarına, çıkartmalarına veya tahrip etmelerine olanak sağlar. Güvenlik yanlış yapılandırması en sık görülen konudur. Bu genellikle güvensiz varsayılan yapılandırmalar, eksik veya geçici yapılandırmalar, açık bulut depolama, yanlış yapılandırılmış HTTP başlıkları ve hassas bilgiler içeren ayrıntılı hata mesajlarının bir sonucudur.
  • 4. A2: Broken Authentication Birçok web sitesi kullanıcıların hesaplarına erişmek, bir satın alma işlemi yapmak, vb. İçin giriş yapmasını gerektirir. Sık sık, bu bir kullanıcı adı ve şifre kullanılarak yapılır. Bu bilgiyle, bir site giriş yapmış her ziyaretçiye, kullanıcının sunucudaki kimliğinin anahtarı olarak hizmet veren benzersiz bir oturum kimliği atar ve gönderir. Doğru şekilde korunmazsa, hatalı bir kimlik doğrulama ve oturum yönetimi şeması bir saldırganın geçerli bir kullanıcıyı taklit etmesine neden olabilir. Nasıl yapılır? Bir ziyaretçi bir web sitesinde oturum açtığında, site benzersiz bir oturum kimliği oluşturmak için özel bir algoritma kullanır. Ziyaretçinin cihazı daha sonra bu oturum kimliğini, oturum açma oturumunun geri kalanında kimliğinin anahtarı olarak kullanır. Bu bilgilerin tümü, ziyaretçi ve sunucu arasında ileri geri gönderilmelidir. Bu, özellikle başkalarının erişebileceği ve muhtemelen araya girebileceği bir kamu ağı (kahvehane gibi) üzerinde çalışırken geçerlidir. Bir saldırganın üstlenebileceği bir başka yaklaşım, bir kullanıcının doğru şifresini tahmin etmek amacıyla tekrar tekrar ortak şifreleri denedikleri kaba kuvvet saldırısı (Brute force) yapmaktır. Saldırganların rastgele oturum kimlikleri oluşturması (login) da mümkündür. Örneğin, bir saldırgan numaralandırılan birkaç meşru oturum kimliğini yakalarsa, bir sonraki meşru oturum kimliğini tahmin etmek ve siteye sahte bir şekilde erişmek mümkündür. A3: Sensitive Data Exposure (Hassas veri maruziyyeti) Bu türlü güvenlik açıkları kriptografik hassaslıkla gizli kalması gereken verilerin, gizliliğin bozulması ve ya bir şekilde erişebilir olmasıdır. Bazen bazı bu verilen Veritabanında Şifreli olarak saklanılmaz ve en basit SQL injection saldırılarında kolaylıkla erişile bilir. Başka bir örnek vermek gerekirse bazen bu tür hassas veriler yanlış izinlendirilmeden (permission, chmod) kaynaklana bilinmektedir. Örn aşağıdakı görüntüsünde Wordpress siteler için veritabanı bilgilerini taşıyan wp-
  • 5. config.php.txt her kes tarafından erişilebilir bir durumdadır. Bu da saldırgan için güzen fürsetler sunmaktadır. Saldırgan bununla uzaktan mysql erişim kura bilir. Ve ya FTP ye yönelik Brute force saldırısı gerçekleştire bilir. Diger bir yaygın hatalardan birsi zayıf şifreleme algoritmaları ve ya basit anahtarlar kullanılmasıdır. İyi bir CPU ya sahip bilgisayarlarla, bir kaç sene önce Güvenli olunarak düşünülen md5 lere karşı sözlük saldırısı yapabilirler. Ve ya daha basit olarak hashkiller.co.uk gibi servisleri kullana bilirler. A4:XML external entity –XXE (XML dış varlık) Bir XML Dış Varlık (XXE) saldırısı (bazen XXE enjeksiyon saldırısı olarak adlandırılır) Sunucu Tarafı İsteği Sahteciliği'ne (SSRF) dayanır. Bu tür bir saldırı, XML ayrıştırıcılarının yaygın olarak bulunan ancak nadiren kullanılan bir özelliğini kötüye kullanır. Bir saldırgan XXE kullanarak, Hizmet Reddi'ne (DoS) neden olabilir, ayrıca yerel ve uzak içerik ve hizmetlere de erişebilir. Bazı durumlarda, XXE bağlantı noktası taramasını bile etkinleştirebilir ve uzaktan kod yürütülmesine neden olabilir. İki tür XXE saldırısı vardır: bant içi ve bant dışı (OOB-XXE). XML (Genişletilebilir İşaretleme Dili) çok popüler bir veri biçimidir. Web servislerinden (XML- RPC, SOAP, REST) dokümanlara (XML, HTML, DOCX) resim dosyalarına (SVG, EXIF verileri) kadar her şeyde kullanılır. XML verilerini yorumlamak için, bir uygulamanın bir XML ayrıştırıcısına (ayrıca XML işlemci olarak da bilinir) ihtiyacı vardır. Nasıl yapılır? Aşağıda, XML girişini kabul eden, onu çözümleyen ve sonucu veren basit bir web uygulamasının bir örneği verilmiştir.
  • 6. XML'yi öğeleri, nitelikleri ve metni bildirmekten daha fazlası için kullanabilirsiniz. XML belgeleri belirli bir türde olabilir. Tür tanımını belirterek bu türü belgede beyan edersiniz. XML ayrıştırıcısı, XML belgesinin belgeyi işlemeden önce bu tür tanımlamaya uyup uymadığını doğrular. İki tür tür tanımı kullanabilirsiniz: bir XML Şeması Tanımı (XSD) veya Belge Türü Tanımı (DTD). Belge Türü Tanımlarında XXE açıkları ortaya çıkar. DTD'ler eski olarak kabul edilebilir ancak yine de yaygın olarak kullanılmaktadır. SGML'den (XML'in atası) elde edilirler. Aşağıdaki bir XXE payload örneğidir. Dünya kelimesi için bir takma ad olan bar adında bir öğe içeren foo adı verilen bir Belge Türü Tanımıdır. Bu nedenle, herhangi bir zaman ve &bar; kullanıldığında, XML ayrıştırıcısı bu varlığın yerine Dünya kelimesini koyar. Zararsız görünebilir, ancak saldırgan varlıkları varlıklar içindeki varlıkları içine yerleştirerek hizmet reddine neden olmak için XML varlıkları kullanabilir. Bu saldırıya genellikle Milyar Gülüşmeler saldırısı denir. XML ayrıştırıcısının belleğini aşırı yüklüyor. Bazı XML ayrıştırıcıları, kullanabilecekleri bellek miktarını otomatik olarak sınırlandırır. Saldırganlar, XML kullanılabilirliğini uygulama kullanılabilirliğini azaltmaktan daha fazlası için kullanabilirler. Bunun nedeni, XML belgesinde XML varlıklarını tanımlamanız gerekmediğindendir.
  • 7. Aslında, XML varlıkları dış kaynaklar da dahil olmak üzere neredeyse her yerden gelebilir (bu nedenle XML Dış Varlık adı). Bu, XXE'nin bir tür Sunucu Tarafı İsteği Sahteciliği (SSRF) saldırısı haline geldiği yerdir. Bir saldırgan bir URI kullanarak aşağıdaki isteği yapabilir (XML'de sistem tanımlayıcısı olarak bilinir). XML ayrıştırıcısı harici varlıkları işleyecek şekilde yapılandırılmışsa (varsayılan olarak, birçok popüler XML ayrıştırıcısı bunu yapacak şekilde yapılandırılmışsa), web sunucusu sistemdeki bir dosyanın içeriğini, potansiyel olarak hassas veriler içeren döndürür. Elbette, bir saldırgan sistem dosyaları ile sınırlı değildir. Kaynak kodu dahil diğer yerel dosyaları kolayca çalabilirler (eğer web uygulamasının yerini ve yapısını biliyorlarsa). Bazı XML ayrıştırıcılarda, yerel kaynakların içeriğine ek olarak dizin listeleri bile mümkündür. XML Dış Varlık saldırıları, saldırganın yerel ağdaki dosyalara düzenli HTTP istekleri yapmasına bile izin verebilir (yani, yalnızca güvenlik duvarının arkasından erişilebilir).
  • 8. /etc /fstab, XML gibi görünen bazı karakterler içeren bir dosyadır (XML olmasalar bile). Bu, XML ayrıştırıcısının bu öğeleri denemesine ve ayrıştırmasına, yalnızca geçerli bir XML belgesi olmadığını fark etmesine neden olur. Bu nedenle, bu XML Dış Varlığı (XXE) aşağıdaki iki önemli yolla sınırlar. • XXE yalnızca “geçerli” XML içeren dosyalar veya yanıtlar almak için kullanılabilir • XXE ikili dosyaları elde etmek için kullanılamaz Örnek bir saldırı... Hack.me üzerinde bir XXE lab buldum arkadaşlar. Bize bir giriş sunmakta ve bizim işimiz Admin panele Erişmektir. Şimdi arkadaşlar Bir okuduklarımızı hatırlayalım. İlk olarak hedef üzerinde Http istekleri görmek ve Müdahele etmek için Burp yazılımını açalım ve proxy Ayarlarını yapalım.
  • 9. Evet arkadaşlar rastgele bir login girelim. Evet arkadaşlar gördüğünüz gibi rastgele bir deneme sonrası bize incorrect username or password tarzında bir cevap döndürüyor. Bakalım login kısmında admin şeklinde bir istek gönderirsek ne cevap dönür. Evet arkadaşlar gördüğünüz gibi yine aynı cevabı yolladı. Fakar bu defa bir şifreli bir anahtar da kendi beraberinde getirdi. Bu bir base64 şifreleme. Hemen açalım.
  • 10. Decode ettikten sora çıkan sonuca bakırsak ana dizinde secret.txt isminde bir dosyanın olduğu görüyoruz. Hemen inceleyelim. Evet arkadaşlar işte giriş şifrelerini bize sunuyor... A5:Broken access control (Kırık Erişim Kontrolü) Erişim kontrolü, kullanıcıların amaçlanan izinlerinin dışında hareket edemeyecekleri bir politika uygular. Hatalar, tipik olarak, tüm verilerin yetkisiz bilgilerin ifşa edilmesine, değiştirilmesine veya imha edilmesine veya bir kullanıcı işlevinin kullanıcının sınırları dışında kalmasına neden olur. Ortak erişim denetimi güvenlik açıkları şunlardır: • Erişim kontrolünü atlamak, URL’yi, dahili uygulama durumunu veya HTML sayfasını değiştirerek veya yalnızca özel bir API saldırı aracı kullanarak denetler • Birincil anahtarın başkalarının kullanıcı kaydı ile değiştirilmesine izin vermek, başkasının hesabını görüntülemek veya düzenlemek için izin vermek. • Ayrıcalık yükselmesi. Giriş yapmadan kullanıcı olarak hareket etmek veya kullanıcı olarak giriş yaptığınızda yönetici olarak hareket etmek. • JSON Web Token (JWT) erişim kontrol belirteciyle yeniden oynatma veya kurcalama veya ayrıcalıkları yükseltmek için manipüle edilmiş bir çerez veya gizli alan veya JWT geçersiz kılmayı kötüye kullanma gibi meta veri işleme • CORS yanlış yapılandırması yetkisiz API erişimine izin veriyor. • Kimliği doğrulanmamış bir sayfaya kimliği doğrulanmamış bir kullanıcı olarak veya standart bir kullanıcı olarak ayrıcalıklı sayfalara zorlayın. POST, PUT ve DELETE için eksik erişim kontrolleriyle API’ye erişim. Daha iyi örnek verecek olursak exploit sitelerinde user priveladge esclation şeklinde olan tüm exploitler bu zafiyyetin en basit örneklerinden biridir. A6:Security Misconfiguration (Yanlış güvenlik yapılandırılması) Sistem üzerinde çalışan uygulamaların ön tanımlı ayarlarda bırakılması durumunda ortaya çıkan zafiyetlerdir. Saldırgan bu durumda ön tanımlı ayarları tahmin ederek sisteme erişim sağlar. Bu zafiyet türünde yanlış yapılandırma da saldırgana fırsat verir.
  • 11. Çeşitli kusurlara yol açan yanlış sunucu veya web uygulaması yapılandırması: • Hata ayıklama etkin. • Yanlış klasör izinleri. • Varsayılan hesapların veya şifrelerin kullanılması. • Kurulum / Yapılandırma sayfaları etkin. Tüm verileriniz zaman içinde yavaşça çalınabilir veya değiştirilebilir. Mevcut uygulama güvenliği mimarileri varsayılan olarak güvenliği izlemez. Aksine, programcılar özel veya gizli kaynaklara erişimi önlemek için güvenlik önlemleri almak zorundadır. Daha iyi bir örnek verecek olursak, yukarıda belirttiğim Wordpressdeki wp-config.php dosyasının erişebilir olması aslında bu zafiyyete de uygun gelmektedir. Ve ya bir çoklarımızın karşısına çıkan inurl:/setup.php gibi dorklar da bu zaafı barındılan sistemlerı hedeflemektedirler. Bu zaaflar daha çok sistem yeni kurulduğunda ve yapılandırıldığıda ortaya çıkar. Gerekli dosyaların kaldırılmaması sebebiyle saldırganlar bu dosyalara erişebilir, hatta sunucuya ve yine hatta Hassas verilere bile erişe bilirler. A7: Cross site scripting (xss) Günümüzde bolluca bulunan XSS Saldırısı, saldırganın diğer kullanıcıların gördüğü web sayfalarına zararlı komut dizileri eklemesine olanak tanır. XSS saldırıları, Web Saldırılarının en yaygın biçimlerinden biridir ve tüm web saldırılarının % 12.75‘ini şaşırtıcı derecede bu saldırı türü oluşturur. Bazıları bunun zayıf tehdit oluşturduğunu söylese de bu benim en sevdiğim zafiyyetlerden birisidir. Günümüzde büyük firmalarda bile bu zaafiyyetler bulunmaktdırlar. XSS, Cross Site Scripting için bir güvenlik kısaltmasıdır. Geçmişteki XSS Saldırılarından etkilenen göze çarpan siteler; Twitter, Facebook ve Youtube. Son yıllarda, XSS güvenlik açıkları en yaygın şekilde exploit enjekte edilmiş (sömürülmüş) güvenlik açığı haline geldi. Tüm web güvenlik açıklarının yaklaşık % 70’i XSS ile ilgilidir. Nasıl yapılır? Adım 1 : Saldırganlar, genelde kullanıcı adları, şifreler veya fatura bilgileri gibi kullanıcı verilerini incelemek amacıyla kötü niyetli bir script dosyası tasarlarlar. Adım 2 : Saldırganlar, kötü amaçlı scripti bir web sitesine ekler. Komut bir şekilde kullanıcıya iletilir ve kullanıcı komut eklenmiş siteye eriştiği zaman kullanıcı çerezleri habersizcesine çalınıyor. Adım 3 : Saldırganlar bundan sonra, kullanıcı verilerini başarıyla toplarken olaydan geri bildirim alırlar.
  • 12. XSS türleri. Xss zaafiyyeti reflected, stored, ve DOM based olmak üzre 3 yere ayrılmaktadır. Reflected xss : Site url lerin sonlarına script kodlarını eklemekle ortaya çıkar. Örnek vericek olursak http://site.com/index.php?id=<script>alert(‘xss’)</script> siteye script kodları ekledikten sonra bir alert mesaji dönerse XSS zafiyyeti vardır demektir. Örnek olarak Acer firmasının resmi sitesnde bulduğum reflected xss açığını göstermek isterim.
  • 13. Stored xss : bir yorum, veritabanı veya forum gibi hedef sunucularda enjekte edilen ve saklanan komut dosyasıdır. Daha sonra, legal bir kullanıcı siteyi kullanırken komut dosyası yürütülebilir. Bilgiler bu yolla çekilebilir. Bu daha çok konu altına yorum eklenen sitelerede (forum ve sair) Guestbook eklentileri olan sitelerde bulunmaktadır. Örnek gösterecek olursak Burada yorum yapma kısmına kendi Xss payloadımızı ekliyoruz ve bu sitenin bu sayfasına dahil olacak Tüm kullanıcılar, insanlar böyle bir alertle karşı karşıya gelecekler. Dom based Xss : DOM Tabanlı XSS, bir HTML parçasında değil DOM (Document Object Model)’da meydana gelen XSS zafiyetidir” denilebilir. Stored ve Reflected XSS saldırılarında, saldırı sonrası dönen sayfada XSS atağını görmek mümkünken; DOM tabanlı XSS saldırılarında HTML kaynağı ve dönen yanıt, tamamen aynı olacaktır. Başka bir deyişle, XSS atağı dönen sayfada bulunamaz ve sadece runtime sırasında ya da sayfanın DOM’u incelenirken gözlemlenebilir. Örnek verecek olursak.... Bir site düşünelim site.com/page.html ve bu site kaynak kodlarında aşağıdakı şekilde bir kod barındırıyor. http://site.com/page.html#<script>alert(1)</script> gibi bir HTTP isteği gönderdiğinizde JavaScript kodunun çalışması için yeterli olacaktır. Çünkü siz document.write fonksiyonuyla URL’ye ne yazarsanız sayfa da onu ekrana yazar. Sayfanın kaynağına baktığınızdaysa <script>alert(1)</script> kodunu görmezsiniz. Bunun sebebiyse olan biten her şeyin DOM’da gerçekleşmesi ve JavaScript kodu tarafından çalıştırılmasıdır. Zararlı JavaScript kodu sayfa tarafından çalıştırıldıktan sonra, kullanıcıya ait çerezlerin (cookie) çalınması veya sayfa davranışının istenildiği gibi değiştirilmesi amacıyla, DOM tabanlı XSS zafiyetinin basit bir şekilde exploit edilmesi mümkündür.
  • 14. A8: Insecure Deserialization (Güvensiz Seritleşme) Bu güvenlik açığı, saldırganların serileştirilmiş nesneleri kullanarak bir yük taşımalarını sağlar. Bütünlük kontrolleri yerinde olmadığında ve seri hale getirilmiş veriler sterilize edilmediğinde veya doğrulanmadığında bu zaafiyyet olur. Serileştirme ve Seri kaldırma Nedir? Serileştirme, nesneyi depolamak veya onu belleğe, bir veritabanına veya bir dosyaya aktarmak için bir bayt akışına dönüştürme işlemidir. Temel amacı, gerektiğinde yeniden yaratabilmek için nesnenin durumunu kurtarmaktır. Bunun tersi ise Seri kaldırma adlandırılıyor. Serileştirme modülünde unserialize() işlevine iletilen güvenilmeyen veriler, derhal çağrılan bir işlev ifadesiyle (IIFE) serileştirilmiş bir JavaScript Nesnesini geçirerek rasgele kod yürütme gerçekleştirmek için kullanılabilir. A9: Using Components With Known Vulnerabilities (Bilinen güvenlik açıkları olan bileşenleri kullanmak) Güvenlik açığı bulunan bazı bileşenler (örneğin, çerçeve kütüphaneleri) otomatik araçlarla tanımlanabilir ve bunlardan yararlanılabilir, böylece tehdit ajanı havuzu hedefli saldırganların ötesinde kaotik aktörler içerecek şekilde genişletilebilir. Hemen hemen her uygulamanın bu sorunları vardır çünkü çoğu geliştirme ekibi bileşenlerinin/kütüphanelerinin güncel olmasını sağlamaya odaklanmaz. Çoğu durumda, geliştiriciler kullandıkları tüm bileşenleri bile bilmiyor, sürümlerini incelemiyorlar ve ya görmezden geliyorlar. Bileşen bağımlılıkları işleri daha da kötüleştirir.
  • 15. Örn bir web scriptinde bir zaaf ortaya çıkar ve paylaşılırsa elbette scripti yapan firma bunu düzenler. Fakat bazı Adminler bu gibi hüsuslara dikkat etmezler ve zaafiyyet taşıyan bileşenlere karşı hiç bir önlem almazlar. Zaten Saldırganlar ilk önce versiyona uygun exploitleri araştırıyorlar. A10 : Insufficient Logging And Monitoring (Yetersiz kayıt ve izleme) Güvenlik açısından kritik olaylar düzgün bir şekilde kaydedilmediyse ve sistem mevcut olayları izlemiyorsa, yetersiz günlüğe kaydetme ve izleme güvenlik açığı ortaya çıkar. İnkar edilemez bir şekilde, bu işlevselliklerin eksikliği, kötü niyetli etkinliklerin tespit edilmesini zorlaştırabilir ve bir saldırı olduğunda etkili olayı ele almayı etkiler. Uygulamalar birkaç bileşen kullanır ve genellikle günlükler oluşturulmaz veya bazı diğer bileşenlerle paylaşılır. Otomatik araçlarla birlikte algılanması zor, çeşitli hata durumları için manuel analiz esastır. Bu zaafı kullanarak saldırganlar sisteme daha sıklıkla saldırır, hatta sisteme daha uzun süre kalabilirler. Evet arkadaşlar. Bu yazıyi da burda bitirmek istiyorum. Saygılarla.... Mikayıl İlyasov / Cyber-warrior.org - Lojistik