Django XSS - может ли это произойти на стороне сервера (views.py)? - PullRequest
0 голосов
/ 11 ноября 2018

Насколько я понимаю, Django имеет отличные настройки по умолчанию, чтобы минимизировать риск возникновения атаки XSS по размеру клиента, например, если в вашем шаблоне было <p>Hello {{ user.username }}</p>, где пользователь мог ввести что угодно для своего имени пользователя.

Я не вижу ссылок на XSS в клиентских файлах Python. Верно ли мое понимание того, что нет серьезных опасений для XSS-атаки на стороне клиента?

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

email = EmailMessage( ExtendedUser.objects.filter(user__username=username)[0].email_subject, ExtendedUser.objects.filter(user__username=username)[0].email_content, 'me@mysite.com', ['me@mysite.com'] ) email.content_subtype = "html" email.send()

В подобных ситуациях нужно ли убирать какие-либо теги или что-либо дезинфицировать? Я не уверен, когда мне нужно беспокоиться о данных, вводимых злонамеренными пользователями.

РЕДАКТИРОВАТЬ: Я знаю, что проект Django пишет: «Атаки XSS позволяют пользователю вводить сценарии на стороне клиента в браузеры других пользователей». Мне интересно, есть ли какие-либо причины на стороне клиента для удаления введенных пользователем данных вредоносных тегов.

1 Ответ

0 голосов
/ 11 ноября 2018

Вы должны посмотреть в документации для {%csrft token%} тег

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