TryHackMe Linux Challenges içerisinde yer alan "Using SCP, FileZilla or another FTP client download flag32.mp3 to reveal flag 32." sorusu adeta beynimi yaktı, gözlerimden aktı.
Meğer ne çok şey anlamamışım da dedim bu nedenle oldukça faydalı oldu.
Ancak Alper olmasa sanıyorum hacking hayatım yine buralarda bir yerlerde son bulacaktı :)
Soruyu tekrar hatırlayalım:
Using SCP, FileZilla or another FTP client download flag32.mp3 to reveal flag 32.
Önce bir süre FileZilla ile uğraştım ancak yanlış yol. Eğer SCP'nin "SSH Copy" olduğunu bilseydim ve halihazırda zaten karşı tarafa SSH ile bağlı olduğumu düşünebilseydim FileZilla olayına hiç vakit kaybetmezdim.
Her neyse, neden SCP kullanılması gerektiğini böylece anlamış / anlatmış olduk.
Buarada SSH'ı bağlantısını da tekrar bir anlamaya çalıştım. Unutmamak için buraya da yazacağım.
ifconfig ile baktığımda gördüğüm 3 farklı IP adresi var:
──(sinem㉿sparta)-[~]
└─$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.17.130 netmask 255.255.255.0 broadcast 192.168.17.255
inet6 fe80::20c:29ff:fede:bfc2 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:de:bf:c2 txqueuelen 1000 (Ethernet)
RX packets 78933 bytes 58664608 (55.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 49150 bytes 8635558 (8.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 40 bytes 2000 (1.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 40 bytes 2000 (1.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 10.8.150.178 netmask 255.255.0.0 destination 10.8.150.178
inet6 fe80::c172:a11f:3572:af70 prefixlen 64 scopeid 0x20<link>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 500 (UNSPEC)
RX packets 2007 bytes 279438 (272.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3431 bytes 246825 (241.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Bunlardan ilki (192.168.17.130) benim ev IP adresim.
tun0 olan 10.8.150.178 ise TryHackMe'nin IP adresi.
TryHackMe üzerinde şu an bağlı olduğum makina ise deploy dedikten sonra çıkan 10.10.173.162 IP adresinde bulunuyor ve ben buna alice kullanıcısı ile ssh kullanarak bağlanıyorum.
ssh alice@10.10.173.162 yazıyorum ve parolayı girip ssh bağlantısını kuruyorum.
Gelelim SCP'ye.
SCP (secure copy - güvenli kopya), dosyaları ve dizinleri iki konum arasında güvenli bir şekilde kopyalamaya izin veren bir komut satırı yardımcı programı.
SCP ile bir dosya veya dizini aşağıdaki şekillerde kopyalayabiliyoruz:
- Yerel sistemden uzaktaki bir sisteme,
- Uzak bir sistemden yerel sisteme,
- Yerel sistemden iki uzak sistem arasında.
SCP ile veri aktarırken, hem dosyalar hem de parola şifreleniyor ve böylece trafiği izleyen herhangi biri hassas bir veriye erişemiyor bu nedenle de "güvenli kopya" deniyor.
SCP ile ilgili faydalı komutlara https://linuxize.com/post/how-to-use-scp-command-to-securely-transfer-files/ linkinden erişilebiliyor.
Bize soruda flag32.mp3'ü indir diyor. Bu dosyanın nerede olduğunu locate komutu ile görebiliyoruz:
alice@ip-10-10-173-162:~$ locate flag32.mp3
/home/alice/flag32.mp3
Nereye indireceğim? sinem kullanıcısının bulunduğu kendi bilgisayarıma.
Bunun için yeni bir terminal ekranı açıp aşağıdaki komutu yazıyorum:
──(sinem㉿sparta)-[~]
└─$ scp alice@10.10.173.162:/home/alice/flag32.mp3 /home/sinem/Desktop
alice@10.10.173.162's password:
flag32.mp3 100% 10KB 126.0KB/s 00:00
scp'den sonra ilk olarak hangi kullanıcıdan dosya gelecek, kendisi hangi IP adresinde bulunuyor ve : den sonra kopyalanacak dosya yolunu yazıyorum. Turuncu kısım ise dosyanın kopyalanmasını istediğim yolu gösteriyor.
Dosya indikten sonra ses dosyası olduğundan Desktop'ta üzerine çift tıklayıp açıyorum ve lanet olası flag'in ne olduğunu öğreniyorum.
Canımızdan bezdiğimiz dakikaların da böylece sonuna geliyoruz.
Buarada ilk önce
scp file.txt remote_username@10.10.0.2:/remote/directoryşeklinde kullanmayı denemiştim, neden bilmiyorum çalışmadı.

Hiç yorum yok:
Yorum Gönder