Хочу поговорить про использование ИИ в разработке. В разработке именно в России. Думаю, статья не будет актуальной для разработки в других странах.
На данный момент наблюдается повсеместное использование ИИ. И в целом оно себя оправдывает. Как обычно происходит разработка? Достаточно просто. Разработчик ставит задачу модели, даёт доступ к файлам, и вот мы по итогу имеем как-то выполненную задачу, с разной степенью качества.
Какой профит имеем? Мифическое увеличение производительности, сокращение TTM. Ну и менеджеры разного уровня важности прекрасно отчитываются о выполненном с помощью ИИ функционале. Прикольно? Заебись! А что получает провайдер ИИ? А он получает всё. Весь ваш проект может быть так или иначе передан на сервера провайдеров. И поверьте, хорошего в этом мало.
Разработчик пользуется так называемыми агентами. Что может агент? Он может смотреть файлы проекта, может выполнять команды командной строки, работу с файлами, системой контроля версий, и прочее. Всё, на что разработчик даст права. А обычно эти права разработчик даёт. И это если агент спросит эти права. А является ли спрос прав гарантией использования агентом команд в рамках разрешений? Вопрос. Идём дальше: агенты обычно показывают, какие команды выполняют. И это может быть достаточно разнообразные действия. От стандартных POSIX-команд терминала, правок, так и написанный на лету python-скрипт. Что несёт этот скрипт? Наверное, пользу.
Вот какие вопросы я хочу поднять, которые, на мой взгляд, должна поднимать любая IT-компания, внедряющая ИИ:
- Спрашивает ли ИИ разрешения на выполнение тех или иных команд в компьютере?
- Есть ли гарантия, что ИИ не сгенерит какой-то вредоносный/шпионский скрипт в вашей операционке под вашим пользователем?
- Есть ли вероятность, что провайдер ИИ захочет внедрить в российский софт какой-то вредоносный/шпионский скрипт?
- А что было в начале 2022 года с js-библиотеками в npm?
- Что такого может сделать плохого ИИ?
И вот эти все вопросы лично мне дают повод задуматься.
Попробую по пунктам:
Спрашивает ли ИИ разрешения на выполнение тех или иных команд в компьютере?
Иногда. Зависит от конкретного инструмента. И что сделает разработчик? Уверен, что он явно даст разрешение на выполнение команды. Какая это будет команда — задумаются немногие, на самом деле. Но даже если спросит — влияет ли ответ пользователя? Надеюсь, что да. И вроде бы да. Но может ли быть такое, что нет? А вполне может. Программа запущена от имени пользователя — она может делать то же самое, что и пользователь. Да, есть изоляции, есть политики безопасности. Но это на уровне самого софта ИИ. Поменять настройки и их соблюдение для определённой страны — не так уж и сложно.
Есть ли гарантия, что ИИ не сгенерит какой-то вредоносный/шпионский скрипт в вашей операционке под вашим пользователем?
А вот тут начинается самое интересное. А нет таких гарантий. Любой поставщик ПО ничего вам никогда не сможет гарантировать. И более того, если захочет — то обязательно сгенерит и внедрит ровно то, что от них потребуется. Кому потребуется? Вряд ли именно поставщику ПО. Но влиять на них могут любые власть имущие.
Есть ли вероятность, что провайдер ИИ захочет внедрить в российский софт какой-то вредоносный/шпионский скрипт?
Жизнь показывает, что вероятность такая есть. Уже сейчас в ПО различного оборудования внедрены куча трекинговых механизмов, которые позволяют незаметно подставлять тебе нужную рекламу, или же показать политическую позицию разработчика той или иной библиотеки (помните эти сине-жёлтые сообщения в composer или в npm-пакетах?). Наносят ли такие скрипты сейчас прямой вред? Мне о таких фактах неизвестно. Но это не значит, что это невозможно. Это не значит, что вредоноса ещё нет.
Что такого может сделать плохого ИИ?
Представим себе гипотетического провайдера ИИ. Назовём его «Икс». Вот разработчик/тестировщик поставил себе этого помощника. Будет задачи решать. Быстро, весело, задорно. Он точно даст доступ Иксу к проекту. Икс запросит доступ к проекту. Зачем-то. Но предположим. Икс теперь может ходить по проекту, что он может? Он может ходить по проекту. По любому файлу проекта он может ходить. И не дай бог у вас там есть env-файл c продовыми доступами. А он много у кого есть. Не во всех IT-компаниях есть отдел ИБ. А там, где он есть, он не всегда хорош. И вот краткий список просто первого, что приходит в голову, что может плохого сделать Икс:
- почитать home-директорию. А там обычно доступы ssh, разные переменные окружения, настройки программ, и прочее
- почитать файлы проекта. Не просто почитать, а собрать некоторую информацию о проекте. У вас есть md-файлы с описанием проекта? Поздравляю, вы немного помогли Иксу понять проект
- собрать информацию о пользователе компьютера, об используемых программах
- записать в директорию пользователя какой-нибудь скрипт, который будет, например, отслеживать сеть, смотреть логи,
- записать в планировщик задач выключение компьютера или стирание каких-то данных
- давать ложные ответы там, где важно получить максимально правдивые. Цена ошибки может быть очень велика. Ошибки в IT — это часто очень дорого.
Много разного придумать можно. Тут уж зависит от цели и задачи.
И вот казалось бы. Можем ли мы доверять Иксу, давая такие большие полномочия, без гарантий доброжелательности по отношению к нам? Я считаю — нет. И казалось бы. А почему Икс может быть использован кем-то против российского IT-сектора экономики. А давайте подумаем: есть ли в мире провайдеры ИИ, страны которых заинтересованы в подрыве экономики российского IT? И тут на сцене появляются ровно те самые самые популярные ИИшечки. Топовые клаудкоды, чатжпт, курсоры, и всякие другие. Являются ли они дружелюбными по отношению к России? Как мне кажется — нет. Будут ли они самостоятельно гадить России? Уверен, что по своей воле нет. Это их будущий рынок, им незачем терять перспективный рынок. Но если придёт власть имущая фигура к руководству, и попросит «кое что сделать для российских пользователей», откажет ли руководство? Нет, не откажется. Или уже не отказалось???
У меня паранойя?
Казалось бы: ну нет же шума о том, что ИИ уже кому-то целенаправленно навредил, что где-то это привело к реальным потерям? А есть. Погуглите, уже были скандалы по поводу слива данных пользователей.
Ну бред же. Нет доказательств того, что вред России уже наносится.
Я хочу донести до нас всех одну, как мне кажется, фундаментальную вещь: если российский IT-сектор поймёт, что ИИ уже вмешалось и наносит вред — значит, уже поздно. Значит, мы уже сильно встряли.
Какие могут быть последствия?
Слитые данные — это минимальный вред, на который придётся надеяться. Гораздо хуже будет, если в какой-то экосистеме уже сидят ждущие скрипты, готовые нанести вред в один момент, в единую точку времени. Мы наблюдали последствия физического устранения складов маркетплейсов. А что будет, если в один момент посыпется IT-инфраструктура больших и средних игроков экономики страны? Не хотелось бы это наблюдать.
А как же сами пользователи?
Уже сейчас не очень компетентные и не очень ответственные сотрудники сливают кучу конфиденциальной информации в ИИ. И тех, кто готов давать ИИ любые разрешения — лишь бы «оптимизировать процесс» — становится только больше. Это даёт выигрыш в моменте. Но риски, на мой взгляд, огромны.
Кто в безопасности?
Только те, кто намеренно отказались от облачных забугорных ИИ. Но, к сожалению, это вряд ли будет бизнес-сектор, ибо полный отказ от ИИ — это дорого, а бизнес не ищет качество, бизнес ищет прибыль. Уверен, что отказываться от ИИ никто не будет. Но разные стратегически важные игроки разворачивают свои модели локально, сооружают дополнительные проверки, приводят процесс разработки в безопасное состояние. Насколько я наслышан (неофициально), много банков прямо запрещают использовать ИИ. Кто-то создаёт и развивает собственные решения.
Что делать то?
IT-компаниям я советую более подробно изучить вопрос безопасности, изучить риски, и оценить потенциальные последствия враждебно настроенных ИИ. И далее уже думать, на что компания готова, а не что нет. Советую рассмотреть отечественные решения. Видел у Сбера, у Яндекса решения есть. Это надо изучать, и где-то «наши» решения — не такие уж и «наши». Но на это и есть ТОПы IT-компаний, чтоб этими моментами озаботиться. Если риски слишком велики — отказаться от ИИ. Лучше медленнее доносить фичи в прод, чем погасить огонь возможных последствий.
Работникам я советую быть более сдержанными в использовании ИИ. Меньше давать файлов проекта, прям необходимый минимум. Озаботиться пониманием кому и какую информацию мы передаем.
Менеджерам и руководителям я советую не гнаться за ИИ ради ИИ. Сейчас много такого.
Минцифры, как мне кажется, должно очень подробно изучить поднятую тематику, и разработать ряд административно-правовых актов для регулирования использования ИИ. Нельзя пускать этот вопрос на самотёк.
P.S. У меня складывается ощущение, что мы в России рискуем передать в ненадежные руки информацию о нашей айтишке. Давайте будем профессиональнее и менее наивными…