Да, он есть в списке. И это единственный плагин из discoursehosting.
Помню, что он должен быть активен, чтобы позволить «старым» пользователям войти, верно?
Но теперь вопрос скорее в том, была ли установка скомпрометирована или это просто отображается такое сообщение. На данный момент сайт отключен для безопасности.
Вместе с этим плагином вот список того, что я использую:
Перевод поста с французского форума через Google Translate:
Псевдо-исследователь безопасности получил доступ к старому репозиторию Git для плагина, используемого форумом, и перехватил его, чтобы просто отобразить это сообщение.
Затронутый репозиторий (GitHub - discoursehosting/discourse-migratepassword: Немного безопасности) был проверен, и вредоносный код в нём отсутствует (это просто демонстрация концепции).
На самом деле URL этого репозитория изменился (сейчас он доступен по адресу GitHub - communiteq/discourse-migratepassword: Поддержка мигрированных хешей паролей), а пользователь просто воссоздал репозиторий discoursehosting/discourse-migratepassword, который ранее перенаправлял на communiteq/discourse-migratepassword, чтобы разместить там нерелевантный код. Мы использовали старый URL, поэтому и пострадали.
Если это правда, то ладно… Я изменил URL плагина на communiteq и в данный момент пересобираю его. Но мне нужно разобраться в этом подробнее (так как я не программист, я не могу быть уверен на 100%).
Это уязвимость в GitHub, относящаяся к классу эксплойтов под названием «Repojacking» (перехват репозитория).
Мы рекомендуем всем проверить URL-адреса плагинов в GitHub и заменить каждое вхождение discoursehosting на communiteq.
Предыстория:
В 2019 году нам пришлось переименовать нашу компанию с Discoursehosting на Communiteq. При таких обстоятельствах GitHub автоматически перенаправляет URL-адреса репозиториев на их новое местоположение, до тех пор, пока кто-либо не создаст репозиторий с тем же именем. В этот момент новый репозиторий получит приоритет.
Раньше GitHub помечал такие репозитории как «ушедшие из эксплуатации» и запрещал создание репозитория с тем же именем.
О предыдущем эксплойте рассказывается здесь. Похоже, что это исправление больше не эффективно.
Мы подали жалобу в службу злоупотреблений GitHub и постараемся удалить этот репозиторий всеми доступными средствами.
На данный момент скомпрометированный плагин только показывает сообщение и оставляет безвредный файл в /tmp.
Так что ничего плохого не произошло — пока. Важно изменить URL вашего плагина перед повторной сборкой.
Чтобы смягчить потенциальное влияние на пользователей стандартной установки, мы добавили код для обнаружения github.com/discoursehosting/ и прерывания любых пересборок/обновлений.
---
ОШИБКА: Файл конфигурации containers/app.yml содержит ссылки на скомпрометированную организацию GitHub: github.com/discoursehosting
Пожалуйста, удалите все ссылки на эту организацию из вашего файла конфигурации.
Для получения дополнительной информации см. https://meta.discourse.org/t/374703/6
---
Я хочу искренне извиниться за сбои, вызванные моими действиями в отношении репозитория плагинов. Пытаясь привлечь внимание к проблеме безопасности, я допустил серьёзные ошибки, нарушившие кодекс поведения.
В дальнейшем я гарантирую, что мои действия будут соответствовать принципам ответственного раскрытия информации, и благодарю за возможность извлечь из этого урок.
Ещё раз приношу свои искренние извинения за возникшие неудобства.
Следующий не слишком ответственный поступок заключался в том, что вы не связались со мной или с командой CDCK в частном порядке, когда отказались от этого имени пользователя, поскольку за последние три часа кто-то другой мог увидеть ваш пост и зарегистрировать его.
В принципе, следует исходить из того, что ничто не является безопасным, но и это не работает хорошо.
Всё несколько дней назад стало известно, что аккаунт NPM одного из разработчиков, стоящего за пакетом ESLint Prettier, был скомпрометирован, и он опубликовал новые скомпрометированные версии некоторых популярных пакетов:
Эти пакеты затем были использованы в других пакетах, поскольку многие утверждают, что всегда следует обновляться до последних версий.
После того как я увидел эту тему, я предложил функцию для внедрения проверки подписи плагинов и компонентов тем при их обновлении: Plugin and theme component signing
Это не остановит компрометацию ключа, но хотя бы сделает часть цепочки поставок более надёжной. В конечном счёте всё ещё возможно, что будут подтянуты скомпрометированные сторонние библиотеки. Дополнительные зависимости не всегда хорошо видны.
Не уверен, что это всё ещё работает. У меня был плагин, указывающий на скомпрометированный URL GitHub, и сообщение об ошибке во время пересборки лишь сообщало, что не удалось получить репозиторий, с дополнительными деталями о версии gem или чём-то подобном. (Не могу вставить точную информацию, так как она слишком далеко в истории прокрутки из-за другого шума во время последующих сборок.)
Похоже, что URL/репозиторий сейчас вообще не существует, что хорошо (по крайней мере, пока кто-то другой не воссоздаст его), но сообщение об ошибке сэкономило бы много времени.