nvd,anchore_overrides
Hedgedoc
Уязвимости
13
Эксплуатируемые
0
Критический
1
Высокий
3
Топ продуктов
Топ уязвимостей
CVE-2021-29475HedgeDoc (ранее известный как CodiMD) — это редактор Markdown для совместной работы с открытым исходным кодом. Злоумышленник может получать произвольные файлы из файловой системы при экспорте заметки в PDF. Поскольку внедрение кода должно происходить в виде содержимого заметки, для этого эксплойта требуется, чтобы злоумышленники могли изменять заметку. Это повлияет на все экземпляры, в которых включен экспорт в PDF. Эта проблема была исправлена https://github.com/hedgedoc/hedgedoc/commit/c1789474020a6d668d616464cb2da5e90e123f65 и доступна в версии 1.5.0. Запуск экземпляра CodiMD/HedgeDoc с помощью `CMD_ALLOW_PDF_EXPORT=false` или установка `"allowPDFExport": false` в config.json может смягчить эту проблему для тех, кто не может выполнить обновление. Этот эксплойт работает, потому что, хотя PhantomJS на самом деле не отображает ссылки `file:///` на сам PDF-файл, он все равно использует их внутри, и утечка возможна и проста через рендеринг JavaScript. Последствия довольно серьезные, поскольку злоумышленник может прочитать файл `config.json` CodiMD/HedgeDoc, а также любые другие файлы в файловой системе. Несмотря на то, что предлагаемый вариант развертывания Docker сам по себе не содержит большого количества интересных файлов, файл `config.json` по-прежнему часто содержит конфиденциальную информацию, учетные данные базы данных и, возможно, секреты OAuth среди прочего.
CVE-2020-26287HedgeDoc — это платформа для совместной работы, предназначенная для написания и обмена документами в формате markdown. В HedgeDoc до версии 1.7.1 злоумышленник может внедрять произвольные теги `script` в заметки HedgeDoc, используя диаграммы mermaid. Наша политика безопасности содержимого предотвращает загрузку скриптов из большинства мест, но `www.google-analytics.com` разрешен. Используя Google Tag Manager, можно внедрить произвольный JavaScript и выполнить его при загрузке страницы. В зависимости от конфигурации экземпляра злоумышленнику может не потребоваться аутентификация для создания или редактирования заметок. Проблема устранена в HedgeDoc 1.7.1. В качестве обходного пути можно запретить `www.google-analytics.com` в заголовке `Content-Security-Policy`. Обратите внимание, что могут существовать другие способы использования внедрения тега `script`.
CVE-2023-38487HedgeDoc — это программное обеспечение для создания заметок Markdown для совместной работы в режиме реального времени. До версии 1.9.9 API HedgeDoc 1 можно использовать для создания заметок с псевдонимом, соответствующим идентификатору существующих заметок. Затронутая существующая заметка больше не будет доступна и будет фактически скрыта новой.
Если включена функция freeURL (путем установки параметра конфигурации `allowFreeURL` или переменной среды `CMD_ALLOW_FREEURL` в значение `true`), любой пользователь с соответствующими разрешениями может создать заметку, отправив POST-запрос к конечной точке API `/new/<ALIAS>`. Параметр `<ALIAS>` можно установить равным идентификатору существующей заметки. HedgeDoc не проверял, соответствует ли предоставленное значение `<ALIAS>` действительному идентификатору существующей заметки, и всегда разрешал создание новой заметки. Когда посетитель пытался получить доступ к существующей заметке, HedgeDoc сначала искал заметку с соответствующим псевдонимом, прежде чем выполнять поиск с использованием идентификатора, поэтому доступна только новая заметка.
В зависимости от настроек разрешений экземпляра HedgeDoc, уязвимость может быть использована только зарегистрированными пользователями или всеми пользователями (включая незарегистрированных). Эксплойт требует знания идентификатора целевой заметки. Злоумышленники могут использовать эту проблему для представления пользователю измененной копии исходной заметки, например, заменив ссылки вредоносными. Злоумышленники также могут использовать эту проблему для предотвращения доступа к исходной заметке, что приведет к отказу в обслуживании. Данные не теряются, поскольку исходное содержимое затронутых заметок все еще присутствует в базе данных.
Эта проблема была исправлена в версии 1.9.9. В качестве обходного пути отключение режима freeURL предотвращает использование этой проблемы. Влияние можно ограничить, ограничив создание заметок freeURL доверенным зарегистрированным пользователям, включив `requireFreeURLAuthentication`/`CMD_REQUIRE_FREEURL_AUTHENTICATION`.
CVE-2020-26286HedgeDoc — это платформа для совместной работы, предназначенная для написания и обмена документами в формате markdown. В HedgeDoc до версии 1.7.1 не прошедший проверку подлинности злоумышленник может загружать произвольные файлы в хранилище для загрузки, включая файлы HTML, JS и PHP. Проблема устранена в HedgeDoc 1.7.1. Однако следует убедиться, что ваше хранилище загруженных файлов содержит только разрешенные файлы, поскольку загруженные файлы все еще могут обслуживаться. В качестве обходного пути можно заблокировать конечную точку `/uploadimage` в вашем экземпляре, используя ваш обратный прокси. И/или ограничить MIME-типы и имена файлов, обслуживаемых из хранилища загруженных файлов.
CVE-2024-45308HedgeDoc - это приложение для совместной работы с заметками в формате markdown в режиме реального времени с открытым исходным кодом. При использовании HedgeDoc 1 с MySQL или MariaDB можно создавать заметки с псевдонимом, совпадающим с идентификатором существующих заметок. В этом случае к затронутой существующей заметке больше нельзя получить доступ, и она эффективно скрывается новой заметкой. Когда функция freeURL включена (путем установки параметра конфигурации `allowFreeURL` или переменной среды `CMD_ALLOW_FREEURL` в значение `true`), любой пользователь с соответствующими разрешениями может создать заметку с произвольным псевдонимом, например, получив к ней доступ в браузере. При использовании MySQL или MariaDB можно создать новую заметку с псевдонимом, который соответствует идентификатору другой заметки в нижнем регистре. В этом случае HedgeDoc всегда представляет новую заметку пользователям, поскольку эти базы данных выполняют сопоставление без учета регистра и псевдоним в нижнем регистре находится первым. Эта проблема затрагивает только экземпляры HedgeDoc, которые используют MySQL или MariaDB. В зависимости от настроек разрешений экземпляра HedgeDoc, эта проблема может быть использована только зарегистрированными пользователями или всеми (включая незарегистрированных) пользователями. Для эксплуатации требуется знание идентификатора целевой заметки. Злоумышленники могут использовать эту проблему для представления пользователю манипулированной копии исходной заметки, например, заменив ссылки вредоносными. Злоумышленники также могут использовать эту проблему для предотвращения доступа к исходной заметке, вызывая отказ в обслуживании. Данные не теряются, так как исходное содержимое затронутых заметок все еще присутствует в базе данных. Пользователям рекомендуется обновиться до версии 1.10.0, в которой эта проблема устранена. Пользователи, которые не могут обновиться, могут отключить режим freeURL, который предотвращает эксплуатацию этой проблемы. Влияние также можно ограничить, ограничив создание заметок freeURL только доверенными, зарегистрированными пользователями, включив `requireFreeURLAuthentication`/`CMD_REQUIRE_FREEURL_AUTHENTICATION`.
CVE-2026-25642HedgeDoc - это приложение с открытым исходным кодом, в режиме реального времени, совместная, маркировка. До 1.10.6 файлы, подаваемые ниже /uploads/ endpoint, не использовали более строгую систему безопасности. Это привело к слишком открытому контенту-безопасности и, кроме того, открыло возможность размещения вредоносного интерактивного веб-контента (например, поддельных форм входа) с использованием файлов SVG. Эта уязвимость зафиксирована в 1.10.6.
CVE-2021-39175HedgeDoc — это платформа для написания и обмена markdown. В версиях до 1.9.0 не прошедший проверку подлинности злоумышленник может внедрить произвольный JavaScript в заметки докладчика функции режима слайдов, встроив iframe, содержащий вредоносный код, в слайды или встроив экземпляр HedgeDoc на другую страницу. Проблема исправлена в версии 1.9.0. Нет известных обходных путей, кроме обновления.
CVE-2021-29503HedgeDoc - это платформа для написания и обмена markdown. HedgeDoc до версии 1.8.2 уязвим для межсайтового скриптинга с использованием YAML-метаданных заметки. Злоумышленник с правом записи в заметку может встраивать HTML-теги в раздел метаданных Open Graph заметки, в результате чего интерфейс отрисовывает тег script как часть раздела `<head>`. Если ваш экземпляр не запрещает гостям редактировать заметки, эта уязвимость позволяет не прошедшим проверку подлинности злоумышленникам внедрять JavaScript в заметки, разрешающие редактирование гостями. Если ваш экземпляр запрещает гостям редактировать заметки, эта уязвимость позволяет прошедшим проверку подлинности злоумышленникам внедрять JavaScript на любые страницы заметок, к которым у них есть доступ на запись. Эта уязвимость устранена в версии 1.8.2. В качестве обходного пути можно отключить редактирование гостями до следующего обновления.
CVE-2021-21259HedgeDoc - это программное обеспечение с открытым исходным кодом, которое позволяет создавать заметки Markdown для совместной работы в режиме реального времени. В HedgeDoc до версии 1.7.2 злоумышленник может внедрить произвольный JavaScript в заметку HedgeDoc, который выполняется при просмотре заметки в режиме слайдов. В зависимости от конфигурации экземпляра злоумышленнику может не потребоваться аутентификация для создания или редактирования заметок. Проблема исправлена в HedgeDoc 1.7.2. В качестве обходного пути запретите загрузку JavaScript со сторонних сайтов, используя заголовок `Content-Security-Policy`. Обратите внимание, что это нарушит работу некоторого встроенного контента.
CVE-2021-29474HedgeDoc (ранее известный как CodiMD) — это редактор Markdown для совместной работы с открытым исходным кодом. Злоумышленник может читать произвольные файлы `.md` из файловой системы сервера из-за неправильной проверки входных данных, что приводит к возможности выполнения обхода относительного пути. Чтобы проверить, затронуты ли вы, вы можете попробовать открыть следующий URL: `http://localhost:3000/..%2F..%2FREADME#` (замените `http://localhost:3000` базовым URL-адресом вашего экземпляра, например, `https://demo.hedgedoc.org/..%2F..%2FREADME#`). Если вы видите отображаемую страницу README, вы используете затронутую версию. Атака работает из-за того, что внутренний маршрутизатор передает закодированный в URL псевдоним в функцию `noteController.showNote`. Эта функция передает входные данные непосредственно в служебную функцию findNote(), которая передает их в функцию parseNoteId(), которая пытается разобраться в noteId/псевдониме и проверить, существует ли уже заметка и, если да, был ли обновлен соответствующий файл на диске. Если заметка не существует, вызывается функция создания заметки, которая передает этот непроверенный псевдоним с добавленным `.md` в функцию path.join(), которая считывается из файловой системы в последующей подпрограмме и предоставляет предварительно заполненное содержимое новой заметки. Это позволяет злоумышленнику не только читать произвольные файлы `.md` из файловой системы, но и наблюдать за изменениями в них. Полезность этой атаки можно считать ограниченной, поскольку в основном файлы markdown используют расширение `.md`, и все файлы markdown, содержащиеся в проекте hedgedoc, такие как README, в любом случае являются общедоступными. Если действуют другие средства защиты, такие как chroot, контейнер или надлежащие разрешения на файлы, полезность этой атаки довольно ограничена. На уровне обратного прокси-сервера можно принудительно выполнить URL-декодирование, что предотвратит эту атаку, поскольку маршрутизатор не примет такой путь.
CVE-2022-24837HedgeDoc — это веб-редактор Markdown для совместной работы с открытым исходным кодом и самостоятельным размещением. Изображения, загруженные с помощью HedgeDoc версии 1.9.1 и более поздних версий, имеют перечисляемое имя файла после загрузки, что приводит к потенциальной утечке информации о загруженных документах. Это особенно актуально для личных заметок и влияет на все серверные части загрузки, кроме Lutim и imgur. Эта проблема была исправлена в версии 1.9.3 путем замены генерации имени файла на UUIDv4. Если вы не можете обновиться до HedgeDoc 1.9.3, можно заблокировать POST-запросы к `/uploadimage`, что отключит будущие загрузки.
CVE-2025-32391В HedgeDoc, открытом приложении для создания заметок, обнаружена уязвимость XSS, возникающая при загрузке вредоносного SVG-файла и его открытии в новой вкладке. Уязвимость затрагивает версии HedgeDoc до 1.10.3 и устранена в версии 1.10.3 [1]. Для устранения рекомендуется обновиться до версии 1.10.3 или добавить заголовки Content-Disposition: attachment и Content-Security-Policy: default-src 'none' для всех маршрутов под /uploads.
Источники:
- [1] https://github.com/hedgedoc/hedgedoc/security/advisories/GHSA-3983-rrqh-mvx5
CVE-2025-66629HedgeDoc - это приложение с открытым исходным кодом, в режиме реального времени, совместное, маркировка заметок. До 1.10.4 некоторые конечные точки OAuth2 от HedgeDoc для поставщиков социальных входов, таких как Google, GitHub, GitLab, Facebook или Dropbox, не имеют защиты от CSRF, поскольку они не отправляют параметр состояния и не проверяют реакцию с помощью этого параметра. Эта уязвимость зафиксирована в разделе 1.10.4.