Herkese merhaba
değerli Türk Hack Team
üyeleri bu konumda sizlere Google dorking makinası
nasıl çözülür onu anlatacağım
1.Görev ile başlayalım
Google, tartışmasız en ünlü “Arama Motorları” örneğidir, yani Ask Jeeves'i kim hatırlıyor? değerli Türk Hack Team
üyeleri bu konumda sizlere Google dorking makinası
nasıl çözülür onu anlatacağım
1.Görev ile başlayalım
Şimdi, bu "Arama Motorlarının" nasıl çalıştığını açıklamak biraz küçümseyici olabilir, ancak sahne arkasında gördüğümüzden çok daha fazlası var. Daha da önemlisi, bir kelime listesinin bulamayacağı her türlü şeyi bulmak için bunu avantajımıza kullanabiliriz. Bir bütün olarak araştırmak - özellikle Siber Güvenlik bağlamında, bir pentester olarak yaptığınız hemen hemen her şeyi kapsar. MuirlandOracle , nasıl araştırma yapılacağına ve ondan tam olarak hangi bilgileri elde edebileceğinize yönelik tutumları öğrenmek için harika bir oda yarattı .
Google gibi "Arama Motorları" çok büyük dizin oluşturuculardır - özellikle World Wide Web'e yayılmış içerik dizinleyicileridir.
İnternette gezinmeyle ilgili bu temel unsurlar, World Wide Web'de bu içeriği aramak için "Tarayıcılar" veya "Örümcekler" kullanır, bunu bir sonraki görevde tartışacağım.
çözüm:
ilk olarak arkadaşlar gördüğünüz gibi bize bir metin verilmiş bu metni okuyup makinanın sorduğu sorulara cevap vereceğiz (okuduğunuz bir kitabın hakkında verilen soruları cevaplıyormuşuz gibi düşünün)
2.Görev
Tarayıcılar nedir ve nasıl çalışırlar?
Bu tarayıcılar, içeriği çeşitli yollarla keşfeder. Biri, tarayıcı tarafından bir URL'nin ziyaret edildiği ve web sitesinin içerik türüyle ilgili bilgilerin arama motoruna döndürüldüğü saf keşif yoluyladır. Aslında, modern tarayıcıların kazıdığı pek çok bilgi var - ancak bunun nasıl kullanıldığını daha sonra tartışacağız. Tarayıcıların içeriği keşfetmek için kullandığı başka bir yöntem, daha önce taranan web sitelerinden bulunan tüm URL'leri takip etmektir. Elinden gelen her şeyi geçmek/yaymak isteyeceği anlamında bir virüse çok benzer.
Bazı Şeyleri Görselleştirelim...
Aşağıdaki şema, bu web tarayıcılarının nasıl çalıştığının üst düzey bir özetidir. Bir web gezgini mywebsite.com gibi bir etki alanı keşfettiğinde , anahtar sözcükleri ve diğer çeşitli bilgileri arayarak etki alanının tüm içeriğini dizine ekler - ancak bu çeşitli bilgileri daha sonra tartışacağım.
Yukarıdaki şemada " mywebsite.com " "Elma" "Muz" ve "Armut" anahtar kelimelerine sahip olacak şekilde kazınmıştır. Bu anahtar kelimeler tarayıcı tarafından bir sözlükte saklanır ve daha sonra bunları arama motoruna yani Google'a döndürür. Bu ısrar nedeniyle, Google artık “ mywebsite.com ” alan adının “Apple”, “Muz” ve “Armut” anahtar kelimelerine sahip olduğunu biliyor. Yalnızca bir web sitesi tarandığından, bir kullanıcı “Apple” için arama yaparsa...“ mywebsite.com ” görünür. Bu, kullanıcının "Muz" araması yapması durumunda aynı davranışa neden olur. Tarayıcıdan dizine eklenen içerikler, etki alanını “Muz” olarak bildirdiği için, kullanıcıya gösterilecektir.
Aşağıda gösterildiği gibi, bir kullanıcı "Armut" arama motoruna bir sorgu gönderir. Arama motoru yalnızca "Armut" anahtar kelimesiyle taranan bir web sitesinin içeriğine sahip olduğu için, bu, kendisine sunulan tek alan adı olacaktır. Kullanıcı.
Ancak, daha önce de belirttiğimiz gibi, tarayıcılar bulabildikleri her URL'yi ve dosyayı tarama olarak adlandırılan geçiş yapmaya çalışırlar! Diyelim ki “ web sitem.com ” öncekiyle aynı anahtar kelimelere (“Apple”, “Muz” ve “Armut”) sahipse, ancak aynı zamanda başka bir web sitesine URL'ye sahipse , tarayıcı daha sonra her şeyi çaprazlamaya çalışacaktır. bu URL'yi ( başka bir web sitesi.com ) ve sırasıyla o etki alanındaki her şeyin içeriğini alın.
Bu, aşağıdaki şemada gösterilmektedir. Tarayıcı başlangıçta web sitesinin içeriğini taradığı “ mywebsite.com ”u bulur - daha önce olduğu gibi aynı anahtar kelimeleri (“Apple”, “Muz” ve “Armut”) bulur, ancak ek olarak harici bir URL bulur. tarayıcı “ mywebsite.com ” da tamamlandığında , anahtar kelimelerin ("Domates", "Çilek" ve "Ananas") bulunduğu " başkawebsite.com " web sitesinin içeriğini taramaya devam edecektir . sözlük artık hem “ mywebsite.com ” hem de “ otherwebsite.com ” içeriğini içeriyor ve bu daha sonra arama motorunda saklanıyor ve kaydediliyor.
Özetlemek gerekirse , arama motoru artık taranan iki alan hakkında bilgi sahibidir:
1. mywebsite.com
2. otherwebsite.com
Bununla birlikte, “ başka bir web sitesi.com ” yalnızca ilk etki alanı “ mywebsite.com ” tarafından başvurulduğundan taranmıştır . Bu referans nedeniyle, arama motoru iki alan hakkında aşağıdakileri bilir:
Alan adı | anahtar kelime |
web sitem.com | Elmalar |
web sitem.com | Muz |
web sitem.com | Armutlar |
başkawebsite.com | Domates |
başkawebsite.com | Çilekler |
başkawebsite.com | Ananas |
Veya aşağıda gösterildiği gibi:
Artık arama motorunun anahtar kelimeler hakkında biraz bilgisi olduğuna göre, diyelim ki bir kullanıcı "Armut" için arama yapacaksa, " mywebsite.com " alanı görüntülenecektir - bu, "Armut" içeren tek taranan alan olduğundan:
Aynı şekilde, diyelim ki bu durumda kullanıcı şimdi "Çilek" kelimesini aramaktadır. Arama motoru tarafından taranan ve "Çilekler" anahtar kelimesini içeren tek alan olduğundan, " başkawebsite.com " alanı görüntülenecektir:
Bu harika...Fakat bir web sitesinin birden fazla harici URL'si olduğunu düşünün (genellikle yaptıkları gibi!) Bunun gerçekleşmesi için çok fazla tarama yapılması gerekir. Başka bir web sitesinin, taranan başka bir web sitesininkine benzer bilgilere sahip olma olasılığı her zaman vardır - değil mi? Peki "Arama Motoru", kullanıcıya görüntülenen alan adlarının hiyerarşisine nasıl karar veriyor?
Bu durumda aşağıdaki şemada, kullanıcı "Domates" (hangi web siteleri 1-3'ü içerir) gibi bir anahtar kelime arayacaksa, hangi web sitesinin hangi sırayla görüntüleneceğine kim karar verir?
Mantıksal bir varsayım, web sitesi 1 -> 3'ün görüntüleneceği olabilir...Fakat gerçek dünya etki alanları bu şekilde çalışmaz ve/veya adlandırılmaz.
Peki hiyerarşiye kim (veya ne) karar veriyor? Peki...
3.Görev
Arama motoru Optimizasyonu
Arama Motoru Optimizasyonu veya SEO, günümüz arama motorlarında yaygın ve kazançlı bir konudur. Aslında, o kadar ki, tüm işletmeler bir alan adı SEO “sıralaması” geliştirmekten yararlanır. Soyut bir görünümde, arama motorları dizine eklenmesi daha kolay olan alanlara "öncelik verir". Bir alan adının ne kadar "optimal" olduğuna dair birçok faktör vardır - bu da puanlandırma sistemine benzer bir şeye yol açar.
Bu puanların nasıl puanlandığına ilişkin birkaç etkiyi vurgulamak için, aşağıdakiler gibi faktörler:
• Web siteniz Google Chrome, Firefox ve Internet Explorer gibi farklı tarayıcı türlerine ne kadar duyarlı - buna Cep telefonları da dahildir!
• "Site Haritaları"nı kullanarak web sitenizi taramanın ne kadar kolay olduğu (veya taramaya izin veriliyorsa ...ama buna daha sonra geleceğiz)
• Web sitenizin ne tür anahtar kelimelere sahip olduğu (örn. Örneklerimizde, kullanıcı “Renkler” gibi bir sorgu arayacaksa, hiçbir alan adı döndürülmeyecektir - çünkü arama motoru (henüz) yapacak anahtar kelimeleri olan bir alanı taramamıştır. “Renkler” ile
Çeşitli arama motorlarının bireysel olarak bu alanları nasıl "puanlandırdığı" veya sıraladığı konusunda çok sayıda karmaşıklık vardır - geniş algoritmalar dahil. Doğal olarak, Google gibi bu arama motorlarını çalıştıran şirketler, alan adlarının hiyerarşik görünümünün nihayetinde nasıl sonuçlandığını tam olarak paylaşmazlar. Bunlar günün sonunda işletmeler olduğu için, alan adınızın görüntülenme sırasını tanıtmak/artırmak için ödeme yapabilirsiniz.
Alan adınızın ne kadar optimize edildiğini size gösterecek, bazen arama motoru sağlayıcılarının kendileri tarafından sağlanan çeşitli çevrimiçi araçlar vardır. Örneğin, TryHackMe derecelendirmesini kontrol etmek için Google'ın Site Analiz Aracını kullanalım :
Bu araca göre TryHackMe, 85/100 SEO derecesine sahiptir (14/11/2020 itibariyle). Bu çok da kötü değil ve bu puanın nasıl hesaplandığına dair gerekçeleri aşağıda sayfada gösterecek.
Ama...Bu "Tarayıcıları" Kim veya Ne Düzenliyor?
Bu "Tarayıcıları" sağlayan arama motorlarının yanı sıra, web sitesi/web sunucusu sahipleri, "Tarayıcıların" hangi içeriği kazıyabileceğini eninde sonunda kendileri belirler. Arama motorları bir web sitesinden her şeyi almak isteyecektir - ancak web sitemizin tüm içeriğinin dizine eklenmesini istemediğimiz birkaç durum vardır ! Herhangi birini düşünebilir misin...? Gizli bir yönetici giriş sayfasına ne dersiniz? Herkesin bu dizini bulmasını istemiyoruz - özellikle bir google araması yoluyla.
Robots.txt ile tanışın...
4.Görev
robots.txtDaha sonra tartışacağımız "Site Haritaları"na benzer şekilde, bu dosya bir web sitesini ziyaret ederken "Tarayıcılar" tarafından indekslenen ilk şeydir.
Ama bu ne?
Bu dosya, web sunucusunun kendisi tarafından belirtilen kök dizinde sunulmalıdır. .txt'nin bu dosya uzantısına bakıldığında , onun bir metin dosyası olduğunu varsaymak oldukça güvenlidir.
Metin dosyası, "Tarayıcı"nın web sitesi için sahip olduğu izinleri tanımlar. Örneğin, ne tür "Tarayıcı"ya izin verilir (Örneğin, MSN'leri değil, yalnızca Google'ın "Tarayıcı"sının sitenizi dizine eklemesini istiyorsunuz). Ayrıca Robots.txt, "Crawler" tarafından hangi dosya ve dizinleri yapacağımızı veya dizine eklenmesini istemediğimizi belirleyebilir.
Bir Robots.txt dosyasının çok temel bir biçimlendirmesi aşağıdaki gibidir:
anahtar kelime | İşlev |
kullanıcı aracısı | Sitenizi dizine ekleyebilecek "Tarayıcı" türünü belirtin (yıldız işareti bir joker karakterdir ve tüm "Kullanıcı aracılarına" izin verir) |
İzin vermek | "Tarayıcı"nın indeksleyebileceği dizinleri veya dosyaları belirtin |
izin verme | "Tarayıcı"nın dizine ekleyemediği dizinleri veya dosyaları belirtin |
site haritası | Site haritasının nerede olduğuna dair bir referans sağlayın (daha önce tartışıldığı gibi SEO'yu iyileştirir, bir sonraki görevde site haritalarına geleceğiz) |
1. Herhangi bir "Tarayıcı" siteyi dizine ekleyebilir
2. "Tarayıcı"nın sitenin tüm içeriğini dizine eklemesine izin verilir
3. "Site Haritası" http://mywebsite.com/sitemap.xml adresinde bulunur.
1. Herhangi bir "Tarayıcı" siteyi dizine ekleyebilir
2. "Tarayıcı", "/super-secret-directory/" içinde yer almayan diğer tüm içeriği indeksleyebilir.
Tarayıcılar ayrıca alt dizinler, dizinler ve dosyalar arasındaki farkları da bilir. İkinci "İzin Verme:" ( "/gizli değil/ama-bu-is/") örneğinde olduğu gibi
"Tarayıcı", " /not-a-secret/ " içindeki tüm içeriği dizine ekler , ancak "/but-this-is/" alt dizininde bulunan hiçbir şeyi dizine eklemez .
3. "Site Haritası" http://mywebsite.com/sitemap.xml adresinde bulunur.
Ya Sadece Belirli "Tarayıcıların" Sitemizi Dizine Eklemesini İstiyorsak?
Aşağıdaki resimde olduğu gibi bunu şart koşabiliriz:
Bu durumda:
1. "Tarayıcı" "Googlebot"un tüm siteyi dizine eklemesine izin verilir ("İzin Ver: /")
2. "Tarayıcı" "msnbot"un siteyi dizine eklemesine izin verilmez (İzin Verme: /")
Dosyaların Dizine Alınmasını Engellemeye Ne dersiniz?
Dizine alınmasını istemediğiniz her dosya uzantısı için manuel girişler yapabilirsiniz, ancak tam dosya adının yanı sıra içinde bulunduğu dizini de sağlamanız gerekir. Büyük bir siteniz olduğunu hayal edin! Ne acı... İşte burada biraz regexing kullanabiliriz .
Bu durumda:
1. Herhangi bir "Tarayıcı" siteyi dizine ekleyebilir
2. Ancak, "Tarayıcı" , sitenin ("$") kullanarak herhangi bir dizin/alt dizinde .ini uzantısına sahip hiçbir dosyayı indeksleyemez.
3. "Site Haritası" http://mywebsite.com/sitemap.xml adresinde bulunur.
Örneğin neden bir .ini dosyasını gizlemek istersiniz ? Bunun gibi dosyalar hassas yapılandırma ayrıntıları içerir. Hassas bilgiler içerebilecek başka dosya biçimleri düşünebiliyor musunuz?
5.Görev
Site HaritalarıGerçek hayattaki coğrafi haritalarla karşılaştırılabilir olan “Site Haritaları” tam da budur - ancak web siteleri için!
"Site Haritaları", etki alanında içerik bulmak için gerekli yolları belirlediklerinden, tarayıcılar için yararlı olan gösterge niteliğindeki kaynaklardır. Aşağıdaki çizim, bir web sitesinin yapısının ve bir "Site Haritası"nda nasıl görünebileceğinin iyi bir örneğidir:
Mavi dikdörtgenler , bir mağaza için "Ürünler" gibi bir dizine benzer şekilde iç içe içeriğe giden yolu temsil eder. Oysa yeşil yuvarlak dikdörtgenler gerçek bir sayfayı temsil eder. Ancak bu yalnızca örnekleme amaçlıdır - “Site Haritaları” gerçek dünyada böyle görünmez. Buna çok daha benzer bir şeye benziyorlar:
“Site Haritaları” XML formatlıdır. Falconfeast tarafından oluşturulan XXE odası bu konuda çok iyi bir iş çıkardığı için bu dosya formatlamanın yapısını açıklamayacağım ."Site Haritalarının" mevcudiyeti, bir web sitesinin "optimizasyonunu" ve tercih edilebilirliğini etkilemede makul miktarda ağırlığa sahiptir. "Arama Motoru Optimizasyonu" görevinde tartıştığımız gibi, bu haritalar tarayıcı için içerik geçişini çok daha kolay hale getiriyor!
"Site Haritaları" Arama Motorları İçin Neden Bu Kadar Uygun?
Arama motorları tembel! Daha da iyisi - arama motorlarının işlemesi gereken çok fazla veri var. Bu verilerin nasıl toplandığının verimliliği çok önemlidir. "Site Haritaları" gibi kaynaklar, içeriğe giden gerekli yollar zaten sağlanmış olduğundan, "Tarayıcılar" için son derece yararlıdır! Tarayıcının yapması gereken tek şey, bu içeriği sıyırmaktır - manuel olarak bulma ve kazıma sürecinden geçmek yerine. Dosyaları bulmak için rastgele isimlerini tahmin etmek yerine bir kelime listesi kullanmak gibi düşünün!
Bir web sitesinin "Taraması" ne kadar kolaysa, "Arama Motoru" için o kadar optimize edilir
6.Ve son görev
Gelişmiş Arama için Google'ı KullanmaDaha önce tartıştığımız gibi, Google'ın taranan ve dizine eklenen birçok web sitesi vardır. Ortalama bir Joe, Kedi resimlerine bakmak için Google'ı kullanıyor (Ben daha çok bir Köpek insanıyım...). Google, Joe'ya sunulmak üzere dizine eklenmiş birçok Cat resmine sahip olacak olsa da, bu, arama motorunun ne için kullanılabileceğine kıyasla oldukça önemsiz bir kullanımıdır.
Örneğin, arama sonuçlarımızı artırmak veya azaltmak için programlama dillerinden operatörler ekleyebilir veya aritmetik gibi işlemler gerçekleştirebiliriz!
Arama sorgumuzu daraltmak istersek tırnak işaretleri kullanabileceğimizi varsayalım. Google, bu tırnak işaretleri arasındaki her şeyi kesin olarak yorumlayacak ve yalnızca sağlanan tam ifadenin sonuçlarını döndürecektir... Aşağıda yaptığımız gibi, ihtiyacımız olmayan çöpleri filtrelemek için oldukça kullanışlıdır:
Sorgularımızı İyileştirme
Bulması daha zor olabilecek içeriği filtrelemek için sağladığımız anahtar kelime için belirtilen siteyi aramak için “ site ” (bbc.co.uk gibi) ve bir sorgu ("gchq haberler" gibi) gibi terimler kullanabiliriz . aksi halde. Örneğin, "bbc" ve "gchq" kelimelerinin "site" ve "sorgusunu" kullanarak, Google'ın sonuçları döndürme sırasını değiştirdik.
Aşağıdaki ekran görüntüsünde "gchq news" araması, Google'dan yaklaşık 1.060.000 sonuç döndürür. İstediğimiz web sitesi, GCHQ'nun gerçek web sitesinin gerisinde yer alıyor:
Ama biz bunu istemiyoruz... Biz “ bbc .co” istedik. uk ”, o halde “ site ” terimini kullanarak aramamızı daraltalım . Aşağıdaki ekran görüntüsünde Google'ın nasıl daha az sonuçla döndüğüne dikkat edin. Ek olarak, istemediğimiz sayfa ortadan kayboldu ve aslında istediğimiz siteyi terk etti!
Tabii ki, bu durumda, GCHQ oldukça tartışılan bir konudur - bu nedenle, ne olursa olsun bir sürü sonuç olacaktır.
Peki "Google Dorking"i Bu Kadar Çekici Kılan Nedir?
Her şeyden önce - ve en önemli kısım - bu yasal! Hepsi endeksli, herkese açık bilgiler. Ancak bununla yaptığınız şey, yasallık sorununun devreye girdiği yer...
Arayıp birleştirebileceğimiz birkaç yaygın terim şunları içerir:
Terim | Eylem |
dosya tipi: | Dosyayı uzantısına göre arayın (örn. PDF) |
önbellek: | Belirtilen bir URL'nin Google'ın Önbelleğe Alınmış sürümünü görüntüleyin |
başlık: | Belirtilen ifade, sayfanın başlığında GÖRÜNMELİDİR |
Örneğin, bbc.co.uk'de tüm PDF'leri aramak için Google'ı kullanmak istediğimizi varsayalım:
site:bbc.co.uk filetypedfHarika, şimdi Google aramamızı " bbc.co.uk " üzerinde herkesin erişebileceği tüm PDF'leri sorgulayacak şekilde iyileştirdik - Bu "Bilgi Edinme Özgürlüğü Talebi Yasası" dosyası gibi dosyaları bir kelime listesinde bulamazdınız!
Burada PDF uzantısını kullandık , ancak herkesin erişebileceği hassas nitelikte başka dosya biçimleri düşünebiliyor musunuz? (Genellikle istemeden!!) Yine, bulduğunuz herhangi bir sonuçla yaptığınız şey yasallığın devreye girdiği yerdir - bu yüzden "Google Dorking" çok büyük/tehlikelidir.
İşte basit dizin geçişi.
Sizi, beni, THM'yi ve alan sahiplerini kapsamak için aşağıdakilerin çoğunu boş bıraktım:
Değerli arkadaşlar verdiğim metinlerde ve şemalarda ctf sorularının cevapları olduğu için
ben sorular nasıl çözülür diye anlatmadım (verilen metin ve şemalara bakıp okuyarak sizde soruları hiçbir zorluk olmadan çözebilirsiniz
en başta da dediğim gibi; bir kitap okuyorsunuz ve o kitabın özetini doğru çıkarmak için verilen sorulara cevap veriyorsunuz
İYİFORUMLAR