Як сканувати своє середовище на наявність вразливих версій Curl

Як сканувати своє середовище на наявність вразливих версій Curl

Як сканувати своє середовище на наявність уразливих версій Curl PlatoBlockchain Data Intelligence. Вертикальний пошук. Ai.

Командам безпеки не потрібно переходити в кризовий режим, щоб вирішити проблему нещодавно виправлені вразливості в інструменті командного рядка curl і бібліотеці libcurl, але це не означає, що їм не потрібно турбуватися про виявлення та відновлення уражених систем. Якщо системи не відразу придатні для використання, у команд безпеки є час, щоб зробити ці оновлення.

У цій технічній підказці зібрано вказівки щодо того, що команди безпеки повинні робити, щоб переконатися, що вони не піддаються ризику.

Основний мережевий інструмент для систем Unix і Linux, cURL використовується в командних рядках і сценаріях для передачі даних. Його поширеність пояснюється тим, що він використовується як окрема утиліта (curl), так і як бібліотека, яка входить до багатьох різних типів програм (libcurl). Бібліотеку libcurl, яка дозволяє розробникам отримувати доступ до API curl із власного коду, можна ввести безпосередньо в код, використовувати як залежність, використовувати як частину комплекту операційної системи, включити як частину контейнера Docker або встановити на Вузол кластера Kubernetes.

Що таке CVE-2023-38545?

Уразливість високого ступеня тяжкості впливає на curl і libcurl версії 7.69.0 до 8.3.0, а вразливість низького рівня серйозності впливає на libcurl версій 7.9.1 до 8.3.0. Однак уразливості не можна використовувати за умов за замовчуванням. Зловмиснику, який намагається запустити вразливість, потрібно буде вказати curl на зловмисний сервер під контролем зловмисника, переконатися, що curl використовує проксі-сервер SOCKS5 за допомогою режиму розпізнавання проксі-сервера, налаштувати curl на автоматичне переспрямування та встановити менший розмір буфера розмір.

За оцінками Яір Мізрахі, старший дослідник безпеки в JFrog, бібліотека libcurl уразлива тільки якщо встановлено наступні змінні середовища: CURLOPT_PROXYTYPE  встановити тип CURLPROXY_SOCKS5_HOSTNAME, Або CURLOPT_PROXY or CURLOPT_PRE_PROXY  встановити за схемою socks5h://. Бібліотека також вразлива, якщо для однієї зі змінних середовища проксі встановлено використання socks5h:// схема. Інструмент командного рядка вразливий, лише якщо він виконується з -socks5-ім'я хоста прапор, або з – проксі (-x) або – препроксі встановити для використання схему socks5h://. Він також уразливий, якщо curl виконується з ураженими змінними середовища.

«Набір попередніх умов, необхідних для того, щоб машина була вразливою (див. попередній розділ), є більш обмежувальним, ніж вважалося спочатку. Тому ми вважаємо, що переважна більшість користувачів curl не постраждає від цієї вразливості», — написав Мізрахі в аналізі.

Перевірте середовище на наявність вразливих систем

Перше, що потрібно зробити організаціям, це охопити своє середовище, щоб ідентифікувати всі системи, які використовують curl і libcurl, щоб оцінити, чи існують ці передумови. Організаціям слід інвентаризувати свої системи та оцінити процеси доставки програмного забезпечення за допомогою інструментів аналізу складу програмного забезпечення для коду, контейнерів сканування та утиліт для керування безпекою додатків, зазначає Алекс Ільгаєв, керівник відділу досліджень безпеки в Cycode. Незважаючи на те, що вразливість не впливає на кожну реалізацію curl, було б легше ідентифікувати уражені системи, якщо команда почне зі списку потенційних місць для пошуку.

Наступні команди визначають, які версії curl встановлено:

Linux/MacOS:

find / -name curl 2>/dev/null -exec echo "Знайдено: {}" ; -exec {} --версія;

Windows:

Get-ChildItem -Path C: -Recurse -ErrorAction SilentlyContinue -Filter curl.exe | ForEach-Object { Write-Host "Знайдено: $($_.FullName)"; & $_.FullName --version }

GitHub має a запит для запуску в Defender for Endpoint щоб ідентифікувати всі пристрої в середовищі, на яких встановлено curl або які використовують curl. Qualys опублікувала свої правила за використання його платформи.

Організаціям, які використовують контейнери Docker або інші технології контейнерів, також слід сканувати зображення на наявність уразливих версій. Очікується значна кількість перебудов, особливо в образах докерів і подібних сутностях, які містять копії liburl. Докер зібрався список інструкцій на оцінку всіх зображень.

Щоб знайти наявні репозиторії:

repo docker scout enable --org /scout-demo

Щоб проаналізувати зображення локальних контейнерів:

політика докер-скаутів [ЗОБРАЖЕННЯ] --org [ORG]

Ця проблема підкреслює важливість ретельного відстеження всього програмного забезпечення з відкритим кодом, яке використовується в організації, за словами Хенріка Плейта, дослідника безпеки в Endor Labs.

«Знання всіх способів використання curl і libcurl є необхідною умовою для оцінки фактичного ризику та вжиття заходів щодо виправлення, будь то виправлення curl, обмеження доступу до уражених систем із ненадійних мереж або впровадження інших контрзаходів», — сказав Плат.

Якщо додаток постачається з програмним описом матеріалів, це було б гарним місцем для початку пошуку екземплярів curl, додає Джон Галлахер, віце-президент Viakoo Labs.

Те, що недоліки не можна використовувати, не означає, що оновлення не потрібні. Патчі в наявності безпосередньо для curl і libcurl, і багато операційних систем (Debian, Ubuntu, Red Hat тощо) також випускають фіксовані версії. Слідкуйте за оновленнями безпеки з інших програм, оскільки libcurl — це бібліотека, яка використовується багатьма операційними системами та програмами.

За словами Mizrahi з JFrog, один обхідний шлях, доки не можна буде розгорнути оновлення, полягає в тому, щоб змусити curl використовувати розпізнавання локального імені хоста під час підключення до проксі-сервера SOCKS5. Цей синтаксис використовує схему socks5, а не socks5h: curl -x socks5://someproxy.com. У бібліотеці замініть змінну середовища CURLPROXY_SOCKS5_HOSTNAME з CURLPROXY_SOCKS5.

За словами Бенджаміна Марра, інженера безпеки в Порушник, команди безпеки повинні стежити за прапорцями curl на наявність надто великих рядків, оскільки це означатиме, що систему було зламано. Прапори є –socks5-ім’я хостаабо – проксі or – препроксі встановити для використання схему socks5h://.

Часова мітка:

Більше від Темне читання