Budibase - это платформа с низким кодом с открытым исходным кодом. До 3.35.4 функции buildMatcherRegex()/сопоставлены в пакетах/backend-cor…
Budibase - это платформа с низким кодом с открытым исходным кодом. До 3.35.4 функции buildMatcherRegex()/сопоставлены в пакетах/backend-core/src/middleware/matchers.ts шаблоны маршрутов скомпилируются в незакрепленные регулярные выражения и тестируются на ctx.request.url, который включает полную строку запроса. Серийное пособие CSRF в Рабочей базе Budibase использует эту систему сопоставления, чтобы решить, следует ли пропускать валидацию токенов CSRF. Неаутентифицированный злоумышленник может подделывать изменяющие состояние перекрестные запросы против любой конечной точки API Worker, вводя шаблон публичного маршрута в строку запроса, в результате чего промежуточный программный обеспечение CSRF полностью пропускает проверку токена. Это позволяет совершать такие действия, как отправка приглашений администратора, изменение глобальной конфигурации и управление пользователями без действительного токена CSRF. Эта уязвимость исправлена в 3.35.4.
Продукт задаёт регулярное выражение таким образом, что данные сопоставляются или сравниваются некорректно.
https://cwe.mitre.org/data/definitions/185.html →Открыть в коллекции CWE →Злоумышленник изменяет поведение или состояние целевого приложения путём внедрения данных или синтаксиса команд через непроверяемые и нефильтруемые аргументы открытых сервисов или методов.
https://capec.mitre.org/data/definitions/6.html →Открыть в коллекции CAPEC →Атака данного типа эксплуатирует уязвимости программы, позволяющие злоумышленнику конкатенировать собственные команды с легитимными командами с целью атаки на другие ресурсы, такие как файловая система или база данных. Система, использующая фильтр или проверку входных данных на основе списка запрещённых значений, в отличие от проверки на основе разрешающего списка, уязвима для злоумышленника, способного предсказывать разделители (или их комбинации), отсутствующие в фильтре или списке запрещённых значений. Как и другие атаки внедрения, злоумышленник использует полезную нагрузку с разделителем команд в качестве точки входа для туннелирования через приложение и активации дополнительных атак посредством SQL-запросов, команд командного интерпретатора, сетевого сканирования и т. д.
https://capec.mitre.org/data/definitions/15.html →Открыть в коллекции CAPEC →Данная атака направлена на кодирование символов слеша. Злоумышленник пытается эксплуатировать распространённые проблемы фильтрации, связанные с использованием символов слеша, для получения доступа к ресурсам на целевом хосте. Системы на основе каталогов, такие как файловые системы и базы данных, как правило, используют символ слеша для обозначения перехода между каталогами или другими контейнерными компонентами. По неоднозначным историческим причинам ПК (и, как следствие, ОС Microsoft) используют обратный слеш, тогда как мир UNIX традиционно применяет прямой слеш. Шизофренический результат таков, что многие MS-системы обязаны понимать обе формы слеша. Это предоставляет злоумышленнику множество возможностей для обнаружения и использования распространённых проблем фильтрации. Цель данного шаблона — обнаружить серверное программное обеспечение, применяющее фильтры только к одному варианту, но не другому.
https://capec.mitre.org/data/definitions/79.html →Открыть в коллекции CAPEC →