Bir e-posta şablonuna HTML enjeksiyonu
Bir şirket adına e-posta gönderilsin mi? Birçok büyük şirkette kolayca ödül kazanmamı sağlayan bu güvenlik açığını şu şekilde buldum.
Merhaba avcılar . Buradaki amaç , içeriği ve dolayısıyla HTML şablonunu değiştirme/özelleştirme yeteneğiyle bir şirket adına - e-posta adresinden - e-posta gönderebilmektir .
Böyle bir güvenlik açığının etkisi nedir?
Bu güvenlik açığının etkisi önemli olabilir; bir saldırgan, kullanıcıların platforma duydukları güvenden yararlanarak onları sahte sitelere (kimlik avı vb.) yönlendirebilir ve hatta hesaplarından istenmeyen eylemler gerçekleştirmeye zorlayabilir. Programlar genellikle bu güvenlik açığının önem derecesini düşük ile orta arasında değerlendirir .
O nasıl çalışır?
HTML enjeksiyonu, bir uygulamanın kullanıcı girişini kabul ettiği ve ardından girişi HTML'ye katıştırdığı bir güvenlik açığıdır. Saldırgan, kullanıcı girişinden HTML enjekte edebilir, böylece kötü niyetli kodları uygulama tarafından oluşturulan genel şablona gömülür.
Bunun nedeni, kullanıcı girişinin yetersiz şekilde sterilize edilmesidir. Düzeltmesi çok kolaydır, ancak çoğu zaman radarın altına girer - özellikle bu saldırı vektörü - böcek avcılarının zevkine göre.
Geliştiriciler için ünlü altın kural: Kullanıcı girdilerine asla güvenmeyin.
Farklı saldırı vektörlerinin ve istismarın tanımlanması
Bu güvenlik açığını tespit etmek için yapılacak ilk şey, uygulamada e-posta gönderen bir özellik bulmaktır: çoğu uygulamada şirket ekiplerine istek göndermek için "Bize ulaşın" bölümü veya "Yardım" bölümü bulunur. Bu özellikler en temel olanlardır ve liste kapsamlı değildir, uygulamanın yapısına bağlı olarak farklı e-posta gönderme işlevleri bulunabilir.
Bu işlevler bulunduktan sonra , çeşitli kriterlerin varlığı açısından test edilmeli ve kontrol edilmelidir :
Şirketin teknik personeline bir talep (yardım talebi) göndermeye izin veren bir form örneğini ele alacağız.
[1] Formu gönderirken bir e-posta alacak mıyım (formda belirtilen e-posta adresine veya talebin gönderildiği hesaba bağlı e-posta adresine)?
Değilse - emin olun çünkü bu biraz zaman alabilir - o zaman daha fazla aramanıza gerek yoktur. Bir şablona kod enjekte etmeyi ummadan önce, söz konusu şablonun hala var olması gerekir.
[2] Formu gönderirken bir e-posta alırsam, formda/sorguda herhangi bir e-posta adresi belirtebilir miyim?
Güvenlik açığından yararlanmak için diğer insanları hedefleyebilmek gerekir, böylece söz konusu form, tercih ettiğim e-postayı belirtmeme izin verir veya formu göndermek için bağlanmak gerekir ve bu nedenle e-posta otomatik olarak şu adrese gönderilir: e-posta adresi bağlı hesaba bağlanır :
Bu durumda, isteği tercih ettiğiniz proxy'de durdurun ve e-posta adresinizin HTTP isteğinde (prensipte POST) olmadığını kontrol edin ve onu istediğiniz e-posta adresiyle değiştirmeyi deneyin.
[3] Formda verilen bilgilerden bazıları alınan e-postaya yansıtılıyor mu?
Durum böyle değilse, hesabınıza bağlı olmanız durumunda, örneğin kullanıcı adı, soyadı veya ad gibi bazı kişisel bilgilerinizin e-postaya yansıtılıp yansıtılmadığını kontrol edin.
Bu durumda, yansıyan bilgi(ler)i değiştirin ve yükünüzü oraya girmeye çalışın. Söz konusu bilgiler başvuruda yorumlanmasa bile e-postada yorumlanabilir , buna ikinci dereceden enjeksiyon denir , enjeksiyon doğrudan formun kullanıcı girişlerinden değil, başka yerde kaydedilen bilgilerden yapılır. , örneğin hesapta.
Değilse, kod enjekte etmeyi veya hatta herhangi bir filtreyi atlamayı deneyemeyiz.
[4] Son adım, söz konusu şablon tarafından yorumlanacak HTML kodunu enjekte etmeye çalışmaktır.
Daha önce bahsedildiği gibi, bu tür bir güvenlik açığı genellikle gözden kaçar ve bazı uygulamalarda ne ön uç ne de arka uç yan filtreler bulunur ve HTML kodunu içeren basit bir yük yeterlidir:
vul<strong>ne</strong>rable
,
ve bağlantıya bir düğme görünümü vermek için css'nin yanı sıra
Belirli bir karakter için bir filtreyi atlamakta sorun mu yaşıyorsunuz? Şuna baksana :https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/XSS%20Injection/README.md
Bu benim ilk yazımdı, okuduğunuz için teşekkürler. Herhangi bir sorunuz varsa, bana bildirmekten çekinmeyin.
Twitter hesabım:https://twitter.com/blank_cold

![Bağlantılı Liste Nedir? [Bölüm 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































