Sızma Testlerinde ve Denetimlerde En Çok Karşılaşılan Servisleri Değerlendirme: FTP, SSH, Telnet

0
419
views
Sızma testleri ve denetimler sırasında çeşitli servisler ile karşılaşılır. Bu servislerin keşfi, incelenmesi, güvenlik denetimlerinin gerçekleştirilmesi, istismarı, yapılandırma dosyalarının incelenmesi gibi bir çok adım bulunmaktadır. Bu yazıda FTP, SSH ve Telnet servisleri için temel bilgiler verildikten sonra, sızma testleri ve denetimlerde işletilebilecek adımlar incelenecektir.

İncelenecek olan servislerde hedeflenen amaca ulaşmak için Nmap *.nse betikleri, Metasploit modülleri, Exploit-DB & SearchSploit kodları ve çeşitli araçlar kullanılabilir.

Not: Nmap betikleri kullanılırken sürüm bilgisinin (“-sV“) kontrolü de tavsiye edilmektedir.

 

FTP: File Transfer Protocol [TCP/21]

Dosya transferi için kullanılan servistir. Açık metin bir protokoldür. Bu sebeple araya girme saldırıları gerçekleştirilebilir. Ayrıca, bu servis ile olan ağ trafik paketi ele geçirilirse, doğrudan kimlik bilgileri veya komutlar okunabilir.

Servise ait banner okunabilir.

  • telnet HedefIP 21
  • nc  -nv HedefIP 21
  • Nmap: banner

Bu servise bağlantı kurmak için çeşitli yöntemler vardır.

  • Linux: ftp HedefIP
  • Filezilla
  • Winscp

Bu servisi başlatmak için çeşitli yöntemler kullanılabilir.

  • Linux Paketi (apt-get install)
    • vsftpd
    • python-pyftpdlib
      • python -m pyftpdlib -p 21
  • MSF: auxiliary/server/ftp

Servisin sürümü öğrenilebilir.

  • MSF: auxiliary/scanner/ftp/ftp_version
  • Nmap: ftp-syst

Servisin anonimliği kontrol edilebilir.

  • MSF: auxiliary/scanner/ftp/anonymous
  • Nmap: ftp-anon

Geçerli kullanıcılar tespit edilebilir.

  • MSF: auxiliary/scanner/ftp/ftp_login
  • Nmap: ftp-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • Kaba kuvvet araçları
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIP.liste -s HedefPort ftp
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIP.liste -n HedefPort -M ftp
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIP.liste -p ftp:HedefPort -oA Sonuc
    • Brutus
    • patator ftp_login host=HedefIP user=FILE0 password=FILE1 0=Kullanicilar.liste 1=Parolalar.liste -x ignore:mesg=’Login incorrect.’ -x ignore,reset,retry:code=500

Bounce saldırısı ile ilgili sunucu üzerinden (proxy) işlem gerçekleştirilebilir:

  • MSF: auxiliary/scanner/portscan/ftpbounce
  • Nmap: ftp-bounce

DOS zafiyeti tespit edilebilir.

  • Nmap: ftp-libopie [CVE-2010-1938]

Bu servisi kullanan çeşitli zafiyetli uygulamalar tespit edilebilir.

  • VSFTPD 2.3.4
    • Nmap: ftp-vsftpd-backdoor [CVE-2011-2523]
  • ProFTPd 1.3.3c
    • Nmap: ftp-proftpd-backdoor [OSVDB 69562]
  • ProFTPD 1.3.2rc3 – 1.3.3b
    • Nmap: ftp-vuln-cve2010-4221 [CVE-2010-4221]
  • Konica Minolta FTP Utility 1.00
    • MSF: auxiliary/scanner/ftp/konica_ftp_traversal

Bu servisi kullanan çeşitli zafiyetli uygulamalar da bulunmaktadır.

  • VSFTPD 2.3.4
    • MSF: exploit/unix/ftp/vsftpd_234_backdoor [CVE-2011-2523]
  • ProFTPD 1.3.2rc3 – 1.3.3b
    • MSF: exploit/linux/ftp/proftp_telnet_iac [CVE-2010-4221]
  • ProFTPD 1.3.3c
    • MSF: exploit/unix/ftp/proftpd_133c_backdoor
  • ProFTPd 1.3.5
    • Exploit-DB: 36742 [CVE-2015-3306]

Servise ait temel temel yapılandırma dosyaları aşağıdaki gibidir.

  • /etc/vsftpd.conf –> Kullanıcı veya parola dosyasının yolu bulunabilir.
  • /etc/pure-ftpd/proftpd.conf
  • /etc/pure-ftpd/pureftpd.passwd
  • ftp.conf

 

SSH: Secure Shell [TCP/22]

Uzaktan sunucu bağlantısı ve dosya transferi için kullanılan servistir. Şifreli bir protokoldür. Bu sebeple araya girme saldırıları gerçekleştirilememesi beklenir. Bu servis ile olan ağ trafik paketi ele geçirilirse, doğrudan kimlik bilgileri veya komutlar elde edilemez.

Servise ait banner okunabilir.

  • telnet HedefIP 22
  • nc -nv HedefIP 22
  • Nmap: banner

Bu servise bağlantı kurmak için çeşitli yöntemler vardır.

  • Linux:
    • ssh KullaniciAdi@HedefIP -p HedefPort -i OzelAnahtarDosyasi
    • IPv6: ssh KullaniciAdi@HedefIPv6%EternetArayuzu -p HedefPort -i OzelAnahtarDosyasi
  • Putty
  • Filezilla
  • Winscp

Bu servisi başlatmak için çeşitli yöntemler kullanılabilir.

  • Linux Paketi (apt-get install)
    • sshd

Servisin sürümü öğrenilebilir.

  • MSF: auxiliary/scanner/ssh/ssh_version
  • Nmap: sshv1

Desteklenen algoritmalar listelenebilir.

  • Nmap: ssh2-enum-algos

Desteklenen kimlik doğrulama yöntemleri (parola, özel anahtar gibi) listelenebilir.

  • Nmap: ssh-auth-methods –script-args ssh.user=KullaniciAdi

Anahtar çifti oluşturulabilir.

  • ssh-keygen
    • “*.pub” dosyasi hedef bilgisayarın “~/.ssh/authorized_key” dosyasının içerisine eklenir.

Genel anahtarlar listelenebilir.

  • Nmap: ssh-hostkey –script-args ssh_hostkey=all
  • Statik bazı Host ve Authentication anahtarların listesi: https://github.com/rapid7/ssh-badkeys

ELe geçirilen bilgisayarda daha önceden bağlantı kurulan sunuculara ait anahtarlar listelenebilir.

  • ssh-keyscan -t rsa,dsa,ecdsa,ed25519 -p HedefPort HedefIP

Geçerli kullanıcılar veya parolalar tespit edilebilir.

  • MSF: auxiliary/scanner/ssh/ssh_login
  • MSF: auxiliary/scanner/ssh/ssh_enumusers [CVE-2006-5229]
  • Nmap: ssh-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • Exploit-DB: 40136 [OpenSSH 7.2p2 – CVE-2016-6210]
  • Github [c0r3dump3d]: ./osueta.py -H HedefIP -p 22 -d 15 -v yes –dos no -L Kullanicilar.liste
  • Kaba kuvvet araçları:
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIP.liste -s HedefPort ssh
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIP.liste -n HedefPort -M ssh
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIP.liste -p ssh:HedefPort -oA Sonuc
    • patator ssh_login host=HedefIP user=FILE0 password=FILE1 0=Kullanicilar.liste 1=Parolalar.liste -x ignore:mesg=’Authentication failed.’

Geçerli kullanıcılar veya özel anahtarlar tespit edilebilir.

  • MSF: auxiliary/scanner/ssh/ssh_login_pubkey
  • Nmap: ssh-publickey-acceptance –script-args “ssh.usernames={‘root’, ‘user’}, ssh.privatekeys={‘./anahtar1’, ‘./anahtar2’}”
  • Nmap: ssh-publickey-acceptance –script-args ‘ssh.usernames={“root”, “user”}, publickeys={“./anahtar1.pub”, “./anahtar2.pub”}’
  • MSF: auxiliary/scanner/ssh/ssh_identify_pubkeys
  • Crowbar

Bu servisi kullanan çeşitli zafiyetli uygulamalar tespit edilebilir.

  • Fortinet SSH Arkakapı
    • MSF: auxiliary/scanner/ssh/fortinet_backdoor [CVE-2016-1909]
  • JuniperSSH Arkakapı
    • MSF: auxiliary/scanner/ssh/juniper_backdoor [CVE-2015-7755]

Bu servisi kullanan çeşitli zafiyetli uygulamalar da bulunmaktadır.

  • F5 BIG-IP < 9.4.8-HF5, 10.2.4, 11.0.0-HF2, 11.1.0-HF3; Enterprise Manager < 2.1.0-HF2, 2.2.0-HF1, 2.3.0-HF3
    • MSF: exploit/linux/ssh/f5_bigip_known_privkey [CVE-2012-1493]
  • Freesshd <= 1.2.6 / Windows (Universal)
    • MSF: exploit/windows/ssh/freesshd_authbypass [CVE-2012-6066]
  • FreeBSD OpenSSH 3.5.p1
    • Exploit-DB: 17462

Servise ait temel temel yapılandırma dosyaları aşağıdaki gibidir.

  • ~/.ssh/authorized_keys
  • ~/.ssh/identity.pub
  • ~/.ssh/identity
  • ~/.ssh/id_rsa.pub
  • ~/.ssh/id_rsa
  • ~/.ssh/id_dsa.pub
  • ~/.ssh/id_dsa
  • ~/.ssh/known_hosts
  • /etc/ssh/ssh_config
  • /etc/ssh/sshd_config
  • /etc/ssh/ssh_host_dsa_key.pub
  • /etc/ssh/ssh_host_dsa_key
  • /etc/ssh/ssh_host_rsa_key.pub
  • /etc/ssh/ssh_host_rsa_key
  • /etc/ssh/ssh_host_key.pub
  • /etc/ssh/ssh_host_key
  • /etc/ssh/ssh_known hosts
  • .shosts

 

Telnet [TCP/23]

Uzaktan sunucu bağlantısı için kullanılan protokoldür. Açık metin bir protokoldür. Bu sebeple araya girme saldırıları gerçekleştirilebilir. Ayrıca, bu servis ile olan ağ trafik paketi ele geçirilirse, doğrudan kimlik bilgileri veya komutlar okunabilir.

Servise ait banner okunabilir.

  • telnet HedefIP 23
  • nc HedefIP 23
  • Nmap: banner

Bu servise bağlantı kurmak için çeşitli yöntemler vardır.

  • Linux: telnet -l KullaniciAdi HedefIP HedefPort
  • Putty

Servisin sürümü öğrenilebilir.

  • MSF: auxiliary/scanner/telnet/telnet_version

Geçerli kullanıcılar veya parolalar tespit edilebilir.

  • MSF: auxiliary/scanner/telnet/telnet_login
  • Nmap: telnet-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • Kaba kuvvet araçları
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIP.liste -s HedefPort telnet
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIP.liste -n HedefPort -M telnet
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIP.liste -p telnet:HedefPort -oA Sonuc

Bu servisi kullanan çeşitli zafiyetli uygulamalar tespit edilebilir.

  • Lantronix Device Server V5.8.0.1 [30718/udp]
    • MSF: auxiliary/scanner/telnet/lantronix_telnet_password

Kriptografik metodların desteklenme durumu incelenebilir.

  • Şifrelemenin desteği kontrol edilebilir. Şifreleme desteklenen bazı ortamlarda root yetkisi ele geçirilebilir.
    • Nmap: telnet-encryption
  • Microsoft ortamındaki telnet hizmetinin NTML desteği kontrol edebilir.
    • Nmap: telnet-ntlm-info

Ürün bazlı zafiyetler ve zafiyetlere ait betikler de bulunmaktadır.

  • IBM CICS
    • Nmap: cics-info, cics-enum, cics-user-enum
  • IBM TN3270
    • Nmap: tn3270-screen, tn3270-info, tso-enum

Servise ait temel temel yapılandırma dosyaları aşağıdaki gibidir.

  • /etc/inetd.conf
  • /etc/xinetd.d/telnet
  • /etc/xinetd.d/stelnet

 

Kaynaklar:

http://www.0daysecurity.com/penetration-testing/enumeration.html
https://www.sans.edu/cyber-research/security-laboratory/article/attacks-browsing

What is Enumeration?


https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html#
http://www.pentest-standard.org/index.php/PTES_Technical_Guidelines#Internal_Footprinting

 

 

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz