Командам безпеки не потрібно переходити в кризовий режим, щоб вирішити проблему нещодавно виправлені вразливості в інструменті командного рядка 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://.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- PlatoHealth. Розвідка про біотехнології та клінічні випробування. Доступ тут.
- джерело: https://www.darkreading.com/dr-tech/how-to-scan-environment-vulnerable-curl
- : має
- :є
- : ні
- 1
- 7
- 8
- 9
- a
- МЕНЮ
- доступ
- За
- дії
- фактичний
- адреса
- Додає
- впливати
- агрегати
- Alex
- ВСІ
- дозволяє
- Також
- an
- аналіз
- аналізувати
- та
- Інтерфейси
- додаток
- захист додатків
- застосування
- ЕСТЬ
- AS
- оцінити
- Оцінювання
- At
- автоматично
- доступний
- BE
- оскільки
- було
- буття
- Вірити
- вважається,
- Веніамін
- Білл
- обидва
- буфера
- Пакет
- але
- by
- CAN
- не може
- кластер
- код
- приходить
- склад
- Компрометація
- Умови
- З'єднувальний
- Контейнер
- Контейнери
- контроль
- криза
- дані
- дефолт
- доставка
- Залежність
- розгорнути
- розробників
- прилади
- різний
- безпосередньо
- do
- Docker
- робить
- байдуже
- Ні
- Дон
- Не знаю
- два
- легше
- нудьгувати
- включіть
- інженер
- забезпечувати
- юридичні особи
- Навколишнє середовище
- середовищах
- і т.д.
- оцінювати
- Навіть
- Кожен
- виконано
- існувати
- існуючий
- очікуваний
- експлуатований
- очей
- факт
- знайти
- Перший
- фіксованою
- прапори
- недоліки
- стежити
- після
- для
- Примусово
- знайдений
- від
- добре
- керівництво
- було
- hat
- Мати
- голова
- Високий
- основний момент
- Як
- How To
- Однак
- HTTPS
- ідентифікувати
- ідентифікує
- if
- зображення
- зображень
- негайно
- вплив
- Вплив
- реалізація
- реалізації
- значення
- in
- включені
- включати
- вказувати
- спочатку
- встановлений
- в
- введені
- інвентаризація
- питання
- IT
- ЙОГО
- Джон
- JPG
- тримати
- зберігання
- Labs
- великий
- бібліотека
- ліній
- Linux
- список
- місцевий
- місць
- подивитися
- шукати
- низький
- машина
- Більшість
- зробити
- управління
- багато
- Матеріали
- значити
- педантичний
- режим
- моніторинг
- більше
- необхідно
- Необхідність
- необхідний
- мережа
- мереж
- вузол
- примітки
- номер
- of
- on
- ONE
- тільки
- відкрити
- з відкритим вихідним кодом
- операційний
- операційна система
- операційні системи
- or
- порядок
- організація
- організації
- Інше
- з
- власний
- частина
- особливо
- Патчі
- Виправлення
- місце
- платформа
- plato
- Інформація про дані Платона
- PlatoData
- точка
- політика
- потенціал
- президент
- попередній
- процеси
- повноваження
- опублікований
- штовхнув
- червоний
- Red Hat
- замінювати
- дослідження
- дослідник
- рішення
- обмежуючий
- Обмежувальний
- Risk
- прогін
- Зазначений
- сканування
- сканування
- схема
- сфера
- Scout
- scripts
- розділ
- безпеку
- побачити
- старший
- сервер
- комплект
- Повинен
- аналогічний
- значний
- Розмір
- менше
- Софтвер
- рахунок за програмне забезпечення
- деякі
- Source
- автономні
- старт
- починається
- Переконайтеся
- Гойдалки
- синтаксис
- система
- Systems
- взяття
- команда
- команди
- технології
- Технології
- ніж
- Що
- Команда
- їх
- отже
- вони
- річ
- це
- ті
- хоча?
- час
- чайові
- до
- разом
- інструмент
- інструменти
- трек
- переклад
- викликати
- намагається
- Типи
- Ubuntu
- при
- UNIX
- до
- Updates
- використання
- використовуваний
- користувачі
- використовує
- використання
- комунальні послуги
- утиліта
- змінна
- величезний
- версії
- віце
- Віцепрезидент
- Уразливості
- вразливість
- Вразливий
- we
- ДОБРЕ
- Що
- коли
- Чи
- який
- з
- турбуватися
- б
- пише
- вашу
- зефірнет