הפסיקו לבטוח בסוכן: קשרו אישורים לקריאות כלי ספציפיות

רוב המערכות האג'נטיות (agentic systems) מגינות על פעולות מסוכנות כמו כתיבת קבצים או העברות כספים באמצעות אישור פשוט.

בדרך כלל, האישור הזה הוא דגל בוליאני (boolean flag) במצב המערכת. דוגמה: approved: true.

זו טעות. ערך בוליאני נכשל בשלוש דרכים שתוקפים מנצלים:

הבעיה היא שאתם ממדלים את האישור כתכונה של כל הסשן (session) כולו. הוא חייב לשמש כראיה עבור קריאה ספציפית אחת.

איך לתקן את זה:

כאשר אדם מאשר קריאה, צרו תג (tag) מאובטח. התג הזה חייב לנעול ארבעה דברים:

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

עקבו אחר הכללים הבאים ליישום:

הרשאה (Authorization) לא צריכה להיות חלק צף של מצב (state). היא חייבת להיות מעטפה קשורה שמוכיחה: "האדם הספציפי הזה אישר את הארגומנטים הספציפיים האלה עבור הכלי הספציפי הזה עד לזמן הספציפי הזה."

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

מקור: https://dev.to/whatsonyourmind/stop-trusting-the-agent-bind-tool-call-approvals-to-the-exact-call-5080

קהילת למידה אופציונלית: https://t.me/GyaanSetuAi