𝗦𝘁𝗼𝗽 𝗧𝗿𝘂𝘀𝘁𝗶𝗻𝗴 𝗧𝗵𝗲 𝗔𝗴𝗲𝗻𝘁: 𝗕𝗶𝗻𝗱 𝗔𝗽𝗽𝗿𝗼𝘃𝗮𝗹𝘀 𝘁𝗼 𝗘𝘅𝗮𝗰𝘁 𝗧𝗼𝗼𝗹 𝗖𝗮𝗹𝗹𝘀

చాలా ఏజెంటిక్ సిస్టమ్స్ ఫైల్ రైట్స్ లేదా మనీ ట్రాన్స్‌ఫర్స్ వంటి ప్రమాదకరమైన చర్యలను కేవలం ఒక సాధారణ అప్రూవల్‌తో మాత్రమే రక్షిస్తాయి.

సాధారణంగా, ఈ అప్రూవల్ సిస్టమ్ స్టేట్‌లో ఒక బూలియన్ ఫ్లాగ్ (boolean flag) రూపంలో ఉంటుంది. ఉదాహరణకు: approved: true.

ఇది ఒక పొరపాటు. బూలియన్ అనేది అటాకర్లు దుర్వినియోగం చేసే మూడు విధాలుగా విఫలమవుతుంది:

సమస్య ఏమిటంటే, మీరు అప్రూవల్‌ను మొత్తం సెషన్ యొక్క లక్షణంగా (property) పరిగణిస్తున్నారు. అది ఒక నిర్దిష్ట కాల్‌కు సంబంధించిన సాక్ష్యంగా ఉండాలి.

దీన్ని ఎలా సరిదిద్దాలి:

ఒక మనిషి కాల్‌ను అప్రూవ్ చేసినప్పుడు, ఒక సురక్షితమైన ట్యాగ్‌ను (secure tag) సృష్టించండి. ఈ ట్యాగ్ ఈ నాలుగు అంశాలను లాక్ చేయాలి:

ఎగ్జిక్యూషన్ జరిగే ఖచ్చితమైన సమయంలో ఈ ట్యాగ్‌ను వెరిఫై చేయండి. సిస్టమ్‌కు మాత్రమే తెలిసిన సీక్రెట్ కీని (secret key) ఉపయోగించండి.

ఇంప్లిమెంటేషన్ కోసం ఈ నియమాలను పాటించండి:

అథరైజేషన్ (Authorization) అనేది ఒక ఫ్లోటింగ్ స్టేట్‌గా ఉండకూడదు. అది ఇలా నిరూపించే ఒక బౌండ్ ఎన్వలప్‌గా ఉండాలి: "ఈ నిర్దిష్ట వ్యక్తి, ఈ నిర్దిష్ట సమయం వరకు, ఈ నిర్దిష్ట టూల్ కోసం ఈ నిర్దిష్ట ఆర్గుమెంట్స్‌ను అప్రూవ్ చేశారు."

బూలియన్‌లను ఉపయోగించడం ఆపండి. అవి సరళీకరణ కాదు. అవి ఒక బగ్ (bug).

మూలం: https://dev.to/whatsonyourmind/stop-trusting-the-agent-bind-tool-call-approvals-to-the-exact-call-5080

ఐచ్ఛిక అభ్యాస సమూహం: https://t.me/GyaanSetuAi