В утилите curl обнаружена серьезная уязвимость и уже выпущено исправление

В большинстве своем рядовые пользователи Linux не знают, что такое curl. Однако программистам и системным администраторам эта утилита хорошо известна.

Эта команда оболочки и связанная с ней библиотека libcurl используются для передачи данных по всем сетевым протоколам, о которых вы когда-либо слышали, и применяются в настольных компьютерах, серверах, облаках, автомобилях, телевизорах, маршрутизаторах и практически во всех устройствах Интернета вещей (IoT). По оценкам разработчиков Curl, он используется более чем в двадцати миллиардах экземпляров. И вот теперь в нем обнаружена потенциально опасная ошибка безопасности, CVE-2023-38545.

Насколько неприятных? Ведущий разработчик Curl Дэниел Стенберг (Daniel Stenberg) написал в своем блоге, что это самая серьезная проблема безопасности, обнаруженная в curl за долгое время.

Организации должны оперативно провести инвентаризацию, сканирование и обновление всех систем, использующих curl и libcurl. В частности, серьезность уязвимости требует немедленного и осторожного подхода к защите взаимосвязанных и веб-приложений, чтобы обеспечить сохранность и безопасность богатых возможностей передачи данных, предоставляемых curl и libcurl.
- Саид Аббаси (Saeed Abbasi), менеджер по продуктам отдела исследования угроз компании Qualys

В частности, дыра в безопасности может быть задействована при использовании прокси-протокола SOCKS5. Этот довольно простой протокол устанавливает сетевое взаимодействие через специального «посредника». Протокол используется при обмене данными через Tor – программное обеспечение с открытым исходным кодом, применяемое для обеспечения анонимного общения и закрытого доступа в Интернет изнутри организаций и компаний. Некоторые виртуальные частные сети используют его для обхода блокировок интернет-контента и обеспечения анонимности своих пользователей.

«Возможно, наиболее реалистично, что в эту дыру безопасности с наибольшей вероятностью попадет пользователь Tor (который обычно использует SOCKS5), переходящий на HTTPS-сайт, которая была взломана».
-разработчик новой социальной сетью Mastodon, Штейнберг

CVE-2023-38545 – это Переполнение памяти дыра. Она может быть использована для удаленного выполнения кода. Уже есть доказательства концепции, показывающие, как можно осуществить атаку с использованием дыры curl

Дыра безопасности была найдена в феврале 2020 и затрагивает версии libcurl от 7.69.0 до 8.3.0 включительно.

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

Не все считают, что это так уж важно. Билл Демиркапи (Bill Demirkapi), член команды по поиску и устранению уязвимостей Microsoft Security Response Center, написал в Twitter следующее: «Самая серьезная проблема безопасности, обнаруженная в curl за долгое время, доступна только в том случае, если жертва использует прокси-сервер SOCKS5 и подключается к неавторизованному серверу или подвергается MitM-атаке?»

Если быть точным, то это:

  1. Запрос curl выполняется через socks5.
  2. Буфер согласования машины состояния curl меньше 65k.
  3. Ответ «hello» SOCKS-сервера задерживается.
  4. Злоумышленник задает конечное имя хоста назначения больше, чем буфер переговоров.

Это много предварительных условий.

Проект curl на этом не остановился: информация о дефектах одновременно передавалась разработчикам различных дистрибутивов Linux, Unix и Unix-like. Благодаря такому совместному подходу исправления и обновленные пакеты были готовы до официального выпуска curl v8.4.0.

Поэтому я и проект curl настоятельно рекомендуем пользователям обновить curl/libcurl до версии 8.4.0 или применить исправления к более старым версиям, чтобы снизить риски, связанные с этими уязвимостями.

Поскольку libcurl/curl является компонентом по умолчанию во многих дистрибутивах Linux и входит в состав многих контейнерных образов, пользователям Linux следует быть бдительными и следить за выпуском релизов этих поставщиков. Большинство основных дистрибутивов Linux уже выпустили исправления.

Сударев Александр Эксперт по безопасности, криптовалютам и умным домам

Люблю технологии и криптовалюты. Создаю свой умный дом и делюсь этим с Вами. Знаю как предотвратить хакерскую атаку, так как немного смыслю в безопасности

Комментарии (0)