Специалисты из центра компьютерной безопасности Штутгартского университета (RUS-CERT) обнаружили слабое место в некоторых модулях аутентификации для серверов Apache.
Указанные модули используются в качестве дополнительного средства, позволяющего системным администраторам упростить механизм идентификации пользователей на сервере. Модули добавляют к идентификационному механизму Apache возможность сверять пароли пользователей по реляционной базе данных на основе SQL-запросов (вместо того, чтобы хранить имена и пароли для каждого пользователя в отдельных файлах).
При этом некоторые из таких модулей оставляют возможность атаковать систему с помощью вредоносного SQL-запроса и таким образом получить из базы персональные данные пользователей, или даже получить неавторизованный доступ к серверу.
Специалисты RUS-CERT нашли подобную уязвимость в следующих модулях аутентификации (хотя и предупреждают, что это, возможно, не все) -
Обычно программисты, создавая такие модули, вставляют в них дополнительный механизм проверки запроса на наличие "вредных" последовательностей управляющих символов. Однако в указанных модулях такая проверка не проводится. Дело осложняется тем, что с различными базами данных (Oracle, MySQL и PostgreSQL) найденная "дыра" работает по-разному.
Во вторник RUS-CERT выпустил патч для PostgreSQL, который отлавливает вредоносные запросы. В отчете об уязвимых модулях аутентификации также предлагаются другие версии этих модулей, в которых "дыра" уже зашита.