Нужно ли экранировать символы при отправке электронных писем? - PullRequest
6 голосов
/ 11 сентября 2009

Я использую Контактную форму Django на веб-сайте, чтобы посетители могли отправлять электронные письма.

В настоящее время это экранирующие символы, поэтому одинарные и двойные кавычки преобразуются в ' и " соответственно. Письма были бы более читабельными, если бы кавычки отображались как ' и ".

Я понимаю, почему я никогда не должен размещать неэкранированный ввод от посетителей на своих веб-страницах из-за риска xss. Есть ли такой же риск с электронными письмами, или это нормально, чтобы отправлять входные данные посетителя без экранирования?

Ответы [ 2 ]

5 голосов
/ 11 сентября 2009

Если это письма электронной почты в формате HTML, то вы не возражаете против побега, так что я предполагаю, что это обычный текст? В этом случае вы хотите отключить цитирование. Вы можете обернуть тело вашего шаблона в

{% autoescape off %}
...
{% endautoescape %}

чтобы оставить своих персонажей в покое.

0 голосов
/ 11 сентября 2009

Я бы все равно закодировал их, чтобы они были в безопасности. Поскольку большинство почтовых клиентов допускают изображения, ничто не мешает кому-то использовать в сообщении тег img, чтобы сказать ... получить чей-либо IP-адрес.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...