ChurchCRM — это система управления церковью с открытым исходным кодом. До версии 7.1.0 уязвимость SQL-инъекции существовала в PropertyTypeEditor.php, части функциональности администрирования для управления категориями типов свойств (Люди → Свойства человека/Семейные свойства). Уязвимость возникла, когда функция LegacyFilterInput(), которая удаляет HTML и экранирует SQL, была заменена на sanitizeText(), которая удаляет только HTML.
Значения, предоставленные пользователем из полей «Имя» и «Описание», объединяются непосредственно в необработанные запросы INSERT и UPDATE без экранирования SQL. Это позволяет любому аутентифицированному пользователю с ролью MenuOptions (разрешение персонала, не являющегося администратором) выполнять слепое внедрение по времени и извлекать любые данные из базы данных, включая хэши паролей всех пользователей. Эта уязвимость исправлена в версии 7.1.0.
Показать оригинальное описание (EN)
ChurchCRM is an open-source church management system. Prior to 7.1.0, a SQL injection vulnerability exists in PropertyTypeEditor.php, part of the administration functionality for managing property type categories (People → Person Properties / Family Properties). The vulnerability was introduced when legacyFilterInput() which both strips HTML and escapes SQL — was replaced with sanitizeText(), which strips HTML only. User-supplied values from the Name and Description fields are concatenated directly into raw INSERT and UPDATE queries with no SQL escaping. This allows any authenticated user with the MenuOptions role (a non-admin staff permission) to perform time-based blind injection and exfiltrate any data from the database, including password hashes of all users. This vulnerability is fixed in 7.1.0.
Характеристики атаки
Последствия
Строка CVSS v3.1