Reconnaissance via Google Hacking
Web uygulaması veya altyapı güvenlik testlerinin temeli keşiftir, yani tüm alt alanların, IP adreslerinin ve diğer kamuya açık bilgilerin toplanmasıdır. Keşif sırasında aynı anda birkaç aracı kullanmak iyi bir uygulamadır ve bu elbette bu test aşamasının etkinliğini büyük ölçüde artıracaktır. Bir araç tarafından atlanan bilgiler başkaları tarafından bulunabilir. Arama motorları, pasif keşif yapması gereken saldırganlar için güçlü araçlardır. Kullanımları hedef ağ organizasyonu, kullanılan uygulama ve ilgili güvenlik açıkları, hassas belgeler ve şirket personeli hakkında bilgi toplamaya yardımcı olabilir.
Google ile hacking yapmaya başlamadan önce çok kısa bir şekilde aktif ve pasif bilgi toplama nedir onlara bakalım;
- Aktif Bilgi Toplama: Hedefle doğrudan etkileşim kurarak hedef ağ hakkında daha fazla bilgi toplama sürecidir.
- Pasif Bilgi Toplama: Aktif bilginin tam tersidir. Hedef sistem ile temas kurmadan mümkün olduğunca fazla bilgi toplamaktır. (google hacking bu kısma girer.)
İlk keşif sırasında en temel bilgi kaynağı arama motorları olabilir. Hassas dosyalar da dahil olmak üzere kritik durumlarda burada birçok ilginç bilgi bulabilirsiniz. Bu pasif keşif yönteminin en büyük avantajı, aktif keşif yönteminin aksine, test ettiğimiz uygulamanın sunucusunda varlığımıza dair herhangi bir iz bırakmamamızdır.
NOT: Farklı arama motorları bağımsız algoritmalar kullandığından, aynı sorguları birkaç tanesi için de kontrol etmek önemlidir. En popülerleri Google, Bing ve Yahoo'dur.
Google Filtreleri
Mantıksal Operatörler
AND / + | Anahtar kelimeleri eklemek için kullanılır | Anka AND Red AND Team |
NOT / - | Anahtar kelimeleri hariç tutmak için kullanılır. | Anka NOT Red NOT Team |
OR / | | Bir anahtar kelimenin eşleştiği anahtar kelimeleri dahil eder. | Anka OR Red OR Team |
Tilde (~) | Eşanlamlıları ve benzer kelimeleri eklemek için kullanılır. | Anka Red ~ Team |
Çift Tırnak (" ") | Tam eşleşmeleri dahil etmek için kullanılır. | "Anka Red Team" |
Nokta (.) | Tek karakterli joker karakterler eklemek için kullanılır. | .nka Red Team |
Yıldız İşareti (*) | Tek kelimelik joker karakterleri eklemek için kullanılır. | Anka * Team |
Parantez ( () ) | Sorguları gruplamak için kullanılır | ( "Anka Red Team" | Anka Red ) |
Gelişmiş Operatörler
site: | Arama sorgusunu belirli bir web sitesiyle sınırlar. | site:turkhackteam.org |
filetype: | Aramayı belirli bir dosya türünde bulunan metinle sınırlar. | mysqldump filetype:.sql |
cache: | Web sayfasının sürümünü arayın. | cache:turkhackteam.org |
inurl: | Bir URL içinde bir dize arayın | inurl:"passwords.txt" |
intext: | Herhangi bir web sitenin içeriğinde var olan bir dize metni arar. | intext:"Anka Red" |
intitle: | Bir sayfanın başlığında bir dize metni arar. | intitle:"index of" |
link: | İstenen URL' ye bağlantı veren sayfaları arar. | link:turkhackteam.org |
Dork Bulma
Güncel dorkları bulmak için exploitdb tarzı sitelere göz atabilirsiniz ya da bir diğer örnek cxsecurity. Bu tarz siteler güncel açıklar için bir çok exploit ve pentesting adına yararlı bilgiler paylaşır. Bu bilgilerden faydalanabilirsiniz. Örneğin burada ki dorku alıp kendiniz geliştirerek daha iyi sonuçlar çıkarabilirsiniz. Çünkü buraya sadece siz girmiyorsunuz sizin gibi binlerce kişi giriyor ve bu dorkları deniyor. O yüzden daha sağlıklı sonuç almak için kendi dorklarınızı yazın.
Google Hacking
Son olarak, bu makalenin kalbine yani Google'ın yardımıyla nasıl hack yapılacağına geldik ve bu mümkün mü? Tabii ki mümkün. Bu prosedür Google Hacking/Google Dorking olarak adlandırılır ve genellikle güvenlik testlerinin ayrılmaz bir parçasıdır. Keşif neden arama motorlarıyla başlar? Çoğu zaman en basit çözümler en iyisidir ve güvenlik alanındaki en büyük sorun insan faktörüdür. Pahalı programlar, karmaşık scriptler ve benzeri pentester yardımcıları hiçbir şey bulamayabiliyorken, internette tek bir sorgu ile bulabilirsiniz.
Örnekler
1) İlk örneğimiz public kameralara girmek olsun. İnternette "public camera dorks" yazarsanız binlerce örnek dork bulabilirsiniz ve bunları geliştirerek daha iyi sonuçlar alabilirsiniz.
inurl:currenttime inurl:top.htm
inurl:/view.shtml
inurl:"lvappl.htm"
inurl:”CgiStart?page=”
2) İşi daha da öteye götürelim. Web sitelerinde Google tarafından dizine eklenen SQL dosyaları eklenir. Bizde bunları tespit etmeye çalışalım.
intitle:"index of" filetype:sql
filetype:sql "insert into" (pass|passwd|password)
filetype:sql ("values _ MD5" | "values _ password" | "values _ encrypt")
filetype:sql (\"passwd values\" | \"password values\" | \"pass values\" )
filetype:sql (\"values _ MD\" | \"values _ password\" | \"values _ encrypt\")
3) Şimdi de herkesin erişebileceği public phpMyAdmin' leri arayalım
"phpMyAdmin" "running on" inurl:"main.php"
4) Varsayılan oturum açma bilgilerini ve parolalarını .txt biçiminde arayalım
filetype:txt intext:"default password"
5) Son örneğimizde ise israil sitelerinde sql açığı arayalım
site:il inurl:"php?id=" "You have an error in your SQL syntax"
Google Hack Saldırılarını Önleme
Google Hacking, saldırganların olası güvenlik açıklarını ve yanlış yapılandırmaları keşfetmesi için bir keşif yönteminden başka bir şey değildir. Bu nedenle, web sitelerini, web uygulamalarını güvenlik açıkları ve yanlış yapılandırmalar için test etmek ve ardından bunları düzeltmeye devam etmek, yalnızca tespit edilme riskini ortadan kaldırmakla kalmaz, aynı zamanda istismarı da önler.
Konumuz bu kadardı. Umarım faydalı olmuştur. Diğer konularda görüşmek üzere. Esen kalın...