30 Ocak 2021 Cumartesi

FTP (File Transfer Protokol) Nedir ve Nasıl İstismar Edilir?

 

FTP nedir?

File Transfer Protocol (FTP) dosya transferi için kullanılan ve bir ağ üzerinden uzaktan dosya transferine izin veren bir protokoldür.

Client-Server yani istemci-sunucu arasında kurulan bir modeldir ve komut ve veri aktarımı için iki farklı bağlantı kurması sayesinde oldukça verimli bir aktarım yapılmasına olanak tanır.

FTP nasıl çalışır?

FTP oturumları iki kanal kullanılarak yapılır:

1. Komut (ya da kontrol) kanalı
2. Veri kanalı

İsimlerinden de anlaşıldığı üzere komut kanalı komutların gönderilmesi ve aynı zamanda bu komutlara yanıtların iletilmesi için kullanılır. Veri kanalı ise ver aktarımı için kullanılmaktadır.

Yukarıda da yazmış olduğum gibi, FTP istemci ile sunucu arasında bir protokoldür (client-server protocol). İstemci sunucu ile bir bağlantı kurar, sunucu girilen kullanıcı giriş bilgilerini (kimlik bilgilerini) doğrular ve bir oturum açar.

Oturum açıldığında istemci sunucu üzerinde FTP komutlarını çalıştırabilir.

Aktif ve Pasif FTP transferi

FTP sunucusu Aktif veya Pasif bağlantı ile çalışabilir ya da her ikisini birden kullanabilir.

Aktif FTP bağlantısında istemci bir port açar ve dinler yani pasif pozisyondadır. Sunucunun aktif olarak bağlantı kurması gerekir.

Pasif FTP bağlantısında ise sunucu bir port açar ve dinler yani pasif pozisyondadır. İstemci bağlanır.

Komut bilgilerinin ve verilerin ayrı kanallara bu şekilde ayrılması sayesinde veri aktarımının bitmesini beklemek zorunda kalmadan sunucuya komutlar gönderilebilir.

Her iki kanal birbirine bağlı olduğu takdirde komutlar ancak veri aktarımları arasında girilebilecek, bu da dosya aktarımları veya yavaş internet bağlantısı bulunan ortamlar içinoldukça verimsiz olacaktı.

FTP Hangi portta çalışır?


FTP varsayılan olarak 21 numaralı bağlantı noktası üzerinde çalışır.

FTP Enumeration (Bilgi toplama)


Bilgi toplama aşamasında nmap kullanılabilir. Bunun için tercih edilen flagler ile çalıştırılacak olan nmap çıktısında ftp hakkında da bilgi edinilebilecektir.

Ben tüm sistem hakkında bilgi toplamak için genellikle aşağıdaki komutu kullanıyorum:

nmap -A -p- -T4 IPADRESİ


Ancak sadece ftp portu hakkında bilgi edinmek istiyorsak aşağıdaki komut kullanılabilir:

nmap -p 21 IPADRESİ

Alternatif bilgi toplama yöntemleri:

in.ftpd'nin bazı savunmasız sürümlerinde home dizininde "cwd" (Linux'da "change working directory" yani mevcut çalışma dizini değiştirme) komutuna farklı yanıtlar alınabilir.

Bu durum bir istismara yol açabilmektedir çünkü eğer kimlik doğrulama öncesinde cwd komutu çalıştırılabilirse ve bir home dizini varsa bu genellikle içerisinde bir kullanıcı hesabının da bulunabileceği anlamına gelir ve kullanıcı hesabı hakkında bilgi toplamış oluruz.

Her ne kadar bu hata ancak eski sistemlerde karşımıza çıkabiliyor olsa da FTP istismar etmenin yöntemlerinden biri olarak bilinmeye değerdir.

Bu zafiyete ait dokümana https://www.exploit-db.com/exploits/20745 linkinden erişilebilir. Solaris 2.6/7.0 - IN.FTPD CWD 'Username' Enumeration olarak bilinen zafiyet açıklamasında görülebileceği gibi, Solaris İşletim Ortamı ile birlikte gelen ftp deamon ile ilgili bir sorun, uzak kullanıcıların geçerli kullanıcı hesaplarının adlarına erişmesine izin verebilmektedir.

Oturum açmadan önce (in.ftpd hala "negotiation" aşamasındayken) ftp deamon'a yapılacak olan cwd değişiklik isteği sonucunda hesap geçerliyse ftp deamon bir oturum açma ve parola isteği gönderir, geçerli değilse bu durumda geçerli olmadığını belirten bir hata mesajı alınır.

FTP'yi istismar etmek


FTP İstismar çeşitleri

Telnet gibi, FTP kullanılırken hem komut hem de veri kanalları şifresizdir. Bu kanallar aracılığıyla iletilen verilerde saldırgan araya girebilir ve okuyabilir.

FTP ile iletilen veriler düz metin olarak gönderilir bu nedenle man-in-the-middle (ortadaki adam) saldırılarında saldırganların araya girmesi durumunda parola vb. iletilen bilgilerin bu kişinin eline geçmesi mümkündür.

Zayıf ya da varsayılan ayarlarda bırakılmış parola konfigürasyonları ise diğer bir istismar yöntemidir. 

Ayrıca "Banner Grabbing" denilen yöntem ile FTP Banner bilgilerinden versiyon bilgisine erişmek ve bu versiyona ait bir zafiyeti istismar etmeye çalışmak, sniffing araçlarının kullanılmasıyla veri paketlerine erişmek ve FTP üzerinden düz metin dosyası halinde iletilen kullanıcı adı / parola gibi bilgileri yakalamak, Brute-Force saldırısı ile kullanıcı adı / parola bilgilerini çalmak, FTP Port Forwarding gibi daha pek çok yöntem ile çeşitli FTP zafiyetlerini duruma göre istismar etmek mümkün. 

En sık kullanılan FTP İstismarları

En sık kullanılan FTP İstismarlarının aşağıdakiler olduğu tespit edilmiş:


1. Anonymous Authentication (Kimlik Doğrulama) - Bu FTP zafiyeti, saldırganın FTP'ye "anonymous" kullanıcı adıyla (ve bazı durumlarda parola olarak da "anonymous" ile) bağlanabilmesine neden olur.

Microsoft'a ait bu dokümanda açıklanmış olduğu üzere birçok durumda kullanıcıların kullanıcı adı olarak "anonymous" ve parola olarak kendi e-posta adreslerini kullandığı görülmektedir.

Msfconsole yardımıyla bu zafiyet sırasıyla aşağıdaki komutlar kullanılarak istismar edilebilir:

msfconsole

use auxiliary/scanner/ftp/anonymous


msf auxiliary(anonymous) >set rhosts HEDEF_IP_ADRES (herzaman "show options" kullanarak sizden istenenlerin ne olduğunu görüntüleyebilir ve istenen bilgileri başında "set" ile belirterek girebilirsiniz.)

msf auxiliary(anonymous) >exploit

2. Directory Traversal Attack (Dizinler Arası Geçiş) - Dizinler arası geçiş (ya da çapraz geçiş) olarak bilinen bu saldırı, saldırganların kısıtlanmış olan dizinlere erişmesine ve web sunucusunun root dizini dışındaki yerlerde komut çalıştırabilmesine olanak sağlayan bir HTTP saldırısıdır.
Kısaca, saldırının başarılı olması durumunda saldırgan web root klasörünün dışında depolanan dosyaların üzerine yazabilir veya yeni dosya oluşturabilir. (Saldırı hakkında daha detaylı bilgi için buraya bakılabilir.) Sonuç olarak da orijinal FTP sahibi saldırganın dosya veya dizinlere verdiği izin ve kontrollere bağlı kalmak zorunda olacaktır.

3. Cross-Site Scripting (XSS) – XSS saldırıları, bir saldırgan web uygulaması vasıtasıyla zararlı yazılım içeren bir kodu göndermeyi başarabildiğinde gerçekleşir. XSS konusu oldukça uzun ve bu yazıya ait olmayan apayrı bir içeriğe sahip, bu nedenle yeri geldiğinde bununla ilgili detayları da öğrenip yazacağım. Bu yazı bağlamında bilinmesi gereken ise bu saldırıların da FTP kullanılarak yapılabildiği.

4. Dridex tabanlı Zararlı Yazılım Saldırıları – Dridex en bilinen bankacılık zararlı yazılımlarından bir tanesi ve 2014 yılından beri kendisine ya da varyantlarına (Dridex'i temel alan benzerlerine) rastlanıyor. Bu zararlı yazılım Windows kullanıcılarını bir Word ya da Excell e-posta ekini açmaları için sosyal mühendislik ile kandırıyor ve dosya içerisine gizlenmiş makroların çalışması sonucunda zararlı yazılım bilgisayara bulaşıyor. Dridex'in son geldiği noktada ise saldırganlar, e-posta ağ geçitleri ve FTP'ye güvenen ağ politikaları tarafından algılanmayı önlemek için FTP sitelerini ve kimlik bilgilerini kullanıyor.

İstismara ancak zafiyete bağlı olarak karar verilebileceğinden ve her şey duruma göre (versiyon bilgisi, nelerin açık ya da kapalı olduğu, sistemde başka hangi zafiyetlerin bulunduğu vs.) değiştiğinden bir liste hazırlayıp "şunları yaparsan kesin FTP'yi istismar edersin" demek mümkün değil. Sadece en sık kullanılan yöntemleri ve nelerin olabileceğini bilmek ise bakılması gereken noktalar için bir çıkış noktası olmaya yarıyor.

Gerisi daha fazla örnek ile karşılaştıkça yöntemler geliştirmeye bakıyor.

İşe yarar kaynaklar:

* Solaris 2.6/7.0 - IN.FTPD CWD 'Username' Enumeration

* FTP Anonymous Authentication 

* How to Prevent Sniffer Attacks with Encrypted FTP

* Exploiting simple network services in CTF’s

* Exploitation of Remote Services

29 Ocak 2021 Cuma

Telnet Nedir? SSH ile ne farkı var?

Telnet Nedir?

Telnet, "Telecommunications and Networks"ün kısaltmasıdır ve bir ağ protokolüdür. Varsayılan olarak 23 numaralı bağlantı noktasını (port) kullanan Telnet, özellikle yerel ağlarda kullanmak için tasarlanmıştır.

Gerekli olduğuna emin olmadığım bilgi: Telnet'in ilk adı Net ve ilk olarak 1969'da piyasaya sürülmüş. "Orijinal İnternet" olmasıyla ünlü. Anabilgisayarı uzak terminalden yönetmek için adeta "uzaktan kumanda" şeklinde kullanılmış. O günlerde Telnet sayesinde araştırma öğrencileri, profesörler vb. binadaki herhangi bir terminalden üniversite ana bilgisayarına "oturum açmalarını" sağlıyormuş. Bu sayede de bu insanların araştırma yapmak için oradan oraya kilometrelerce yol yürümesine gerek kalmamış. Her ne kadar günümüz teknolojisinde güvenlik nedenleriyle çok tutulmasa da 1969 yılı hayal edilebilirse nasıl devrim niteliğinde bir buluş olduğu anlaşılabilir. Ayrıca 1989 yılında World Wide Web olarak karşımıza çıkan internetin de yolunu açmış oldu. Her ne kadar teknolojisi çok eski olsa da günümüzde hala kullanan yerler bulunuyor.

Sonuç olarak Telnet; Telnet istemcisi aracılığıyla bağlantı kurma ve komut çalıştırmaya yarayan bir uygulama protokolü. Bu protokol vasıtasıyla bir telnet sunucusu barındıran uzak makinaya bağlantı kuruluyor ve bu sayede komut çalıştırılabiliyor.  

Telnet istemcisi sunucu ile bağlantı kurduktan sonra, istemci sanal bir terminal haline gelir ve uzak ana bilgisayarla etkileşim kurmaya izin verir.

Mesajlar düz metin (clear text) olarak gönderilir ve belirli bir güvenlik mekanizması barındırmaz bu nedenle bir çok uygulama ve servis için Telnet yerine SSH kullanılmaktadır. 

Telnet güvenli bir iletişim protokolü değildir çünkü herhangi bir güvenlik mekanizması kullanmaz ve verileri ağ / internet üzerinden şifreleri içeren düz metin biçiminde aktarır ve böylece herhangi biri bu önemli bilgileri almak için paketleri dinleyebilir (bkz. sniffing).

Kimlik doğrulama politikaları ve veri şifreleme teknikleri bulunmadığından büyük güvenlik tehdidine neden olan telnet artık ağ cihazlarına ve sunuculara genel ağ üzerinden erişmek için kullanılmamaktadır. 

Telnet nasıl çalışır?

Kullanıcı bir Telnet protokolü kullanarak sunucuya bağlanır. Bu bağlantının kurulması  Telnet'in bir komut istemcisine dönüşmesine neden olur. Kullanıcı daha sonra Telnet isteminde belirli Telnet komutlarını kullanarak sunucudaki komutları yürütür. 

Telnet nasıl yüklenir?

Telnet Kali'de varsayılan olarak gelmektedir ancak bulunmuyorsa aşağıdaki komut ile yüklenebilir:
 
$ sudo apt update
$ sudo apt install telnet
 

Telnet ile nasıl bağlantı kurulur?

Telnet sunucusuna bağlanmak için aşağıdaki komut kullanılabilir:

telnet [IP ADRESİ] [PORT]

Telnet hangi port üzerinde çalışır?

Varsayılan olarak PORT 23 üzerinde bulunur.

SSH ile Telnet arasındaki farklar nelerdir?

1. SSH daha güvenlidir. 

2. SSH verileri şifreler, Telnet düz metin şeklinde gönderir.

3. SSH kimlik doğrulama için bir "public key" kullanır.

4. SSH, Telnet'e kıyasla bant genişliğine biraz daha fazla yüklenir.

5. Telnet kullanımı yerini neredeyse tamamen SSH'a bırakmıştır. 

6. Genel olarak bakıldığında her ikisi de aynı işi yapar.

28 Ocak 2021 Perşembe

TryHackMe - Network Services - SMB Soru ve Cevapları


TryHackMe'nin Network Services odası SMB, Telnet ve FTP hakkında kısaca bilgilerin anlatıldığı ve aynı zamanda örnekler üzerinden gösterildiği başlangıç seviyesi bölümlerinden birtanesi.

SMB hakkında bir miktar burada anlatılanlar bir miktar da internetten araştırıp bulduklarım ile bir yazı yazdım, buradan ulaşılabiliyor.

Bu yazı içerisinde SMB ile ilgili herhangi bir zafiyeti istismar etmeye çalışmadan önce edinilmesi gerektiğini düşündüğüm aşağıdaki başlıklar bulunuyor:

- SMB nedir?

- SMB'yi çalıştıran nedir?

- SMB Bilgi Toplama (Enumeration) - nmap ve Enum4Linux araçlarının kullanımı

- En popüler SMB Zafiyetleri

ve son olarak "SMB Nasıl istismar edilir?" başlıklı bir kısım var ancak bu kısımda bunu ancak örnekler üzerinden yazılarda gösterebileceğimi yazmıştım, nitekim şimdi de onu yapıyorum.

TryHackMe'nin konu ile ilgili çalışmasının çözüm yolları ve çözümleri aşağıda yer alıyor.

Enumerating SMB (Bilgi Toplama Alıştırmaları)


1. Conduct an nmap scan of your choosing, How many ports are open?

İlk soru için bir nmap taraması yapıp kaç bağlantı noktasının açık bulunduğunu tespit etmemiz istenmiş. Bunun için herkes dilediği nmap komutu ile arama yapabilir, benim kullandığım komut ise aşağıdaki gibi:

┌──(sinem㉿sparta)-[~]
└─$ nmap -A -p- -T4 10.10.68.226  

 

Yukarıdaki ekranda görülebileceği gibi 22, 139 ve 445 numaralı portlar açık.


2.
What ports is SMB running on? 

Microsoft Windows işletim sistemleri Windows 95'den bu yana istemci ve sunucu SMB protokol desteği sağlamaktadır. Samba ise Unix işletim sistemleri için SMB protokolünü destekleyen açık kaynaklı bir sunucudur.

Nmap çıktılarına baktığımızda port 139 ve port 445 üzerinde Samba, 22 numaralı port üzerinde ise SSH çalışıyor. 

3. Let's get started with Enum4Linux, conduct a full basic enumeration. For starters, what is the workgroup name?    

Buradaki SMB yazısında SMB bilgi toplama aşamasında kullanılan Enum4Linux aracından bahsetmiştim. Bizden istenen bu aracı çalıştırıp bilgi toplamamız.
 
** Enum4Linux kullanımı oldukça kolay: enum4linux [option] [IP adresi] şeklinde komut yazılır.

"option" kısmına yazılacak olan flag'in ne olduğunu bilmek için enum4linux --help kullanılabilir.
 
Tüm opsiyonları tek seferde çalıştırmak ve bilgi toplama işlemini tek seferde gerçekleştirmek için "-a" opsiyonunu kullanıyorum. 

 -a        Do all simple enumeration (-U -S -G -P -r -o -n -i)
 
Workgroup bilgisinin de içerisinde yer alacağı komutum aşağıdaki gibi:

┌──(sinem㉿sparta)-[~]
└─$ enum4linux -a 10.10.68.226 
 


Yukarıdaki resimde görülebileceği gibi bizden istenen workgroup ismi de aynı yani workgroup.


4. What comes up as the name of the machine?   

Yukarıdaki ekran görüntüsünde POLOSMB olarak bu bilgiye de erişebiliyoruz.     
 

5. What operating system version is running?    

Hangi işletim sistemi versiyonunun kullanıldığını öğrenmek için OS information bölümüne bakmak gerekiyor ve burada "os version : 6.1" bilgisine erişebiliyoruz.



6. What share sticks out as something we might want to investigate?  


 
 
 
Yukarıdaki resimlerde görülebileceği gibi incelenmesi gerekiyor gibi görünen bilgi "profiles".


Exploiting SMB (İstismar Alıştırmaları)


7. What would be the correct syntax to access an SMB share called "secret" as user "suit" on a machine with the IP 10.10.10.2 on the default port?


Belirtilmiş olan kullanıcı adı ve IP kullanılarak bir SMB bağlantısı kurmamız istenmiş, bunun için yazılması gereken komutun nasıl yazılacağı ise hemen üstte bilgi olarak verilmiş.
 
smbclient //[IP]/[SHARE]

Followed by the tags:

-U [name] : to specify the user
-p [port] : to specify the port 

Soruda talep edilen komut ise aşağıdaki şekilde yazılmalı:

smbclient //10.10.10.2/secret -U suit -p 445


8. Great! Now you've got a hang of the syntax, let's have a go at trying to exploit this vulnerability. You have a list of users, the name of the share (smb) and a suspected vulnerability.

Lets see if our interesting share has been configured to allow anonymous access, I.E it doesn't require authentication to view the files. We can do this easily by:

- using the username "Anonymous"

- connecting to the share we found during the enumeration stage

- and not supplying a password. 

Şimdi yukarıda Enum4Linux ile bilgi toplama aşamasını tamamlamış olduğumuz makinada yer alan zafiyeti istismar etmeye çalışacağız. Bu aşamada kullanıcıların bir listesini de bulmuştuk. 

Buarada edinmiş olduğumuz bilgilerin son satırında aşağıda yer alan satırı da atlamamak gerekiyor:

[+] Enumerating users using SID S-1-22-1 and logon username '', password ''
S-1-22-1-1000 Unix User\cactus (Local User)

 

Soruda bize dosyalara erişim için authentication yani kimlik doğrulama gerekmediği, kullanıcı adı olarak "Anonymous" kullanabileceğimiz ve parola girmemizin gerekmediği söylenmiş ancak bu bilgi zaten Enum4Linux tarafından bize verilmişti.

Does the share allow anonymous access? Y/N?

Bu sorunun da yanıtı doğal olarak Y oluyor, yani evet anonymous olarak erişim mümkün. Bunun doğrulamasını yapmak için ise aşağıdaki komutu girebiliyoruz ve smb bağlantısının kurulduğunu görüyoruz. Parola sorulduğunda enter'a basıp geçebilir ya da buraya da anonymous yazabiliriz.
 
 ┌──(sinem㉿sparta)-[~]
└─$ smbclient //10.10.103.60/profiles -U anonymous -p 139                                                                                                                                                                              1 ⨯
Enter WORKGROUP\anonymous's password:
Try "help" to get a list of possible commands.
smb: \>

 
* Eğer bağlanmaya çalıştığınızda Error NT_STATUS_CONNECTION_REFUSED şeklinde bir hata alıyorsanız makinayı terminate edip ardından tekrar deploy ile yeni bir IP adresi almanız sorunu çözebilir.


9.
Great! Have a look around for any interesting documents that could contain valuable information. Who can we assume this profile folder belongs to? 


İlginç bir şeyler var mı diye etrafa bir bakmak lazım ancak bunu nasıl yapacağınızı bilmiyorsanız smb komut satırı açıldıktan sonra bir ? koyarak öğrenebilirsiniz:
 

 
Hangi komutları çalıştırabileceğimiz yukarıdaki resimde görülebiliyor.  
Bu liste içerisinde yer alan ls ise bize dizinlerde hangi dosyaların yer aldığını gösterecek. 

Bulunduğumuz dizin ile başlayalım:


Dizinde yer alan txt dosyası adeta göz alıyor.

İçini açmak için kullanacağımız komut ise cat ancak az evvel SMB'de cat komutunun çalıştırılabilen komutlar arasında olmadığını da öğrendik. 
 
Ne yapacağız? Dosyayı kendi makinamıza aktaracağız ve bunun için de get komutunu kullanacağız.

Dikkat edilmesi gereken bir diğer önemli konu dosya adında boşluklar olması. Bu şekilde bir dosya adı ile ilgili bir işlem yapmak istediğimizde yapacağımız en kolay şey dosya adını tırnak içinde yazmak:

Komutun genel kullanımı: $ get “Working From Home Information.txt” <output name>

Ben aşağıdaki şekilde bir çıktı istediğimden şu komutu giriyorum:

smb: \> get "Working From Home Information.txt" info.txt

getting file \Working From Home Information.txt of size 358 as info.txt (1.1 KiloBytes/sec) (average 1.1 KiloBytes/sec)
 
Metin dosyası artık benim makinamda ve cat ile açabilirim. Öncelikle dosyanın bulunduğum dizine aktarılıp aktarılmadığını ls ile kontrol ettikten sonra:



Profile folder kime aittir diye soruyordu soru, cevabın John Cactus olduğunu öğrenmiş olduk.
 

10. What service has been configured to allow him to work from home?

Bu soruyu yanıtlamak için yukarıdaki resimde yer alan yazıyı okumak yeterli. Pandemi nedeniyle bağlantıların ssh ile yapılacağı yazılmış.
 

11. Okay! Now we know this, what directory on the share should we look in?

Hangi dizine bakmamız gerektiğini nasıl anlayabiliriz? Tekrar smb bağlantısının kurulduğu terminale döndüğümüzde yanıtı orada bulabiliyoruz: .ssh

12. This directory contains authentication keys that allow a user to authenticate themselves on, and then access, a server. Which of these keys is most useful to us?

Bu dizinde bizi kullanıcıların ssh ile sunucuya bağlantı kurabilmek için kimlik doğrulama aşamasında ihtiyaç duyacakları anahtarlar bekliyor ve bunların hangisinin en çok işe yarayan olduğu sorulmuş. Bu sorunun yanıtını bilmiyordum ve Google'a sorarak öğrendim.

İlk yapılması gereken .ssh'ın içerisinde ne olduğunu görmek, bunun için de cd kullanıyoruz:
 
 
 
Görüldüğü gibi zaten araştırılabilecek 3 adet isim var, id_rsa şifreleme için kullanılan private key, id_rsa.pub ise public key'i içeriyor.
 
İşte ssh bağlantısı için de bu iki dosyaya ihtiyaç duyacağım ancak sorunun yanıtına gelecek olursak: id_rsa
 

13. Download this file to your local machine, and change the permissions to "600" using "chmod 600 [file]".

Now, use the information you have already gathered to work out the username of the account. Then, use the service and key to log-in to the server.
What is the smb.txt flag?

İlk yapılması istenen ile başlayalım ve id_rsa'i kendi makinamıza bir alalım. Hatta elimiz değmişken id_rsa.pub'ı da alalım. Her ikisini de az evvel kullandığımız get komutunu aynı şekilde smb açık olan terminal vasıtasıyla yapacağız:

 
İsimlerini privatekey.txt ve publickey.txt koyduğum dosyaları kendi makinama attım.
 
Şimdi soruda istenen ikinci adıma geldim. Kendi makinamda işlem yaptığım terminale geçip dosyanın yetkilerini değiştireceğim:
 
┌──(sinem㉿sparta)-[~]
└─$ chmod 600 privatekey.txt

Ve son olarak da bulmuş olduğun kullanıcı adı ve key dosyalarını kullanarak ssh ile bağlantıyı kur denilmiş. Bunu yapmak için kullanıcı adı lazım ve kullanıcı adı John Cactus değil. Bu yazının üst kısımlarında bir yerde Enum4Linux çıktılarının son satırında yer alan bir bilginin önemli olabileceğini söylemiştim, kullanıcı adı orada verilmişti: cactus.
 
Geriye smb.txt flag'ı almak kaldı. Bunun için ssh bağlantısını yapmayı deneyelim:
 
SSH şu şekilde kullanılıyor:
 
$ ssh -i <output name> username@<IP> 

Ben komutu şöyle giriyorum:
 
┌──(sinem㉿sparta)-[~]
└─$ ssh -i privatekey.txt cactus@10.10.103.60
 
Aşağıdaki resme bakılırsa ben de artık kaktüsüm 🌵



Flag için ise bulunduğum dizindeki dosyaları görmek amacıyla ls komutunu kullanıyor ve smb.txt'yi orada bulunca da cat komutuyla açıp mutlu sona ulaşıyorum. 
 
 


John the Ripper ile Şifre Kırmak

  JOHN THE RIPPER ARACIYLA ŞİFRE KIRMAK  John The Ripper, açık kaynak ve ücretsiz bir şifre kırma aracı. Her ne kadar Unix için çıkmış ols...