גוגל מציגה את CodeMender – סוכן AI שמתקן חולשות אבטחה בקוד באופן אוטומטי

CodeMender (מקור גוגל) CodeMender (מקור גוגל)

חטיבת DeepMind של גוגל (Google) הכריזה על CodeMender, סוכן בינה מלאכותית חדש שמזהה, מתקן ומשכתב קוד פגיע באופן אוטומטי כדי למנוע ניצול עתידי של פגיעויות באבטחה.

הכלי החדש מהווה צעד משמעותי ביכולות ההגנה האוטומטיות של הבינה המלאכותית, ומצטרף למאמצי החברה המתמשכים בתחום גילוי פגיעויות אבטחה מבוססות AI.

CodeMender תוכנן להיות גם ריאקטיבי וגם פרואקטיבי – לתקן פגיעויות חדשות ברגע שהן מתגלות, ובמקביל לשכתב ולאבטח קוד קיים במטרה לחסל סוגים שלמים של פגיעויות.

לפי החברה, במהלך ששת החודשים האחרונים שבהם פותח הכלי, הועלו כבר 72 תיקוני אבטחה לפרויקטי קוד פתוח, חלקם בפרויקטים גדולים במיוחד המכילים עד 4.5 מיליון שורות קוד.

איך CodeMender עובד?

CodeMender מבוסס על מודלי Gemini Deep Think של גוגל, המאפשרים לסוכן לבצע ניפוי באגים ותיקון של פגיעויות אבטחה מורכבות.

הכלי מצויד בכלי אנליזה מתקדמים המאפשרים לו לחשוב על הקוד לפני ביצוע שינויים, ולאמת אוטומטית את התיקונים כדי לוודא שהם נכונים ולא גורמים לרגרסיות.

תהליך האימות האוטומטי של CodeMender מבטיח שהשינויים בקוד נכונים במספר מימדים – הם מתקנים את שורש הבעיה, פונקציונליים באופן מלא, לא גורמים לרגרסיות ועומדים בהנחיות הסגנון של הפרויקט.

רק תיקונים באיכות גבוהה שעוברים את כל הבדיקות מועברים לבדיקה אנושית סופית.

תיקון פגיעויות באופן אוטומטי

כדי לתקן פגיעות באופן יעיל ולמנוע הופעה חוזרת שלה, CodeMender משתמש בדיבאגר (Debugger), דפדפן קוד מקור וכלים נוספים כדי לאתר את שורש הבעיה ולתכנן תיקון.

גוגל הציגה דוגמה לפגיעות heap buffer overflow ב-libwebp, חולשה שקיבלה את קוד הזיהוי CVE-2023-4863 והייתה בשימוש על ידי תוקפים כחלק מניצול zero-click ב-iOS.

עם הוספת אנוטציות -fbounds-safety שביצע CodeMender, פגיעות זו ורוב ה-buffer overflows האחרים בפרויקט היו הופכים לבלתי ניתנים לניצול לצמיתות.

למרות שהתיקון הסופי בדוגמה זו שינה רק מספר שורות קוד, שורש הבעיה לא היה ברור מיד – דוח הקריסה הראה heap buffer overflow, אך הבעיה האמיתית הייתה במקום אחר: ניהול שגוי של ערימת אלמנטי XML במהלך ניתוח.

אחת התכונות המרכזיות של CodeMender היא יכולתו לתקן אוטומטית שגיאות חדשות וכשלים בבדיקות הנובעים מהאנוטציות שלו עצמו.

הסוכן משנה פונקציות ומשתמש בכלי LLM judge המוגדר לשקילות פונקציונלית כדי לוודא שהפונקציונליות נשארת שלמה, וכאשר הכלי מזהה כשל, הסוכן מתקן את עצמו על בסיס המשוב.

תוכנית AI Vulnerability Reward Program

במקביל להכרזה על CodeMender, גוגל השיקה גם תוכנית AI Vulnerability Reward Program (AI VRP) חדשה לדיווח על בעיות הקשורות ל-AI במוצריה.

התוכנית מאחדת את כללי הפרסים והדיווח עבור בעיות כמו prompt injections, jailbreaks ו-misalignment, עם פרסים שיכולים להגיע עד 30,000 דולר.

עם זאת, יצירת תוכן המפר מדיניות, עקיפת guardrails, הזיות, אי-דיוקים עובדתיים, חילוץ system prompt ובעיות קניין רוחני אינם נכללים בתוכנית ה-AI VRP.

זמינות והמשך פיתוח

למרות התוצאות המבטיחות, גוגל נוקטת בגישה זהירה ומתמקדת באמינות. כרגע, כל התיקונים שנוצרים על ידי CodeMender נבדקים על ידי חוקרים אנושיים לפני שהם מוגשים upstream.

החברה מתכננת להגיע בהדרגה למתחזקים מעוניינים של פרויקטי קוד פתוח קריטיים עם תיקונים שנוצרו על ידי CodeMender, ולאסוף משוב כדי לשפר את הכלי.

גוגל מתכננת לפרסם מאמרים טכניים ודוחות על הטכניקות והתוצאות של CodeMender בחודשים הקרובים, במטרה לשחרר את הכלי לשימוש כללי של מפתחי תוכנה לשמירה על אבטחת בסיסי הקוד שלהם.

השוואת מפרטים