Ошибка DJANGO_BLOCKED_BY_XSS_AUDITOR

#django

#django

Вопрос:

У меня есть FormView, который позволяет нашим пользователям редактировать содержимое HTML-страницы.

 class PrelanderUpdate(LoginRequiredMixin, SuccessMessageMixin, UpdateView):
    model = Prelander
    form_class = PrelanderForm

    template_name = 'generic/form.html'
    success_message = 'Prelander updated successfully.'

    def get_success_url(self):
        return reverse('mediabuying:prelander:list')
  

Это моя форма:

 class PrelanderForm(forms.ModelForm):
    class Meta:
        model = Prelander
        fields = [
            'is_active', 'vertical', 'angle',
            'description', 'static_prefix', 'content'
        ]
        help_texts = {
            'description': '<i>Keep this short:</i> This will be shown in the dropdown',     # noqa
            'content': 'HTML code only.',
            'static_prefix': 'folder name in s3',
        }

    vertical = forms.ChoiceField(choices=Choices.Verticals)

    def clean_content(self):
        data = self.cleaned_data['content']
        if '<meta name="referrer" content="always">' not in data:
            raise forms.ValidationError(
                'Missing <meta name="referrer" content="always">'
            )
        return data
  

Когда я редактирую content прелендера, если у прелендера нет <meta name="referrer" content="always"> и выдается ошибка проверки, я вижу эту ошибку:

введите описание изображения здесь

Почему это происходит? Почему это происходит только при возникновении исключения?

(Содержимое prelander представляет собой HTML-страницу)

Комментарии:

1. как вы отображаете содержимое своей формы? Когда происходит ошибка ValidationError, предположительно, вы повторно отображаете свою страницу с content полем. Если это содержит необработанный HTML со скриптами, chrome заблокирует его, поскольку именно так злоумышленники выполняют XSS-атаки. Вы могли бы добавить X-XSS-Protection: 0 заголовок, чтобы предотвратить проверку XSS, хотя я не уверен, что это работает в последних версиях браузеров.

2. Я отображаю ее в текстовом поле.