Ограничения заголовков тем обходятся при изменении категории в сочетании с редактированием заголовка

Приоритет/Серьезность:

Средний

Платформа

Windows 11

Google Chrome 114.0.5735.90 (Официальная сборка) (64-разрядная)

Описание:

Через настройки администратора можно настроить несколько ограничений для заголовков тем. К ним относятся:

  • минимальная длина заголовка темы
  • минимальная энтропия заголовка
  • максимальное количество эмодзи в заголовке
  • разрешать дублирующиеся заголовки тем

Если пользователь при редактировании заголовка темы меняет категорию, проверки на соответствие этим ограничениям обходятся.

Шаги для воспроизведения:

  1. Нажмите кнопку «Создать тему».
  2. Добавьте текст в поле поста.
  3. Нажмите кнопку «Создать тему».
    :slightly_smiling_face: Появляется ошибка «Требуется заголовок».
  4. Введите подходящий заголовок в поле «Введите заголовок или вставьте ссылку здесь».
  5. Нажмите кнопку «Создать тему».
    :slightly_smiling_face: Тема создана.
  6. Нажмите на значок карандаша справа от заголовка темы.
    Откроется интерфейс редактирования темы.
  7. Измените заголовок на aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.
  8. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :slightly_smiling_face: Появляется диалоговое окно:

    Произошла ошибка: Заголовок кажется неясным, большинство слов содержат одни и те же буквы снова и снова?

  9. Нажмите кнопку «ОК» в диалоговом окне.
  10. Выберите другую категорию из выпадающего списка категорий.
  11. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :slightly_smiling_face: Появляется диалоговое окно:

    Произошла ошибка: Заголовок кажется неясным, большинство слов содержат одни и те же буквы снова и снова?

  12. Нажмите кнопку «ОК» в диалоговом окне.
  13. Нажмите кнопку X в диалоговом окне.
  14. Обновите страницу.
    :bug: Несмотря на противоположные указания, редактирование прошло успешно. Теперь у темы есть заголовок, нарушающий настройку минимальная энтропия заголовка.
  15. Нажмите на значок карандаша справа от заголовка темы.
    Откроется интерфейс редактирования темы.
  16. Измените заголовок на 🙃🙃🙃🙃🙃🙃🙃🙃 В этом заголовке много эмодзи.
  17. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :slightly_smiling_face: Появляется диалоговое окно:

    Произошла ошибка: В заголовке не может быть больше одного эмодзи

  18. Нажмите кнопку «ОК» в диалоговом окне.
  19. Выберите другую категорию из выпадающего списка категорий.
  20. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :bug: Редактирование прошло успешно. Теперь у темы есть заголовок с несколькими эмодзи, что нарушает настройку максимальное количество эмодзи в заголовке.
  21. Нажмите на значок карандаша справа от заголовка темы.
    Откроется интерфейс редактирования темы.
  22. Измените заголовок на заголовок, который уже используется другой темой на форуме.
  23. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :slightly_smiling_face: Появляется диалоговое окно:

    Произошла ошибка: Такой заголовок уже используется

  24. Нажмите кнопку «ОК» в диалоговом окне.
  25. Выберите другую категорию из выпадающего списка категорий.
  26. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :bug: Редактирование прошло успешно. Теперь у темы есть дублирующийся заголовок, что нарушает настройку разрешать дублирующиеся заголовки тем.
  27. Нажмите на значок карандаша справа от заголовка темы.
    Откроется интерфейс редактирования темы.
  28. Удалите текст из поля заголовка темы.
  29. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :slightly_smiling_face: Появляется диалоговое окно:

    Произошло несколько ошибок: 1) Заголовок не может быть пустым 2) Заголовок слишком короткий (минимум 15 символов) 3) Заголовок кажется неясным, большинство слов содержат одни и те же буквы снова и снова?

  30. Нажмите кнопку «ОК» в диалоговом окне.
  31. Выберите другую категорию из выпадающего списка категорий.
  32. Нажмите кнопку ✓ в интерфейсе редактирования темы.
    :bug: Редактирование прошло успешно. Теперь у темы нет заголовка, что нарушает настройку минимальная длина заголовка темы:
  33. Обновите страницу.
    :bug: Страница не загружается:

    Эта страница не работает

    try.discourse.org перенаправляет вас слишком много раз.
    Попробуйте очистить файлы cookie.
    ERR_TOO_MANY_REDIRECTS

Дополнительная информация

Мне удалось воспроизвести ошибку на try.discourse.org в «безопасном режиме».

5 лайков

Мне удалось воспроизвести раздел «aaaaaaaaaaaaaaaaaaaaaaaa» ошибки:
8mb.video-Bna-C9H6kDLL|видео

Я воспроизвёл проблему, и похоже, что это связано с некорректным slug темы.

Мне это кажется пограничным нарушением безопасности… Пользователь делает то, что ему запрещено.

Собираюсь скрыть это из публичного доступа и приоритизировать задачу внутри команды. Мы должны решить её в ближайшие пару недель.

3 лайка

Приношу извинения, если я не использовал подходящий рабочий процесс отчетности, sam.

1 лайк

Никаких проблем, этот случай находится на грани. Мы ещё не на 100% определили, заслуживает ли это статуса CVE, я просто проявляю особую осторожность.

4 лайка

Мне удалось воспроизвести все шаги, описанные в этой теме. Похоже, валидатор тем корректно добавляет необходимые ошибки, но транзакция обновления каким-то образом не проверяет валидность перед сохранением.

Главная проблема, связанная с этими ошибками, — это пустой заголовок темы (последний шаг), прежде всего потому, что страница будет постоянно перезагружаться (бесконечный цикл, который запускается отсюда). Кроме того, это в основном вопрос удобства использования, так как темы нельзя открыть со страницы /latest, поскольку ссылка на заголовок отсутствует.

2 лайка

@per1234 Спасибо за отчет. Вы должны были получить исправление этой проблемы.

3 лайка

Эта тема была автоматически закрыта через 2 дня. Новые ответы больше не принимаются.