שימוש ב-AI מבלי לדלוף סודות

נתקלת בשגיאה. העתקת את ה-stack trace. ביקשת מה-AI לתקן אותה. שכחת שכתובת ה-DATABASE_URL והסיסמה שלך נמצאים בטקסט הזה. ה-AI עונה תוך ארבע שניות. עכשיו הסוד שלך נמצא ב-request log או ב-training set. אתה לא יכול למחוק אותו.

הדבקת סודות לתוך AI זה כמו להדביק אותם באתר ציבורי. אתה לא יכול למשוך אותם חזרה.

אני משתמש ב-AI כל יום כדי להוציא קוד לאוויר. אני לא נמנע ממנו. אני משתמש בו עם מודל איומים (threat model).

רוב האנשים חושבים שפרומפט הוא צ'אט פרטי. הוא לא. זוהי outbound request.

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

נתונים דולפים בשלושה אופנים:

  • מה שאתה מדביק: קטעי קוד, קונפיגורציות (configs) או traces.
  • מה שכלים מצרפים אוטומטית: קבצים פתוחים, הקשר של ה-repo או פלט של הטרמינל.
  • מה שהמודל מחזיר: סודות שחזרו (echoed) בתיאור של PR או בלוג.

ספק ה-AI הוא צד שלישי מהימן. אינך יכול לבקר (audit) את הצינורות הפנימיים (pipelines) שלהם. התייחס לתיבת הפרומפט כמו לקריאת רשת לא מהימנה (untrusted network call).

הפסק לשלוח את הדברים הבאים:

  • מפתחות API או טוקנים (tokens) פעילים.
  • תוכן של קבצי .env.
  • מפתחות פרטיים או תעודות (certificates).
  • שמות לקוחות אמיתיים, אימיילים או נתוני תשלום.
  • לוגיקה קניינית (proprietary) שלא היית הופך לקוד פתוח.

השתמש ב-placeholders במקום זאת. השתמש ב-[API_KEY] או ב-[DB_PASSWORD]. ה-AI עובד באותה מידה טוב עם מסכות (masks).

בנה את שלושת ההרגלים הללו:

  • השתמש בקובץ ignore עבור ה-AI שלך. שמור את תיקיות ה-.env והסודות מחוץ להקשר (context) של הכלי.
  • סרוק לפני שאתה שולח. הרץ מזהה סודות (secret detector) על הטקסט שלך לפני ההדבקה.
  • שמור על סודות מוצפנים. אם סודות קיימים רק בזיכרון בזמן ריצה (runtime), לא תוכל להדביק אותם.

סיכום האפשרויות שלך:

  • חינם/צרכן: השתמש עבור מסמכים ציבוריים או קטעי קוד זמניים.
  • בתשלום Pro/Team: השתמש עבור רוב עבודת ההנדסה. יש לה הגנות חוזיות.
  • מקומי/Self-hosted: השתמש עבור נתונים תחת רגולציה שחייבים להישאר במחשב שלך.

הבטחה לאימון היא חוזה. היא אינה מגן טכני. היא מפחיתה סיכון אך לא מבטלת אותו.

בצע את הצעדים הבאים לפני שה-AI נוגע בקוד שלך:

  • הוסף קובץ ignore לכלי ה-AI שלך.
  • סרוק כל דבר שאתה מדביק.
  • הסתר (mask) את כל פרטי ההזדהות באמצעות placeholders.
  • השתמש במסלולים בתשלום עבור עבודה קניינית.
  • השתמש ב-KMS כדי לשמור על סודות מחוץ לטקסט גלוי (plaintext).
  • בדוק את פלט ה-AI לפני שהוא מגיע ללוגים או ל-commits שלך.

התשובה של ארבע השניות עדיין מהירה. היא פשוט לא תעלה לך את האבטחה שלך.

Source: https://dev.to/faizahmedfarooqui/using-ai-without-leaking-your-secrets-a-threat-model-for-ai-assisted-development-2l57

Optional learning community: https://t.me/GyaanSetuAi