Footprinting

Footprinting şirketler ve bilgisayar sistemleri hakkında bilgi toplama eylemidir.Footprinting onların hacking sürecinde aldıkları ilk adımdır.Footprinting önemlidir çünkü hackerın sistemi hacklemesi için ordaki bilmesi gereken herşeyi bilmelidir.Aşağıda websitesinden bilgi almak için kullanıla servisler ve adımlara örnekler vereceğiz.

  1. Hacker, ilk önce hedef websitesinde bilgileri toplamaya başlar.İsimleri ve e-postaları çekebileceği yerler arar.Şirkete sosyal mühendislik saldırısı yapmak için bu bilgiler kullanışlı olabilir.
  2. Sonra websitesinin ip adresini alır.Bunun için http://www.selfseo.com/find_ip_address_of_a_website.php adresine gidip websitesinin URL’sini girdiğinizde websitesinin ip adresini basacaktır.
  3. Daha sonra hacker  çevrim içi çalışan sunucuları bulmak için sunucuya ping gönderecektir. http://just-ping.com dünyanın 36 farklı bölgesinden ping atan web sitesidir.Ping seçeneğini seçip websitesinin adını yada IP adresini girmen yeterli.
  4. Daha sonra hacker şirketin websitesine whois sorgusu yapar. Bunun için http://whois.domaintools.com sitesine gider ve buradaki sorgula kısmına hedef websitesini koyar.Bu şirket hakkında  çokca bilgi verir.Şirketin numaralarını,adları ,kullandığı e-mail adreslerini, ve daha fazlasını öğrenebilirsiniz.
  5. Ayrıca arama motorları  sitede veri aramak için avantaj sağlar.Örnek verecek olursak google arama kutusuna site:www.hedefsite.com yazar ve google’ın sahip olduğu websitesinin tüm sayfalarını görebilir.Belirli kelimeler ekleyerek arama sonucunu daraltabilir.Örneğin “site:www.hedefsite.com email” gibi.Google’dan yapabileceği başka bir arama “inurl/robots.txt ” bu robots.txt adında bir sayfa görünür.Eğer site “robots.txt” dosyasına sahipse arama motorları örümceklerinin anonim tutmak istediği tüm dizin ve sayfaları görüntülenebilir.Bazen değerli bilgilere rastlanabilir, onun için bu dosyalar gizli tutulmalıdır.Footprinting temellerini açıkladık.Şimdi port taraması için harekete geçelim.

Port Scanning

Port tarama, sunucudaki portları dinleyerek açık portları tespit hizmetidir.Bir hacker sunucuda çalışan tüm hizmetleri bilir.Web sitesinin kontrolünü almak için güvenlik açıklarını ve gerekli exploitleri araştırır.Port taramada kullanılan en popüler port scanner:”Nmap” tır.The Nmap Security Scanner  Windows ve Mac her iki kullanıcılar için mevcut.(İndirme linki Link)Nmap GUI kullanımını göstereceğiz.Örnek olarak Zenmap programı kullanılabilir.

  1. İlk olarak hacker hedef belirliyor ve bu hedefi hedef kutucuğuna yazıyor.Programın “Command” kısmında CLI (Command Line Interface) kullananlar için komut yazıyor.
  2. Sonra hacker “Profile” seçeneğinden tarama tipini seçiyor.Akıllı hacker sessiz ve hızlı tarama seçeneğini seçer.Tam versiyonda algılama taramaları çok yüksek ve  diğer uçtan şüphe uyandıracak seviyede.Bu seçeneklerden uzak durulmalı.
  3. Tarama yaptıktan sonra program açık portları ve bu portlarda çalışan hizmetleri listeleyecektir.Aşağıda bazı popüler portları ve servisleri sıraladım. 20 FTP data (File Transfer Protocol) 21 FTP (File Transfer Protocol) 22 SSH (Secure Shell) 23 Telnet 25 SMTP (Send Mail Transfer Protocol) 43 whois 53 DNS (Domain Name Service) 68 DHCP (Dynamic Host Control Protocol) 80 HTTP (HyperText Transfer Protocol) 110 POP3 (Post Office Protocol, version 3) 137 NetBIOS-ns 138 NetBIOS-dgm 139 NetBIOS 143 IMAP (Internet Message Access Protocol) 161 SNMP (Simple Network Management Protocol) 194 IRC (Internet Relay Chat) 220 IMAP3 (Internet Message Access Protocol 3) 443 SSL (Secure Socket Layer) 445 SMB (NetBIOS over TCP) 1352 Lotus Notes 1433 Microsoft SQL Server 1521 Oracle SQL 2049 NFS (Network File System) 3306 MYSQL 4000 ICQ 5800 VNC 5900 VNC 8080 HTTP
  4. Çalışan portları bulmakla birlikte,hackerın sunucuda çalışan işletim sisteminide öğrenmesi gerekir.Bir çok işletim sisteminde her zaman bir açık vardır.Bu yüzden işletim sistemini bilinmesi hacker’ın şansını artırır. Nmap tercihlerinde işletim sistemini tespit etme seçeneğini görebilirsin ,fakat çok gürültülü ve kolay tespit olduğundan bunu seçmemek en iyisi.
  5. Eğer Nmap’ın CLI versiyonunu kullanmak istiyorsanız bu siteye göz atabilirsiniz.
  6. Şimdi hacker hedefteki sistemin tüm açık portlarını ve çalışan hizmetlerini elde ettikten sonra sunucuda çalışan versiyonları öğrenecek.Bu konuda sıra “Banner Grabbing” giriyor.

Banner Grabbing

Hedef sistemde çalışan servisleri exploit edilebilmesi için yazılımların ve sürümlerinin bilinmesi gerekir.Bu bilgileri almanın ilk yolu servis portunu telnet etmektir. Buna aşağıda CLI kullanarak örnek verdik.

  1. İlk önce hacker Nmap port taraması ile sıralanan açık portlardan birini seçiyor.Diyelim ki hacker hedefi taradığında 21.portu açık bulsun.21.port FTP servisiydi. daha sonra komut satırına: telnet www.hedefsite.com 21 komutunu girecektir.
  2. Sonra hedefe bağlanacak komut çıktısı  kullanılan yazılım ve sürümü hakkında bilgi edindirecektir.Bu bilgiler devamında hacker yazılımı bulup  güvenlik açıkları için araştırmalara başlayacaktır.

Güvenlik açıklarını araştırma

Hacker sistemde çalışan yazılımları ve sürümlerini öğrendi şimdi sıra exploit etmek için  bir kaç güvenlik açığı veritabanlarından arama yapmak.Eğer uygun bir exploit bulursa bunu sunucu karşısında çalıştıracak ve kontrolün tamamını alacaktır.Hiç bulamazsa bu sefer başka açık portlar üstündeki servisler için aynı şeyleri yapacaktır. Bazı popüler exploit veritabanları:

  • Milworm
  • SecurityFocus
  • osvdb

Milworm üzerinde “fillezilla” ile arama yapıldığında çok şükür bir güvenlik açığı çıkmıyor.Çoğu insan başka portları deneyecektir ve olası başka açıklar bulacaklardır.Fakat bu herkesin hacker olduğu anlamına gelmez.Usta bir hacker geçerli yazılımın sürümündeki açığı saptar ve onun exploit geliştirmeyi dener.Hacker topluluğu bu açığa “0-gün” adını verecektir.Hacker topluluğu için “0-gün” açıkları çok değerlidir.Bunun birkaç nedeni:

  • Kimse güvenlik açığını bilmez, bu yüzden hacker açık keşfedilmeden ve yamalanmadan önce  yüzlerce siteyi hacklemeye başlar.
  • Güvenlik açığını satarak binlerce dolar kazanır.
  • Açık keşfedilmeden usta olduğunu göstermek için yeni exploit yazar,hacker topluluğunda rütbesi artar.

“0(sıfır)-gün” neden çok önemli merak ediyor olabilirsiniz.Bu çok basit.Bunu basit bir denklem ile açıklayalım.  

Hacker+0-gün+Sunucu Şirketleri=Kötü İtibar=Para Kaybı

Sızma konusuna girmeden önce, güvenlik açıklarına karşı yaygın bir kaç saldırı tiplerini görelim. Denial-of-Service(DoS) – DoS saldırısının bir çok çeşidi var fakat hepsinin ortak amacı,meşru kullanıcılar için hedef sunucuyu kullanılamaz yapmak.DoS saldırırı en yaygın saldırı çeşididir.Hacker  tüm kaynakları tüketmek için hedef sunucuya bilgi seli gönderir, ve sunucu çevrimdışı yazısı döndürür yada meşru kullanıcıların erişimini reddeder. Buffer Overflow(BoF)- Hafıza taşması Program daha fazla veri depolamak yada veri saklamak için çalıştığında meydana gelir.Hafıza belirli miktarda veri tutabiliyor,extra bilgiler diğer hafızalara taşmasına neden oluyor , hacker oluşturduğu kötü amaçlı kodları bunların üzerine yazıyor.Bu kodlar çalıştırıldığında, hacker sunucunun tüm kontrolünü eline alıyor. Milw0rm exploit veritabanını ziyaret ettiğinizde Local  exploit ve Remote exploit başlığında birçok exploit görmüşsünüzdür.Şimdi bunları açıklayalım. Local Exploit – Local exploiti çalıştırmanız için , ilk önce makinede erişim ve yetkilere sahip olmanız gerekir.Local exploitler genellikle root ya da admin olanlar için yetki yükseltmede kullanılır.Başka bir deyişle , sıradan kullanıcıların root ayrıcalıklarına sahip olmasına izin verir. Remote Exploit- Local exploite oldukça benzer lokal olarak çalışması dışında,fakat internet bağlantılı heryerden başlatılabilir. Hacker genellikle sistemin kontrolünü almak için her iki exploit çeşidini de kullanır.Bunu bir örnek ile açıklayalım.Hacker , remote exploit saldırısı ile sunucunun yetki düzenini alır daha sonra da local exploit yardımı ile root yetki düzeyine  yükselir.

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Share on TumblrEmail this to someone