XSS AÇIĞI NEDİR NASIL BULUNUR??
XSS AÇIĞI NEDİR NASIL BULUNUR??
XSS AÇIĞI
XSS Açığı'nı tamamen olmasa da belli bir bölüme kadar inceleyeceğiz. Neden hepsini değil? Biraz sonra anlayacaksınız.Hedef web sayfasında Html, JavaScript ve bir sunucu dili (Php vs.) kodlarını çalıştırarak kullanıcıya yönelik bir saldırı girişiminde bulunmayı sağlayan bir script açığıdır. Birden fazla çeşidi bulunabilir.
Önemli Not: Bu açığı öğrenmek için web dilleri'nin ne işe yaradığını ve en azından belli bir seviye Html Dili'ni bilmeniz gerekmektedir. Daha sonra hoşunuza giderse kendinizi diğer dillerde de (JavaScript vs.) geliştirebilirsiniz. Ben sizin Html dilini bildiğinizi varsayarak devam ediyorum.
Yaptığımız bu tanım basitleştirilmiş bir genel tanımı ifade eder. Xss Açığı çok büyük bir güvenlik açık türü olmasına karşın aynı zamanda dev şirketlerin bile korktuğu ve önlem almaya çalıştığı bir açık türüdür. Diğer bir büyük güvenlik açığı olan SQL İnjection direkt olarak SQL Komutları kullanıp siteden herhangi bir veriyi çekmeye olanak sağlarken XSS Açığı ile birden fazla çeşitte saldırı yapabilirsiniz. İleri seviye XSS Açığı ile yapacağımız saldırıya en az orta seviye Web Programlama Bilgisi, trojan vs. virüsleri kullanma, olasılık (başarısız olma ihtimali), sosyal mühendislik ve abır da işe girebilir.
Aynı zamana SQL Açığı sadece URL üzerinden bulunup kullanılabilirken XSS Açığı Url Site Kayıt Menüsü, Yorum Bölümü, Arama Kutusu vs. yerlerde bulabilirsiniz.
XSS Açığı'nı SQL Açığı ile bu derece karşılaştırma sebebim bu güvenlik açığının ne kadar büyük, geniş ve tehlikeli olduğunu ayrıca neden tüm açığın bir konuda hemen anlaşılamayacağını anlamanızdır. Çoğu kişi biraz araştırıp bunu kendine zor buluyor ve öğrenmekten vazgeçiyor. Bu yüzden ben sizlere parça parça ve düzeyimize uygun olarak anlatacağım. İleride 2. Düzey vs. konular açınca biraz daha ilerleriz. Şimdi önemli olan mantığı kavramanızdır. Şimdi bölüm bölüm anlatıma geçiyorum.
XSS Açığı Nerelerde Bulunur?
Biraz önce üzerinden geçmiştik zaten. XSS Açığı;
+ Adres Çubuğunda "İd" ve benzeri sonunda eşittir = değeri bulunduran sayfalarda,
Sayfadaki arama kutucuklarında,
+ Ziyaretçi Defteri dediğimiz genelde "Sitemiz Hakkında Görüş, Öneri ve Şikayetleriniz" gibi bildiri alanlarında,
+ Site veya Forum'un kayıt bölümlerinde,
+ Makale, video veya bir düşünce ile ilgili yorum yapma alanlarında bulunabilirler.
Adres Çubuğu üzerinden bir sonuç alamamanız o sitede Xss Açığı olmadığını göstermez. Xss Açığı'nı o sayfadaki arama kutucuğunda bulabileceğiniz gibi farklı bir sayfada da bulabilirsiniz. Bu yüzden XSS Açığı'nı anlamanın en iyi yolu "Acunetix" gibi bir açık tarama programı kullanmanız olacaktır. Az önce belirttiğim gibi XSS Açığı ile birden fazla saldırı yönetmi vardır ve her yöntem her yerde kullanılmaz.

XSS Açığı Nasıl Bulunur?
Xss Açığı'na sahip olan siteleri bulmak için özel olarak bir dork yazma yöntemi yoktur. SQL İnjection Açığı'nda yazdığımız dorkları kullanırız.
Kod:inurl:archive.php?id= inurl:gallery.php?id=
Örnek bir dorktur. Bunu ülkeye göre veya special (.gov, .org) vs. özelleştirmeyi görmüştük. Bir de Xss Açığı için kullanacağımız kelimeyi iyi olarak ayarlayabiliyoruz. Mesela:
Kod:inurl:search.php?id=
Buradaki "search" kelimesi "aramak" anlamına geldiğine göre arama kutusu bulunan sitelerin karşımıza çıkma ihtimali artacaktır. Tabii bu yazdığımız normal dorklardır. "İd" yerine alınabilecek farklı kombinasyonlar da var. İnternette "SQL Dork" diye aratırsanız anlarsınız.
Xss Açığı'nın Var Olduğu Nasıl Anlaşılır?
Xss Açığı'nın var olduğunu anlamanın yolu sayfaya Html veya Js gibi bir kod yazıp çalıştırmak olacaktır. Çalıştırmaktan bahsettiğim örneğin bir arama kutucuğuna gerekli Web Kodlarını yazdıktan sonra veri gönderme butonuna basmaktan bahsediyorum. Xss Açığı sayfada Html,Js,Php gibi kodları yazma ayarının açık bırakılmasından oluşur ve eğer bir Xss Açığı varsa buna göre yazdığımız kodların sonucunu görmemiz gereklidir. Dediğim gibi tarama yapmak uzun olacağı için bir program kullanmanız yararınıza olacaktır.
Bir örnek vereyim
Sitemiz Php ile yapılmış ise;
Kod: <script>alert("ZALBEY")</script>
Sitemiz Asp ile yapılmış ise;
Kod: "><script>alert("ZALBEY")</script>
(JavaScript kodlarıdır. Php ve Asp arasında bir işaret farkı var, buna dikkat edin. Geri kalan kısım "ZALBEY" yazısı hariç kalıp sözcüklerdir.)
Bunun yerine farklı bir kod (Mesela Html) de çalıştırabiliriz, bu bir şeyi değiştirmez. Yukarıdaki kodu uyguladığımızda bir "ZALBEY" şeklinde bir uyarı mesajı alacağız.
Xss Kodları Nasıl Kullanılır?
Mesela bir arama kutusunda Xss Açığı varsa yukarıdaki kodu kutucuğa olduğu gibi yazmalıyım. Sonra da zaten "Arama Yap" vs. bir buton vardır, tıklarım. Eğer bir Xss Açığı varsa uyarıyı almam gerekir. Xss Açığı'nın kullanımı için Adres Çubuklarında bir istisna vardır bunu anlatmalıyım, Xss Açığı'nın en çok çıktığı yerlerden biri Url üzeridir. Yani şu şekilde:Örnek Kod: http://www.ancientscripts.com/search.php?q=<script>alert("ZALBEY")</script>
XSS Açığı ile Kullanılabilecek Saldırı Yöntemleri
1- Yansıyan XSS
Sayfaya hack mesajınızı, resimlerinizi eklersiniz. Tam olarak İndex basamasanız da hackleme mesajınızı rahat bir şekilde belirtebilirsiniz. Aynı zamanda bu işlemi yapması kolaydır da. Lakin bu yaptığınız saldırı hiç bir işe yaramaz çünkü yaptığınız şeyi sadece siz görürsünüz ve siz yazdığınız kodları geri sildikten sonra sanki hiç hacklenmemiş gibi gözükecektir. Yani sadece göstermelik hack işlemidir. Size garip gelebilir ama biz asıl olarak bu yöntemle uğraşacağız nedeni ise diğer yöntemleri anlatmam benim için de zor olacağı gibi sizi de anlamanız şimdilik mümkün olmayacaktır. "Peki bu saldırıyı sadece ben görüyorsam ne işime yarayacak?" demeniz gayet normal. Birincisi Xss Açığı'nın mantığını kavrayacaksınız, kendinizi geliştirmeye devam ettiğiniz sürece çok işinize yarayacak.İkinicisi bu saldırı yöntemi tamamen de gereksiz değil. "Zone Kaydı" alarak siteyi hacklenmiş olarak gösterebilirsiniz. Zone dediğimiz şeyin ne olduğunu biraz sonra öğreneceksiniz ama çok işinize yarayacağı kesin. Bu yöntemle yüzlerce siteyi hackleyip (daha doğrusu hacklenmiş olarak gösterip) paylaşım yapabilirsiniz.
2- Saklı (Kalıcı) XSS
Bu Xss Saldırı Yönteminde saldırganın girdiği zararlı kodlar veritabanına kayıt edilir ve sayfaya giren her kullanıcı bu Xss Saldırısından etkilenir. Tek taşla birden fazla kuş vurmayı hedefleyen tehlikeli bir türdür.3- XSS DOM İnjeksiyonu
XSS Saldırılarının en tehlikeli olanıdır. "DOM" nesneleri aracılığı ile hedef sitenin İndex kodları değiştirilebilir, sayfaya virüs kodları entegre edilebilir.Bunun üzerine daha farklı yöntemler de bulunmaktadır. Bu yöntemler biraz sosyal mühendislik vs. konulara da değindiği için anlatmıyorum. Gerekirse sonra üzerinden geçeriz.
Cookie Nedir?
"Cookie", kelime olarak "Çerez" anlamına gelir. Forum sitelerinde vs. üye girişi yaparken "Beni Hatırla"gibi bir seçenek bulunur. Bu seçenek ile şifre ve kullanıcı adı çerez denilen birimlerde depolanır. Xss Açığı ile kullanıcıların ve yöneticinin çerez bilgileri de
okunabilir.
Kalıcı xss i hiç bir yerde bulamadım nasıl yapıldığına dair anlatabilir misiniz mesela javascript dilinde
YanıtlaSilYazılan bir sitenin cookileri nerededir
O siteyi kuranın kullanıcı bilgileri vs nerede yer alır js den iyi anlıyorsun sadece bakarak bulabilir misinız
Hocamın arkadaşı bir siteden kol saati alacakken şu sitenin kodlarında gezinmeye başlamış ve önüne çıkmış
(Adamın mesleği kod yazmak)
Bunu cevaplarsanız sevinirim özelliklede kalıcı olarak nasıl yaparım şimdiden teşekkürler