SMTP Smuggling Saldırısı Nedir?
SMTP Smuggling, bir e-posta iletisinin veri akışı içinde başka bir e-posta iletisini gizleyerek gönderen bir siber saldırıdır. Bu, saldırganların sahte e-posta adreslerinden e-posta göndermelerine ve e-posta güvenlik önlemlerini, özellikle de Gönderen Politikası Çerçevesi (SPF), Alanlar için Kimlik Yönetimi (DKIM) ve E-posta Kimlik Doğrulama (DMARC) protokollerini atlatmalarına olanak tanır.
Her güvenlik açığında her SMTP sunucusu etkilenmez. CVE-2023-51764, CVE-2023-51765 ve CVE-2023-51766 güvenlik açıklarından belirli konfigürasyona sahip Exim, Sendmail ve Postfix sunucuları etkilenmektedir.
Güvenlik açığı Exim, Postfix ve Sendmail e-posta sunucularının veri sonu işaretlerini (end of data) nasıl işlediğiyle ilgili bir tutarsızlıktan yararlanmaktadır. Bu sunucular, <CR><LF> ve <LF> kombinasyonlarını her ikisini de geçerli end of data olarak kabul etmektedir. Bu güvenlik açığı yıllar önce Sendmail’de standart <CR><LF>’ye ek olarak standart olmayan <LF> satır sonuna izin verilerek ortaya çıkarılmıştır.
Tutarsızlık Exim, Sendmail ve Postfix sunucularının <LF> ya da <CR><LF>’yi desteklemesi ama diğer bazı popüler e-posta sunucularının(örn. Microsoft’s outlook.com) desteklememesi nedeniyle oluşur.
Bu tutarsızlıktan yararlanarak, bir saldırgan, sahte bir e-posta iletisini gizlemek için bir e-posta mesajına <LF> veya <CR><LF> işaretleri ekleyebilir. Bu, sunucuların e-posta iletisini yanlış bir şekilde sonlandırmasına ve saldırganın sahte e-posta iletisini güvenlik önlemlerine takılmadan iletebilmesine neden olur.
Bu durum, saldırganın kimlik avı saldırıları, zararlı yazılım yayma veya veri hırsızlığı gibi çeşitli kötü amaçlı amaçlar için sahte e-postalar kullanmasına olanak tanır.
Güvenlik Açığından Etkilenen Sürümler ve Çözüm Önerileri
CVE-2023-51764 Postfix
3.8.4’e kadar olan Postfix sunucuları, smtpd_data_restrictions=reject_unauth_pipelining ve smtpd_discard_ehlo_keywords=chunking (veya son sürümlerde bulunan diğer belirli seçenekler) ile yapılandırılmadığı sürece SMTP Smuggling saldırısına izin verir.
Geçici Çözüm Önerisi:
Tüm Postfix sürümlerinde:
main.cf:
smtpd_data_restrictions = reject_unauth_pipelining
smtpd_discard_ehlo_keywords = chunking, silent-discard
Postfix 3.9, 3.8.1, 3.7.6, 3.6.10 ve 3.5.20 sürümlerinde:
main.cf:
smtpd_forbid_unauth_pipelining = yes
smtpd_discard_ehlo_keywords = chunking, silent-discard
Postfix 3.8.1, 3.7.6, 3.6.10 ve 3.5.20’de smtpd_forbid_unauth_pipelining geriye dönük uyumluluk için varsayılan olarak devre dışıdır.
Uzun Vadeli Çözüm Önerisi:
Postfix sunucusu en son sürüme güncellenmelidir.
Postfix 3.8.4, 3.7.9, 3.6.13 ve 3.5.23 sürümleri için uzun vadeli bir düzeltme mevcuttur.
Önerilen ayarlar şunlardır:
main.cf:
smtpd_forbid_bare_newline = yes
smtpd_forbid_bare_newline_exclusions = $mynetworks
CVE-2023-51765 Sendmail
Sendmail 8.14.7 ve öncesi sürümler güvenlik açığından etkilenmektedir.
Çözüm Önerisi:
Sendmail sunucusu en son sürüme güncellenmelidir.
CVE-2023-51766 Exim
4.97.1 öncesi Exim sürümlerinde, belirli PIPELINING/CHUNKING yapılandırmalarında SMTP Smuggling saldırısına izin vermektedir.
Çözüm Önerisi:
Exim sunucusu en son sürüme güncellenmelidir.
Exim konfigürasyonunda PIPELINING ve CHUNKING özellikleri devre dışı bırakılarak daha güvenli hale getirilebilir.
PIPELINING özelliği, bir e-posta sunucusunun birden fazla e-posta isteğini aynı anda işlemesine olanak tanır. Bu, SMTP Smuggling saldırıları için bir fırsat yaratabilir.
CHUNKING özelliği, bir e-posta mesajının çok büyük parçalara bölünmesine olanak tanır. Bu, SMTP Smuggling saldırıları için bir fırsat yaratabilir.
Referanslar:
https://nvd.nist.gov/vuln/detail/CVE-2023-51764
https://nvd.nist.gov/vuln/detail/CVE-2023-51765
https://nvd.nist.gov/vuln/detail/CVE-2023-51766
https://www.postfix.org/smtp-smuggling.html
https://www.tenable.com/cve/CVE-2023-51764
https://www.tenable.com/cve/CVE-2023-51765
https://www.tenable.com/cve/CVE-2023-51766