Критическая брешь в Magento позволяла удаленно выполнить код на сервере

Критическая брешь в Magento позволяла удаленно выполнить код на сервере

Критическая брешь в Magento позволяла удаленно выполнить код на сервере

Компания Adobe залатала девять новых дыр в платформе Magento, на которой работают многие интернет-магазины. Две уязвимости оценены как критические: одна позволяет удаленно выполнить произвольный код на сервере, другая — получить доступ на чтение / запись к базе данных веб-приложения.

Согласно бюллетеню Adobe, уязвимость удаленного исполнения кода (CVE-2020-24407) возникла из-за возможности внедрения в систему вредоносного файла в обход списка расширений, разрешенных к загрузке. Второй опасный баг, CVE-2020-24400, относится к классу «инъекция SQL-кода» (SQLi); его первопричиной является неадекватная санация данных, вводимых пользователем. Удаленный злоумышленник может использовать этот недочет для чтения, удаления или изменения данных, а также захвата контроля над приложением посредством вредоносного запроса.

Эксплуатация обеих уязвимостей не требует предварительной аутентификации, однако автор атаки должен обладать привилегиями администратора.

Четыре из шести уязвимостей, которые Adobe признала существенными, вызваны несовершенством процедуры проверки прав доступа. В результате возникла возможность добраться до ресурсов ограниченного пользования и модифицировать закрытые данные — список клиентов, страницы CMS. Для использования этих уязвимостей тоже нужны права администратора, но пароль при этом вводить не придется.

Примечателен также баг CVE-2020-24408, позволяющий удаленному злоумышленнику провести XSS-атаку. Успешная эксплуатация возможна, если ему удастся убедить пользователя перейти по ссылке на специально созданную веб-страницу с JavaScript. В этом случае автор атаки сможет изменить внешний вид страницы в браузере жертвы и украсть персональные данные или заставить ее загрузить вредоносный код.

Новые уязвимости актуальны для Magento Commerce и Magento Open Source веток 2.3 и 2.4. Пользователям рекомендуется в течение месяца произвести обновление до сборки 2.3.6 или 2.4.1 соответственно.

Баги в ядре Linux скрываются в среднем 2 года, а иногда и 20 лет

История с первой CVE для Rust-кода в ядре Linux, которая недавно привела к падениям системы, выглядела почти как повод для оптимизма. В тот же день для кода на C зарегистрировали ещё 159 CVE — контраст показательный. Но новое исследование напоминает: проблема не только в языках программирования.

Гораздо тревожнее первой Linux-дыры в коде на Rust тот факт, что многие ошибки в ядре Linux могут годами, а иногда и десятилетиями оставаться незамеченными.

Исследовательница Дженни Гуанни Ку из компании Pebblebed проанализировала 125 183 бага за почти 20 лет развития ядра Linux — и результаты оказались, мягко говоря, неожиданными.

 

По данным исследования, средний баг в ядре Linux обнаруживают через 2,1 года после его появления. Но это ещё не предел. Самый «долгоиграющий» дефект — переполнение буфера в сетевом коде — прожил в ядре 20,7 года, прежде чем на него обратили внимание.

Важно уточнить: речь идёт о багах в целом, а не только об уязвимостях. Лишь 158 ошибок из всей выборки получили CVE, остальные могли приводить к сбоям, нестабильности или неопределённому поведению, но не обязательно к эксплуатации.

Исследование опирается на тег Fixes:, который используется в разработке ядра Linux. Когда разработчик исправляет ошибку, он указывает коммит, в котором баг был добавлен. Дженни написала инструмент, который прошёлся по git-истории ядра с 2005 года, сопоставил такие пары коммитов и вычислил, сколько времени баг оставался незамеченным.

В датасет вошли данные до версии Linux 6.19-rc3, охватывающие период с апреля 2005 по январь 2026 года. Всего — почти 120 тысяч уникальных исправлений от более чем 9 тысяч разработчиков.

Оказалось, что скорость обнаружения ошибок сильно зависит от подсистемы ядра:

  • CAN-драйверы — в среднем 4,2 года до обнаружения бага;
  • SCTP-стек — около 4 лет;
  • GPU-код — 1,4 года;
  • BPF — всего 1,1 года.

Проще говоря, чем активнее подсистема используется и исследуется, тем быстрее там находят ошибки.

Отдельная проблема — неполные фиксы. Исследование показывает, что нередко разработчики закрывают проблему лишь частично. Например, в 2024 году был выпущен патч для проверки полей в netfilter, но уже через год исследователь нашёл способ его обойти.

Такие ситуации особенно опасны: создаётся ощущение, что проблема решена, хотя на самом деле она просто сменила форму.

RSS: Новости на портале Anti-Malware.ru