На этой неделе команда разработчиков Roots выпустила плагин wp-password-bcrypt , который использует bcrypt вместо хеширования паролей MD5 . По данным Института разработки программного обеспечения CMU, известные и использованные слабости MD5 сделали его «криптографически взломанным и непригодным для дальнейшего использования».
В сообщении , анонсирующем плагин, Скотт Уолкиншоу объяснил, почему хэш-функция WordPress по умолчанию MD5 + соление небезопасна:
MD5 считается «сломанным» из-за его уязвимости к коллизиям, но он более фундаментально неисправен для паролей: он слишком дешев и быстр для вычисления хэша.
bcrypt , с другой стороны, намного медленнее, чем MD5, что делает его более дорогим для вычислений. Этот более надежный метод хэширования паролей встроен в PHP 5.5, но WordPress поддерживает 5.2.4 в качестве минимально необходимой версии. Это не позволяет WordPress использовать более новую функцию password_hash.
Уолкиншоу цитирует билет четырехлетней давности, который предлагает способ для WordPress, позволяющий разработчикам плагинов более легко перейти от метода хеширования с солью MD5 к более безопасному bcrypt. Джеймс Маккей оставил отрезвляющий комментарий к этому билету, выступая за то, чтобы ядро WordPress сделало bcrypt стандартом по умолчанию для сред, которые его поддерживают:
bcrypt необходимо сделать стандартным вариантом по умолчанию во всех системах, которые его поддерживают. Идея о том, что администраторам WordPress придется искать плагин или настраивать параметры конфигурации, чтобы сделать это, пугает меня просто потому, что большинство из них не будут этого делать, если (а) они не разбираются в веб-безопасности, (б) они не знают, что WordPress использует слабую альтернативу по умолчанию, и (c) они считают, что это проблема, о которой стоит беспокоиться.
Люди часто недооценивают серьезность алгоритмов MD5 и SHA-* как «менее безопасных». Они не просто менее безопасны: благодаря разработкам в области взлома паролей за последние несколько лет с использованием программного обеспечения на базе GPU и FPGA они совершенно бесполезны . Такие программы, как oclHashCat, даже имеют возможность специально взламывать пароли в базах данных WordPress — и скорость, с которой они могут это делать, ужасает. Если вы не используете надежный алгоритм хэширования паролей по умолчанию, вы подвергаете своих пользователей неприемлемому и ненужному риску.
К сожалению, действие по заявке было приостановлено из-за проблемы с UX. Обсуждение тикета продолжается, но участники еще не выбрали пути улучшения.
— Так что же держит выключатель? — сказал Уолкиншоу. «Бюрократия и нежелание воплотить это в жизнь. Все согласны с тем, что на самом деле это проблема UX. На данный момент нет технической причины, по которой это невозможно сделать».
Тем временем, если вы хотите внедрить безопасные хешированные пароли bcrypt, вы можете использовать плагин wp-password-bcrypt от команды Roots. Это защитит от компрометации базы данных. Если ваша база данных WP попадет в чужие руки, злоумышленникам будет гораздо труднее попытаться подобрать зашифрованный пароль методом грубой силы по сравнению с паролем на основе MD5.
Плагин повторно хэширует пароли пользователей с помощью bcrypt, когда пользователи входят в систему. Если пользователь никогда не входит в систему, пароль остается хэшированным с помощью MD5. Его также можно удалить без негативных последствий. Никаких настроек — просто работает в фоновом режиме.
«Мы намеренно старались сделать плагин как можно более простым, чтобы не было сюрпризов», — сказал Уолкиншоу. «Очевидно, что мы рекомендуем людям сначала протестировать плагин и, надеюсь, сначала разместить его на промежуточном сайте».
Плагин можно установить, автоматически загрузив его с помощью Composer или вручную скопировав wp-password-bcrypt.php в папку mu-plugins. Он также скоро будет добавлен в шаблон проекта Roots Bedrock , чтобы обеспечить более безопасный уровень безопасности по умолчанию.
Поскольку до крайнего срока соблюдения GDPR ЕС осталось всего 178 дней , многие владельцы сайтов…
Команда Gutenberg создаст станцию тестирования удобства использования в WordCamp US, где посетители смогут принять участие…
Сегодня компания 10up опубликовала предварительную версию своего плагина Distributor , нового решения для синдикации контента…
На этой неделе был выпущен Gutenberg 1.8 с несколькими заметными улучшениями, которые предоставят разработчикам плагинов…
На этой неделе был выпущен Gutenberg 15.5 с новыми функциями и улучшениями возможностей полнофункционального редактирования…
DesktopServer выпустил версию 3.8.4 своего программного обеспечения для локальной разработки. Эта версия включает в себя…