CodeMender:
عامل هوش مصنوعی گوگل برای امنیت کدنویسی
یافتن و رفع آسیبپذیریهای نرمافزاری برای توسعهدهندگان، حتی با وجود روشهای سنتی و خودکار مانند فازینگ (fuzzing)، بسیار دشوار و زمانبر است. اقدامات مبتنی بر هوش مصنوعی گوگل مانند Big Sleep و OSS-Fuzz توانایی هوش مصنوعی را در یافتن آسیبپذیریهای روز صفر (zero-day) جدید در نرمافزارهای بهخوبی آزمایششده، نشان دادهاند. با دستیابی به پیشرفتهای بیشتر در کشف آسیبپذیری مبتنی بر هوش مصنوعی، همگامشدن با این روند دشوارتر خواهد شد.
گوگل عامل هوش مصنوعی امنیت کد خود به نام CodeMender را در اواخر سال گذشته میلادی با اتخاذ یک رویکرد جامع نسبت به امنیت کد که هم واکنشی است (وصله فوری آسیبپذیریهای جدید) و هم پیشگیرانه (بازنویسی و ایمنسازی کد موجود و حذف کامل کلاسهای آسیبپذیری در این فرایند)، عرضه کرد. عامل مبتنی بر هوش مصنوعی CodeMender با ایجاد و اعمال خودکار وصلههای امنیتی با کیفیت بالا، به توسعهدهندگان و نگهدارندگان کمک میکند تا بر روی آنچه در آن بهترین هستند؛ یعنی ساخت نرمافزار خوب تمرکز کنند.
CodeMender در عمل
CodeMender با بهرهگیری از قابلیتهای تفکر مدلهای Gemini Deep Think عمل میکند تا یک عامل خودمختار ایجاد کند که قادر به دیباگینگ و رفع آسیبپذیریهای پیچیده است.
برای انجام این کار، عامل CodeMender به ابزارهای قدرتمندی مجهز شده است که به آن اجازه میدهد پیش از ایجاد تغییرات، در مورد کد استدلال کند و آن تغییرات را به طور خودکار اعتبارسنجی کند تا از صحت آنها و عدم پسرفت اطمینان حاصل شود.
درحالیکه مدلهای زبانی بزرگ بهسرعت در حال بهبود هستند، اشتباهات در امنیت کد میتواند پرهزینه باشد. فرایند اعتبارسنجی خودکار CodeMender با ارائه تنها وصلههای باکیفیت برای بررسی انسانی که بهعنوانمثال علت ریشهای مشکل را برطرف میکنند، از نظر عملکردی صحیح هستند، هیچ پسرفتی ایجاد نمیکنند و از دستورالعملهای سبک کدنویسی پیروی میکنند. اطمینان حاصل میکند که تغییرات کد در ابعاد مختلف صحیح هستند.
گوگل بهعنوان بخشی از تحقیقات خود، تکنیکها و ابزارهای جدیدی توسعه داده است که به CodeMender اجازه میدهد تا به طور مؤثرتری در مورد کد استدلال کرده و تغییرات را اعتبارسنجی کند. این موارد عبارتاند از:
- تحلیل پیشرفته برنامه (Advanced program analysis): گوگل ابزارهایی مبتنی بر تحلیل پیشرفته برنامه توسعه دادیم که شامل تحلیل ایستا (static analysis)، تحلیل پویا (dynamic analysis)، تست تفاضلی (differential testing)، فازینگ و حلکنندههای SMT میشود. با استفاده از این ابزارها برای بررسی سیستماتیک الگوهای کد، جریان کنترل و جریان داده، CodeMender میتواند علل ریشهای نقصهای امنیتی و ضعفهای معماری را بهتر شناسایی کند.
- سیستمهای چندعاملی: گوگل عاملهای اختصاصیای توسعه داده که به CodeMender امکان میدهد به جنبههای خاصی از یک مشکل اساسی بپردازد. بهعنوانمثال، CodeMender از یک ابزار مبتنی بر مدل زبانی بزرگ استفاده میکند که تفاوتهای بین کد اصلی و اصلاحشده را مشخص میکند تا تأیید کند تغییرات پیشنهادی پسرفتی ایجاد نمیکنند و در صورت نیاز خود را اصلاح میکند.
بازنویسی پیشگیرانه کد موجود برای امنیت بهتر
برای وصله مؤثر یک آسیبپذیری و جلوگیری از ظهور مجدد آن، CodeMender از یک دیباگر، مرورگر کد منبع و سایر ابزارها برای مشخصکردن علل ریشهای و طراحی وصلهها استفاده میکند. گوگل CodeMender را طراحی کرد تا کدهای موجود را برای استفاده از ساختارهای داده و APIهای امنتر بازنویسی کند.
بهعنوانمثال، گوگل CodeMender را برای اعمال حاشیهنویسیهای fbounds-safety در بخشهایی از یک کتابخانه فشردهسازی تصویر پرکاربرد به نام libwebp مستقر کرد. هنگامی که حاشیهنویسیهای fbounds-safety اعمال میشوند، کامپایلر بررسیهای مرزی را به کد اضافه میکند تا از سوءاستفاده مهاجم از سرریز یا کاهش بافر (buffer overflow or underflow) برای اجرای کد دلخواه جلوگیری کند.
ایمنسازی سازمانی عاملمحور
مدلهای پیشرفته، مانند Gemini 3.5، قابلیتهای قدرتمند جدیدی را برای سازمانها فراهم میکنند، از جمله متحول کردن امنیت هوش مصنوعی و تشخیص آسیبپذیریها. کاهش استراتژیک ریسک، انطباق قوی و استقرار هوش مصنوعی قابلاعتماد برای رشد پایدار کسبوکار حیاتی هستند.
علاوه بر به اشتراک گذاشتن یافتهها و راهکارهای کاهش ریسک با جامعه گسترده امنیت و هوش مصنوعی، گوگل در حال ادغام CodeMender در پلتفرم عامل (Agent Platform) است. CodeMender با بهرهگیری از قابلیتهای پلتفرم عامل و مدلهای پیشرفته Gemini، به طور خودمختار آسیبپذیریهای درون کد را شناسایی میکند. سپس اصلاحات دقیقی را پیشنهاد میکند، آنها را به طور ایمن آزمایش میکند و با تأیید کاربر میتواند وصلهها و تغییرات لازم را در سیستمهای وابسته اعمال کند. این فرایند کل استقرار ایمن را خودکار میکند و درعینحال اطمینان میدهد که توسعهدهندگان کنترل را در دست دارند.
چندین مشتری Gemini Enterprise در حال حاضر در حال آزمایش CodeMender هستند و بهزودی اخبار بیشتری در مورد دسترسی گستردهتر آن منتر خواهد شد.
گوگل همچنین در حال برداشتن گامهای مهمی در حصول اطمینان از اعتماد و ایمنی پلتفرم برای رسانههای تولید شده بهصورت مصنوعی (synthetically generated media) با یک API تشخیص محتوای هوش مصنوعی جدید است که اخیراً در پلتفرم عامل عرضه میشود. این ویژگی به کسبوکارها روشی قدرتمند برای شناسایی محتوای تولید شده توسط هوش مصنوعی از مدلهای گوگل و سایر مدلهای محبوب ارائه میدهد و از حاکمیت رسانهای مسئولانه پشتیبانی میکند.