Недостаток в протоколе аутентификации, используемом некоторыми базами данных Oracle, может сделать системы открытыми для удаленных атак.
Об уязвимости сообщила Application Security Inc. Исследователь, работающий в компании, Эстебан Мартинес Файо, разработал способ, с помощью которого злоумышленники могут принудительно получить информацию о токене, предоставленном сервером Oracle, для определения пароля пользователя. Затем злоумышленник может войти в систему как аутентифицированный пользователь и предпринять несанкционированные действия с базой данных. Файо разработал инструмент, который может взломать некоторые простые пароли за несколько часов с помощью обычного ПК, и запланировал веб-семинар, посвященный этой уязвимости, на 16 октября 2012 года.
Уязвимость затрагивает Oracle Database 11g Release 1 и 2 и возникает из-за того, как протокол аутентификации защищает ключи сеанса, когда пользователи пытаются войти в систему. Когда клиентский компьютер связывается с сервером, сервер генерирует случайный ключ в качестве ключа сеанса и отправляет это обратно клиенту. Уязвимость означает, что злоумышленник может сопоставить определенный сеансовый ключ с определенным паролем. Проблема возникает из-за того, что сервер генерирует и отправляет ключ на первом этапе до завершения аутентификации. Сервер также отправляет соль, набор случайных битов, которые будут предоставлены вместе с паролем на следующем этапе процесса аутентификации. Злоумышленник просто закрывает соединение, получив сеансовый ключ и соль, поэтому в журнале сервера не регистрируется неудачная попытка входа в систему, поскольку аутентификация никогда не завершается. Получив сеансовый ключ и соль, они могут затем использовать их как часть атаки методом грубой силы, когда пароли генерируются и проверяются.
Файо обнаружил проблему, заметив, что попытки входа в систему с неправильными паролями обрабатываются по-разному на стороне клиента и сервера. Он выяснил, что ключ сеанса в некотором роде дает утечку информации о хэше пароля. Он говорит, что проблема серьезна, потому что ее очень легко использовать.
«Злоумышленнику просто нужно отправить несколько сетевых пакетов или использовать стандартный клиент Oracle, чтобы получить ключ сеанса и соль для конкретного пользователя. Затем может быть проведена атака, аналогичная атаке взлома хэша пароля SHA-1 ».
Фактически Oracle выпустила новую версию протокола аутентификации, версию 12, которая не подвержена уязвимости, и решение состоит в том, чтобы применить исправление и изменить конфигурацию сервера, чтобы использовать только новую версию протокола. Oracle не планирует исправлять ошибку в версии 11.1 протокола.