Sızma Testlerinde ve Denetimlerde En Çok Karşılaşılan Servisleri Değerlendirme: SMTP, POP3 ve IMAP

0
287
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 SMTP, POP3 ve IMAP 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.

 

SMTP: Simple Mail Transfer Protocol [TCP/25, TCP\2525, TCP\587] && Secure SMTP (SSL / TLS) [TCP\465, TCP\25, TCP\587, TCP\2526]

Elektronik posta (e-posta, email) göndermek için kullanılır. Basit Posta Aktarım Protokolü olarak çevrilebilir.

Örnek SMTP istemcileri olarak Outlook, Eudora, Kmail, Thunderbird, Evolution, Sylpheed sıralanabilir.

 

Servise ait banner okunabilir.

  • telnet HedefIP HedefPort
  • nc -nv HedefIP HedefPort
  • Nmap: banner
  • MSF: auxiliary/scanner/smtp/smtp_version

 

En önemli SMTP komutları aşağıdaki gibidir.

  • HELP: Komutlar listelenir.
  • HELO: SMTP sunucusu ile SMTP iletişimi başlatılır.
  • EHLO: Genişletilmiş SMTP iletişimi için kullanılır.
  • AUTH: İstemcinin kimlik doğrulaması için kullanılır.
  • MAIL FROM: E-posta göndericisi belirtilir.
  • RCPT TO: E-posta alıcısı belirtilir.
  • DATA: E-postanın içeriği belirtilir. E-posta içeriği, “.” ifadesi içeren satır ile tamamlanmış olur.
  • SUBJECT: E-postanın konusu belirtilir.
  • QUIT: Oturum sonlandırılır.
  • VRFY: E-posta kutusu alıcısı doğrulanır.
  • EXPN: E-posta listesi doğrulanır.
  • STARTTLS: SMTP iletişimi TLS üzerinden başlatılır.
  • RSET: E-posta iletişimi kesilir.

 

SMTP üzerinden mail gönderilebilir.

  • sendEmail -f gonderici@GondereninEtkiAlani.com -t alici@AlaninEtkiAlani.com -cc alici-cc@AlaninEtkiAlani.com -bcc alici-bcc@AlaninEtkiAlani.com -s HedefIP -u ElektronikPostaKonusu -M ElektronikPostaIcerigi -a GonderilecekDosyaEki.pdf -xu Kullanici -xp Parola
  • MSF: auxiliary/client/smtp/emailer
  • FakeSMTP: https://github.com/Nilhcem/FakeSMTP
    • java -jar fakeSMTP-VERSION.jar -s -b -p HedefPort HedefIP -o SonucDizini

 

SMTP trafiği dinlenebilir.

  • MSF: auxiliary/server/capture/smtp

 

Sunucunun adı ve etki alanı tespit edilebilir.

  • Nmap: smtp-ntlm-info –script-args smtp-ntlm-info.domain=EtkiAlaniAdi
  • MSF: auxiliary/scanner/smtp/smtp_ntlm_domain

 

SMTP Relay tespiti gerçekleştirilebilir.

  • Nmap: smtp-open-relay –script-args smtp-open-relay.domain=EtkiAlaniAdi
  • MSF: auxiliary/scanner/smtp/smtp_relay

 

Desteklenen SMTP komutları listelenebilir.

  • Nmap: smtp-commands –script-args smtp-commands.domain=EtkiAlaniAdi

 

SMTP sorguları gönderilebilir.

  • MSF: auxiliary/fuzzers/smtp/smtp_fuzzer

 

Geçerli kullanıcılar tespit edilebilir.

  • Nmap: smtp-enum-users –script-args smtp-enum-users.methods={EXPN,RCPT,VRFY} –> Kimlik doğrulaması yoksa
  • MSF: auxiliary/scanner/smtp/smtp_enum
  • smtp-user-enum -M SMTPKomutu -D EtkiAlaniAdi -U Kullanicilar.liste -T HedefIPler.liste -p HedefPort
  • ismtp -h HedefIP:HedefPort -e Kullanicilar.liste

 

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

  • Nmap: smtp-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • Kaba kuvvet araçları
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIPler.liste -s HedefPort smtp
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIPler.liste -n HedefPort -M smtp
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIPler.liste -p smtp:HedefPort -oA Sonuc
    • patator smtp_login host=HedefIP user=FILE1 password=FILE0 0=Kullanicilar.liste 1=Parolalar.liste -x ignore:fgrep=’incorrect password or account name’

 

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

  • Arkakapı
    • Nmap: smtp-strangeport
  • YPOPS 0.6 [CVE-2004-1558]
    • MSF: exploit/windows/smtp/ypops_overflow1
  • Exim < 4.69 (BOF) [CVE-2010-4344] && Exim < 4.72 (Hak Yükseltme) [CVE-2010-4345]
    • Nmap: smtp-vuln-cve2010-4344 –script-args=”smtp-vuln-cve2010-4344.exploit”
    • Nmap: smtp-vuln-cve2010-4344 –script-args=”exploit.cmd=’KOMUT'”
  • Postfix SMTP (Cyrus SASL kütüphesini kullanan) [CVE-2011-1720]
    • Nmap: smtp-vuln-cve2011-1720
  • 4.70 < Exim < 4.75 (DKIM) [CVE-2011-1764]
    • Nmap: smtp-vuln-cve2011-1764
  • Exim – Dovecot LDA [OSVDB-93004]
    • MSF: exploit/linux/smtp/exim4_dovecot_exec
    • Exploit-DB: 25297.txt
  • Postfix SMTP 4.2.x < 4.2.48 [CVE-2014-6271]
    • Exploit-DB: 34896
  • Exim GHOST # glibc = 2.2 ve 2.x < glibc < 2.18 [CVE-2015-0235]
    • MSF: exploit/linux/smtp/exim_gethostbyname_bof

 

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

  • /etc/mail/sendmail.cf
  • /etc/mail/submit.cf: SMTP istemcisinin yapılandırma dosyası

 

 

POP3: Post Office Protocol [TCP/110] && POP3S [TCP/995]

Başlık ve içeriğin birlikte olacak şekilde elektronik posta (e-posta, email) almak (posta kutusundaki mailleri çekmek) için kullanılır. İlk iki sürümünden ziyade günümüzde 3. sürümü kullanılmaktadır. “Posta Ofis Protokolü” olarak çevrilebilir. POP3 kullanılarak sunucudaki postaların kendisi veya bir kopyası alınabilir. Birden fazla sistemden maillerin okunduğu durumda, postanın bir kopyasının sunucuda tutulma seçeneğinin kullanılması gerekir. Ayrıca POP3 ile sunucudaki e-posta alınabilir; sunucuya e-posta eklenemez. Bu sebeple, tek yönlü veri iletişimi olduğu söylenebilir.

 

Servise ait banner okunabilir.

  • telnet HedefIP HedefPort
  • nc -nv HedefIP HedefPort
  • Nmap: banner
  • MSF: auxiliary/scanner/pop3/pop3_version

 

En önemli POP3 komutları aşağıdaki gibidir.

  • USER: Kullanıcı adı belirtilir
  • PASS: Parola belirtilir.
  • QUIT: Oturum sonlandırılır.
  • STAT: Tüm mesajların adeti ve boyutu belirtilir.
  • LIST: Mesajın numarası ve boyutu belirtilir.
  • RETR: Numarası belirtilen mesaj alınır (indirilir).
  • DELE: Numarası belirtilen mesaj silinir.
  • NOOP: Bağlantı bir şey yapılmadan açık olarak bekletilir.
  • RSET –> Posta kutusu sıfırlanır.

 

Gönderilen sorgularına cevaplara göre POP3 implementasyonunun (komutlar vb) özellikleri tespit edilebilir.

  • Nmap: pop3-capabilities

 

POP3 trafiği dinlenebilir.

MSF: auxiliary/server/capture/pop3

 

Sunucunun adı ve etki alanı tespit edilebilir.

  • Nmap: pop3-ntlm-info

 

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

  • Nmap: pop3-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • MSF: auxiliary/scanner/pop3/pop3_login
  • Kaba kuvvet araçları
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIPler.liste -s HedefPort pop3
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIPler.liste -n HedefPort -M pop3
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIPler.liste -p pop3:HedefPort -oA Sonuc
    • patator pop3_login host=HedefIP user=FILE1 password=FILE0 0=Kullanicilar.liste 1=Parolalar.liste -x ignore:fgrep=’incorrect password or account name’

 

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

  • Seattle Lab Mail 5.5 [CVE-2003-0264]
    • MSF: exploit/windows/pop3/seattlelab_pass
    • Exploit-DB: 638.py, 643.c, 646.c
  • Cyrus – Gentoo 2006.0 Linux 2.6 [CVE-2006-2502]
    • MSF: exploit/linux/pop3/cyrus_pop3d_popsubfolders

 

 

IMAP: Internet Message Access Protocol [TCP/143] && IMAP SSL (IMAPS) [TCP/993]

İçerik olmadan sadece başlığı (header) olacak şekilde elektronik posta (e-posta, email) almak için kullanılır. İlk üç sürümünden ziyade günümüzde 4. sürümü kullanılmaktadır. İnternet Mesaj Erişim Protokolü olarak çevrilebilir. İstemci tarafında yapılan işlemler ile IMAP sunucu başlığında da güncelleme olduğu için çift yönlü veri iletişimi olduğu söylenebilir.

 

Servise ait banner okunabilir.

  • telnet HedefIP HedefPort
  • nc -nv HedefIP HedefPort
  • Nmap: banner
  • MSF: auxiliary/scanner/imap/imap_version

 

Gönderilen sorgularına cevaplara göre POP3 implementasyonunun (komutlar vb) özellikleri tespit edilebilir.

  • Nmap: imap-capabilities

 

IMAP trafiği dinlenebilir.

  • MSF: auxiliary/server/capture/imap

 

Sunucunun adı ve etki alanı tespit edilebilir.

  • Nmap: imap-ntlm-info

 

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

  • Nmap: imap-brute –script-args userdb=Kullanicilar.liste,passdb=Parolalar.liste
  • Kaba kuvvet araçları
    • hydra -t 2 -L Kullanicilar.liste -P Parolalar.liste -M HedefIPler.liste -s HedefPort imap
    • medusa -t 2 -T 2 -U Kullanicilar.liste -P Parolalar.liste -H HedefIPler.liste -n HedefPort -M imap
    • ncrack -g CL=2 -U Kullanicilar.liste -P Parolalar.liste -iL HedefIPler.liste -p imap:HedefPort -oA Sonuc
    • patator imap_login host=HedefIP user=FILE1 password=FILE0 0=Kullanicilar.liste 1=Parolalar.liste -x ignore:fgrep=’incorrect password or account name’

 

Kaynaklar:

https://bitvijays.github.io/LFF-IPS-P2-VulnerabilityAnalysis.html#id10
http://www.belgeler.org/rfc/rfc2821-s41.html
http://adak.com.tr/tr/intranet-telnette-pop3-ile-e-posta-yonetimi/

 

 

CEVAP VER

Yorumunuzu giriniz
İsminizi giriniz