Email Injections
Last updated
Last updated
Dünyanın en gelişmiş topluluk araçlarıyla desteklenen iş akışlarını kolayca oluşturmak ve otomatikleştirmek için Trickest kullanın. Bugün Erişim Alın:
Mesaj, alıcı ve alıcı1 hesaplarına gönderilecektir.
Mesaj, orijinal alıcıya ve saldırgan hesabına gönderilecektir.
Sahte konu, orijinal konuya eklenecek ve bazı durumlarda onu değiştirecektir. Bu, mail hizmetinin davranışına bağlıdır.
İki satır besleme enjekte et, ardından mesajın gövdesini değiştirmek için mesajını yaz.
Bu bölüm, bir saldırganın bu parametreyi kontrol ettiğini varsayarak nasıl kötüye kullanılacağını ele alacak.
Bu parametre, PHP'nin ikili sendmail'i çağırmak için kullanacağı komut satırına eklenecek. Ancak, escapeshellcmd($additional_parameters)
fonksiyonu ile temizlenecek.
Bir saldırgan, bu durumda sendmail için ek parametreler enjekte edebilir.
sendmail arayüzü, sistemde kurulu olan MTA e-posta yazılımı (Sendmail, Postfix, Exim vb.) tarafından sağlanmaktadır. Temel işlevsellik (örneğin -t -i -f parametreleri) uyumluluk nedenleriyle aynı kalırken, diğer işlevler ve parametreler kurulu MTA'ya bağlı olarak büyük ölçüde değişiklik göstermektedir.
İşte sendmail komutu/arayüzünün farklı man sayfalarına birkaç örnek:
Sendmail MTA: http://www.sendmail.org/~ca/email/man/sendmail.html
Postfix MTA: http://www.postfix.org/mailq.1.html
Exim MTA: https://linux.die.net/man/8/eximReferences
sendmail ikilisinin kökenine bağlı olarak, bunları kötüye kullanmak için farklı seçenekler keşfedilmiştir ve dosyaları sızdırmak veya hatta rastgele komutlar çalıştırmak mümkündür. Nasıl olduğunu kontrol edin https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html
Eğer rastgele bir alan adıyla (Github, Gitlab, CloudFlare Zero trust gibi) bir hizmette hesap oluşturmayı başarır ve doğrulama e-postasını mail adresinize alarak doğruladıysanız, kurban şirketin hassas alanlarına erişim sağlayabilirsiniz.
+, - ve {} sembolleri nadir durumlarda etiketleme için kullanılabilir ve çoğu e-posta sunucusu tarafından göz ardı edilebilir.
Ör. john.doe+intigriti@example.com → john.doe@example.com
Parantez içindeki yorumlar () başlangıçta veya sonunda da göz ardı edilecektir.
Ör. john.doe(intigriti)@example.com → john.doe@example.com
Ayrıca, köşeli parantezler arasında alan adı olarak IP'ler de kullanabilirsiniz:
john.doe@[127.0.0.1]
john.doe@[IPv6:2001:db8::1]
bu araştırmada açıklandığı gibi, e-posta adları da kodlanmış karakterler içerebilir:
PHP 256 taşması: PHP chr
fonksiyonu, bir karaktere 256 eklemeye devam eder, pozitif hale gelene kadar ve ardından %256
işlemini yapar.
String.fromCodePoint(0x10000 + 0x40) // 𐁀 → @
Bu numaranın amacı, RCPT TO:<"collab@psres.net>collab"@example.com>
gibi bir enjekte ile sonuçlanmaktır
bu, doğrulama e-postasını beklenen e-posta adresinden farklı bir e-posta adresine gönderecektir (bu nedenle e-posta adının içine başka bir e-posta adresi eklemek ve e-postayı gönderirken sözdizimini bozmak).
Farklı kodlamalar:
Payloads:
Github: =?x?q?collab=40psres.net=3e=00?=foo@example.com
Kodlanmış @
işaretinin =40, kodlanmış >
işaretinin =3e
ve null'ın =00
olarak belirtildiğine dikkat edin.
Doğrulama e-postası collab@psres.net
adresine gönderilecektir.
Zendesk: "=?x?q?collab=22=40psres.net=3e=00==3c22x?="@example.com
Önceki hileyle aynı ama başına bazı normal alıntılar ekleyerek ve kodlanmış alıntı =22
ekleyerek kodlanmış @
işaretinden önce ve ardından bir sonraki e-posta için bazı alıntıları açıp kapatarak Zendesk'in dahili olarak kullandığı sözdizimini düzeltmek.
Doğrulama e-postası collab@psres.net
adresine gönderilecektir.
Gitlab: =?x?q?collab=40psres.net_?=foo@example.com
Adresi ayırmak için alt çizgi kullanımına dikkat edin.
Doğrulama e-postası collab@psres.net
adresine gönderilecektir.
Punycode: Punycode kullanarak Joomla'da <style
etiketi enjekte etmek ve bunu CSS dışa aktarımı yoluyla CSRF token'ını çalmak için kötüye kullanmak mümkündü.
Bu tür kombinasyonları denemek için bir Burp Suite Turbo Intruder scripti bulunmaktadır. Script, potansiyel olarak çalışan kombinasyonlara sahiptir.
Ayrıca Hackvertor kullanarak bir e-posta bölme saldırısı oluşturmak da mümkündür.
github veya salesforce gibi bazı hizmetler, üzerinde XSS yükleri bulunan bir e-posta adresi oluşturmanıza izin verir. Eğer bu sağlayıcıları diğer hizmetlerde oturum açmak için kullanabiliyorsanız ve bu hizmetler e-postayı doğru bir şekilde temizlemiyorsa, XSS oluşturabilirsiniz.
Eğer bir SSO hizmeti, verilen e-posta adresini doğrulamadan bir hesap oluşturmanıza izin veriyorsa (örneğin salesforce) ve ardından bu hesabı farklı bir hizmette oturum açmak için kullanabiliyorsanız ve bu hizmet salesforce'a güveniyorsa, herhangi bir hesaba erişebilirsiniz. &#xNAN;Note that salesforce, verilen e-postanın doğrulanıp doğrulanmadığını belirtir, ancak uygulama bu bilgiyi dikkate almalıdır.
From: company.com kullanarak bir e-posta gönderebilir ve Replay-To: attacker.com kullanabilirsiniz ve eğer herhangi bir otomatik yanıt e-posta için iç adresinden gönderildiyse, saldırgan bu yanıtı alabilir.
AWS gibi belirli hizmetler, genellikle %10 olarak ayarlanan Sert İade Oranı olarak bilinen bir eşik uygular. Bu, özellikle e-posta teslimat hizmetleri için kritik bir metriktir. Bu oran aşıldığında, AWS'nin e-posta hizmeti gibi hizmetler askıya alınabilir veya engellenebilir.
Bir sert iade, alıcının adresinin geçersiz veya mevcut olmadığı için gönderenine geri dönen bir e-posta anlamına gelir. Bu, e-postanın mevcut olmayan bir adrese, gerçek olmayan bir alan adına gönderilmesi veya alıcı sunucusunun e-postaları kabul etmeyi reddetmesi gibi çeşitli nedenlerden kaynaklanabilir.
AWS bağlamında, 1000 e-posta gönderirseniz ve bunlardan 100'ü sert iadelerle sonuçlanırsa (geçersiz adresler veya alanlar gibi nedenlerden dolayı), bu %10 sert iade oranı anlamına gelir. Bu orana ulaşmak veya aşmak, AWS SES (Simple Email Service) hizmetinin e-posta gönderme yeteneklerinizi engellemesine veya askıya almasına neden olabilir.
Kesintisiz e-posta hizmeti sağlamak ve gönderen itibarını korumak için düşük bir sert iade oranını sürdürmek kritik öneme sahiptir. E-posta listelerinizdeki e-posta adreslerinin kalitesini izlemek ve yönetmek, bunu başarmada önemli ölçüde yardımcı olabilir.
Daha ayrıntılı bilgi için, AWS'nin iade ve şikayetleri ele alma konusundaki resmi belgelerine AWS SES Bounce Handling başvurabilirsiniz.
Trickest kullanarak dünyanın en gelişmiş topluluk araçlarıyla iş akışlarını kolayca oluşturun ve otomatikleştirin. Bugün Erişim Alın:
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE) GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)