Блог з безпеки FireAI

Автор FireAI Security & Research Team · Опубліковано

Безпека Aider на Mac: моніторинг мережевих з’єднань

Безпека Aider на Mac: моніторинг мережевих з’єднань

Aider — інструмент з відкритим кодом для парного програмування зі ШІ, який працює в терміналі й редагує файли в репозиторії Git. Люди шукають «безпека aider mac», «чи безпечний aider» і «мережевий доступ aider», бо він надсилає контекст коду тій мовній моделі, яку вони налаштували. Ця стаття підсумовує, що проєкт документує про встановлення, аналітику та поведінку з git, зазначає, де документація мовчить про мережу, а потім показує, як FireAI, фаєрвол для macOS від HisnLabs, що працює на пристрої, стежить за з’єднаннями агента, який є скриптом Python.

Що таке Aider

Aider підтримує проєкт Aider-AI; його написано на Python і поширено за ліцензією Apache-2.0. README описує його як спосіб починати нові проєкти або працювати в наявних кодових базах разом із мовними моделями, з мапою всієї кодової бази, автоматичними комітами з осмисленими повідомленнями та підтримкою Claude, DeepSeek, моделей OpenAI і локальних моделей. Він також може приймати зображення, вебсторінки й голосове введення та запускати лінтинг і тести [1]. Кінцеву точку моделі вибираєте ви, тож ваші запити й контекст файлів ідуть до цього постачальника.

Як Aider працює на macOS

Aider — програма на Python. Сторінка встановлення рекомендує aider-install, який створює окреме середовище Python для Aider і за потреби може встановити Python 3.12; README показує python -m pip install aider-install, а потім aider-install. Альтернативи — інсталятор uv, pipx і звичайний pip, для якого сторінка радить віртуальне середовище, а також однорядкові інсталяційні скрипти для Mac і Linux [2]. Хоч який шлях ви оберете, процес на Mac — це інтерпретатор Python, що виконує скрипт Aider.

До чого він має доступ і як цей доступ контролюється

Aider працює з файлами репозиторію, у якому ви його запускаєте, і автоматично комітить зміни в Git. Сторінки, прочитані для цієї статті, не описують пісочниці чи моделі режимів схвалення, порівнянної з іншими агентами, тож вважайте, що його доступ дорівнює доступу вашого облікового запису й каталогу, з якого ви його запускаєте. README зазначає, що він може завантажувати вебсторінки, тобто сам інструмент може ініціювати запити до названих вами сайтів.

Куди він підключається

Сторінка про аналітику докладно документує єдину фонову мережеву функцію. Аналітика вмикається лише за згодою. Коли її ввімкнено, Aider збирає, які моделі використовуються і з якою кількістю токенів, які формати редагування й команди використовуються, а також відомості про винятки, і стверджує, що ніколи не збирає коду, повідомлень чату, ключів API чи персональних даних. Дані надходять до PostHog. aider --analytics-disable вимикає аналітику назавжди, а --analytics-log записує те, що було б надіслано, у локальний файл для перевірки [3]. Ця сторінка не охоплює іншого трафіку, як-от звернень до вашого постачальника моделі, тож ці хости визначаються вашим налаштуванням.

Спостереження за Aider за допомогою FireAI

FireAI — фаєрвол для macOS, що працює на Mac. Його функція «Профіль агента» розпізнає 19 агентів ШІ, вивчає, куди кожен зазвичай підключається, і позначає нове. Сторінка «Профілю агента» у FireAI зараховує Aider до агентів, що запускаються через node, bun, deno чи python, яких FireAI розпізнає за скриптом, що виконує середовище. Тому процес Python, який виконує скрипт Aider, приписується Aider, а не загальному python3.

  • Перші 3 дні FireAI вивчає адреси, з якими агент зазвичай зв’язується, групуючи їх за доменом: api.anthropic.com стає anthropic.com. У цей період нічого не позначається.
  • Після цього перша за весь час адреса поза базовою лінією позначається для перегляду в «Пропозиціях», у картці «Агенти ШІ» та в «Швидкому перегляді». Проведіть ліворуч, щоб заблокувати, або праворуч, щоб вибрати «It’s fine».
  • Сплеск вивантаження теж позначається: година, за яку агент вивантажив щонайменше вчетверо більше, ніж за свою найактивнішу годину досі, і ніколи не менше ніж 25 MB.
  • FireAI використовує лише метадані, тобто імена хостів і кількість байтів. Вміст з’єднання він ніколи не читає.

Налаштування FireAI для Aider

  1. Установіть FireAI й користуйтеся агентом як зазвичай. Триденний період навчання починається сам і нічого не позначає.
  2. Відкрийте «Пропозиції» й знайдіть картку «Агенти ШІ». Після періоду навчання позначка для агента з’являється там і в «Швидкому перегляді».
  3. Перегляньте кожну позначку. Виберіть «Заблокувати», щоб створити правило для процесу, який підключився, або «It’s fine», щоб додати адресу до базової лінії агента.
  4. Щоб обмежити агента місцями, якими він уже користується, виберіть «Профіль агента» в меню режимів безпеки поряд із «Дім», «Кав’ярня», «Параноя» та «Під атакою». Ваші правила діють як у режимі «Дім», а з’єднання з адресою поза базовою лінією блокується замість позначення, щойно агент завершить навчання.
  5. Заблокована адреса з’являється в картці «Агенти ШІ» з кнопками «Дозволити» та «Залишити заблокованим». «Дозволити» додає її до базової лінії, і агент одразу отримує до неї доступ. «Залишити заблокованим» створює правило блокування, яке діє в усіх режимах.

Дозвільне правило, яке ви створили для вебсайту, домену чи адреси, усе одно має пріоритет, а DNS і ваша локальна мережа ніколи не блокуються. Для агента, якого FireAI не має в списку, напишіть правило для його програми вручну в правилах для застосунків. Режим «Профіль агента» потребує FireAI 1.0.3 або новішої версії, а розпізнавання Aider — версії 1.0.4.

Обмеження

  • Оскільки Aider працює під Python, правило, написане вручну для інтерпретатора, вплинуло б на кожну програму на Python. Розпізнавання «Профілю агента» уникає цього для базової лінії та позначок, які прив’язано до скрипта Aider.
  • Aider розпізнається за скриптом, який виконує середовище, тобто він позначається міткою, а не перевіряється: лише Claude Code, Claude і Cursor звіряються з підписом свого розробника.
  • FireAI не зупиняє prompt injection. Він обмежує шкоду, позначаючи шлях, яким дані залишали б ваш Mac, і даючи змогу цей шлях заблокувати.
  • FireAI не бачить запитів, вмісту інструментів MCP, доступу до файлів чи навичок. TLS приховує вміст, а FireAI не працює всередині агента.
  • Дочірні процеси, що завершуються дуже швидко, можуть залишитися непоміченими, і вони зіставляються за шляхом, а не за підписом.
  • Протягом триденного періоду навчання нічого не позначається, а сплески вивантаження позначаються, але не блокуються.
  • У режимі «Профіль агента» з’єднання з «голою» IP-адресою без імені хоста зіставляється за адресою, тож нову адресу сервісу, яким агент зазвичай користується, буде заблоковано, доки ви її не дозволите.

Інші агенти

Той самий підхід застосовується до кожного агента, якого розпізнає FireAI. Інші посібники: Claude Code, настільний застосунок Claude, Cursor, застосунок ChatGPT для Mac, OpenAI Codex CLI, OpenClaw, Hermes Agent, Gemini CLI, GitHub Copilot CLI, Amp, Qwen Code, opencode, Goose, Crush, Windsurf, Kiro, Trae, Muse від Meta, будь-який інший агент ШІ, що працює на python чи node. Повний опис функції наведено на сторінці документації «Профілю агента», опублікованій HisnLabs.

Яке місце тут посідають FireAI та HisnLabs

FireAI вивчає, куди Aider зазвичай підключається на вашому Mac, і позначає першу нову адресу або сплеск вивантаження, не читаючи ваших даних.

FireAI — це власний продукт HisnLabs: ШІ-фаєрвол, який працює безпосередньо на вашому Mac. Він показує простою мовою кожне з’єднання, яке встановлюють ваші застосунки, і дає вам вирішувати, що покидає ваш Mac, — його ШІ працює локально, тож ваш трафік ніколи не надсилається ні нам, ні будь-кому іншому. Команда дослідників безпеки HisnLabs — саме вона підтримує точність цих рішень: каталогізує, які домени є звичайною телеметрією, а які — справжнім сервісом, відстежує країну та мережу за з’єднанням і навчає локальну модель (функцію FireAI Pilot) на реальних шаблонах трафіку — і нічого з цього не покидає ваш Mac.

Ви можете почитати про технічні рішення, що лежать в його основі, або спробувати FireAI протягом 17 днів на сторінці FireAI від HisnLabs.

Джерела