ನಿಮ್ಮ AI ಏಜೆಂಟ್ ಅದರ ಟೂಲ್ಗಳಷ್ಟೇ ಸುರಕ್ಷಿತವಾಗಿದೆ
ನೀವು ನಿಮ್ಮ AI ಏಜೆಂಟ್ ಅನ್ನು ಬಲಪಡಿಸಲು (hardening) ಸಾಕಷ್ಟು ಸಮಯವನ್ನು ವ್ಯಯಿಸುತ್ತೀರಿ. ನೀವು ಅನುಮತಿಗಳನ್ನು (permissions) ನಿಗದಿಪಡಿಸುತ್ತೀರಿ. ಕೋಡ್ ಅನ್ನು ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ (sandbox) ಮಾಡುತ್ತೀರಿ. ಔಟ್ಪುಟ್ಗಳನ್ನು ಗಮನಿಸುತ್ತೀರಿ.
ನಂತರ ಏಜೆಂಟ್ ಒಂದು ಥರ್ಡ್-ಪಾರ್ಟಿ ಟೂಲ್ ಅನ್ನು ಲೋಡ್ ಮಾಡುತ್ತದೆ. ಇದ್ದಕ್ಕಿದ್ದಂತೆ, ನಿಮ್ಮ ಭದ್ರತಾ ಕೆಲಸವು ವಿಫಲವಾಗುತ್ತದೆ.
ನಿಮ್ಮ ಏಜೆಂಟ್ ಅದು ಕರೆಯುವ ಏಜೆಂಟ್ಗಳು ಮತ್ತು ಟೂಲ್ಗಳಷ್ಟೇ ಸುರಕ್ಷಿತವಾಗಿರುತ್ತದೆ. ಇದು ಪ್ರತಿಯೊಂದು ಇತರ ಏಜೆಂಟ್ನೊಂದಿಗೆ ರಿಜಿಸ್ಟ್ರಿ (registry), ಐಡೆಂಟಿಟಿ ಪ್ಲೇನ್ (identity plane) ಮತ್ತು ಗೇಟ್ವೇ ಅನ್ನು ಹಂಚಿಕೊಳ್ಳುತ್ತದೆ. ಒಂದು ಟೂಲ್ನಲ್ಲಿನ ಏಕೈಕ ವೈಫಲ್ಯವು ನಿಮ್ಮ ಇಡೀ ವ್ಯವಸ್ಥೆಯಾದ್ಯಂತ ಹರಡುತ್ತದೆ.
ಹೆಚ್ಚಿನ ತಂಡಗಳು ಏಜೆಂಟ್ ಅನ್ನು ಸುರಕ್ಷಿತಗೊಳಿಸುತ್ತವೆ ಆದರೆ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯನ್ನು (ecosystem) ಮರೆತುಬಿಡುತ್ತವೆ. ನಿಮ್ಮ ಮೂಲಸೌಕರ್ಯವನ್ನು ರಕ್ಷಿಸಲು ಈ ಆರು ತಂತ್ರಗಳನ್ನು ಬಳಸಿ:
ಡಿಜಿಟಲ್ ಫಿಂಗರ್ಪ್ರಿಂಟ್ಗಳನ್ನು ಬಳಸಿ. ಒಂದು ಟೂಲ್ ಸೋಮವಾರ ಸುರಕ್ಷಿತವಾಗಿ ಕಾಣಿಸಬಹುದು ಆದರೆ ಗುರುವಾರ ಹಗೆತನದಿಂದ ಕೂಡಿದದಾಗಿ (hostile) ಬದಲಾಗಬಹುದು. ವರ್ಷನ್ಗಳನ್ನು (versions) ಪին ಮಾಡಿ ಮತ್ತು ಟೂಲ್ ವಿವರಣೆ ಹಾಗೂ ಸ್ಕೀಮಾದ (schema) ಹ್ಯಾಶ್ ಅನ್ನು ಬಳಸಿ. ಪ್ರತಿ ಬಾರಿ ಟೂಲ್ ಲೋಡ್ ಆದಾಗಲೂ ಈ ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಅನ್ನು ಮರುಪರಿಶೀಲಿಸಿ. ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಬದಲಾದರೆ, ಟೂಲ್ ಅನ್ನು ನಿಲ್ಲಿಸಿ.
ಟೂಲ್ ಪಾಯಿಸನಿಂಗ್ (tool poisoning) ತಡೆಯಿರಿ. ಟೂಲ್ನ ವಿವರಣೆಯು ಮಾಡೆಲ್ಗೆ ಒಂದು ಸೂಚನಾ ಚಾನಲ್ ಆಗಿದೆ. ದುರುದ್ದೇಶಪೂರಿತ ಟೂಲ್ಗಳು ಪ್ರಾಂಪ್ಟ್ ಇಂಜೆಕ್ಷನ್ಗಳನ್ನು (prompt injections) ಪ್ರಚೋದಿಸಲು ವಿವರಣೆಗಳನ್ನು ಬಳಸುತ್ತವೆ. ಟೂಲ್ ಮೆಟಾಡೇಟಾವನ್ನು ಹಗೆತನದ ಇನ್ಪುಟ್ನಂತೆ ಪರಿಗಣಿಸಿ. ಗುಪ್ತ ಅಕ್ಷರಗಳು, HTML ಕಾಮೆಂಟ್ಗಳು ಅಥವಾ "ಹಿಂದಿನ ಆದೇಶಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ" (ignore previous orders) ಎಂಬಂತಹ ಸೂಚನೆಗಳಿಗಾಗಿ ಸ್ಕ್ಯಾನ್ ಮಾಡಿ.
ಹೆಸರಿನ ಗೊಂದಲವನ್ನು ತಡೆಯಿರಿ. ದುರುದ್ದೇಶಪೂರಿತ ಸರ್ವರ್ಗಳು ನಂಬಿಕಸ್ತ ಹೆಸರುಗಳಂತೆಯೇ ಇರುವ ಹೆಸರುಗಳನ್ನು ಬಳಸುತ್ತವೆ, ಉದಾಹರಣೆಗೆ send_email ಬದಲಿಗೆ send_emai1. ಅತೀ ಹತ್ತಿರದ ನಕಲಿ ಹೆಸರುಗಳನ್ನು ಗುರುತಿಸಿ (flag). ಗೊಂದಲವನ್ನು ತಪ್ಪಿಸಲು ಪ್ರತಿ ಟೂಲ್ ಅನ್ನು ಅದರ ಪರಿಶೀಲಿಸಿದ ಸರ್ವರ್ ಐಡೆಂಟಿಟಿ ಮೂಲಕ ನೇಮ್ಸ್ಪೇಸ್ (namespace) ಮಾಡಿ.
ಏಕೈಕ ಗೇಟ್ವೇ ಅನ್ನು ನಿರ್ಮಿಸಿ. ಎಲ್ಲಾ ಟ್ರಾಫಿಕ್ ಅನ್ನು ಒಂದು ಆಡಿಟಬಲ್ ಚೋಕ್ ಪಾಯಿಂಟ್ (auditable choke point) ಮೂಲಕ ರೌಟ್ ಮಾಡಿ. ಈ ಗೇಟ್ವೇಯು ಕರೆಯುವವರನ್ನು ದೃಢೀಕರಿಸಬೇಕು (authenticate), ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಸ್ಕ್ಯಾನ್ ಮಾಡಬೇಕು ಮತ್ತು ರೇಟ್-ಲಿಮಿಟ್ (rate-limit) ಮಾಡಬೇಕು. ಗೇಟ್ವೇಯು ದೋಷವನ್ನು ಕಂಡುಕೊಂಡರೆ, ಅದು ವಿನಂತಿಯನ್ನು ನಿರಾಕರಿಸಬೇಕು. ಕೇವಲ ಅದನ್ನು ಲಾಗ್ ಮಾಡಿ ಮುಂದುವರಿಯಬೇಡಿ.
ನೈಜ ಕಿಲ್ ಸ್ವಿಚ್ (kill switch) ಅನ್ನು ರಚಿಸಿ. ಹೆಚ್ಚಿನ ಕಿಲ್ ಸ್ವಿಚ್ಗಳು ಮುಖ್ಯ ಏಜೆಂಟ್ ಅನ್ನು ಮಾತ್ರ ನಿಲ್ಲಿಸುತ್ತವೆ. ಇದು ಸಬ್-ಏಜೆಂಟ್ಗಳು ಮತ್ತು ಟೂಲ್ ಸೆಷನ್ಗಳನ್ನು ಚಾಲನೆಯಲ್ಲಿರಿಸುತ್ತದೆ. ನೈಜ ಸ್ಟಾಪ್ ಸಿಗ್ನಲ್ ಪ್ರತಿಯೊಂದು ಸಬ್-ಏಜೆಂಟ್ಗೆ ತಲುಪಬೇಕು ಮತ್ತು ಪ್ರತಿ ಸೆಷನ್ ಅನ್ನು ಸುರಕ್ಷಿತ ಸ್ಥಿತಿಯಲ್ಲಿ ಬಿಡಬೇಕು.
ನಿಮ್ಮ ಸುರಕ್ಷತಾ ವ್ಯವಸ್ಥೆಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ. ನೀವು ಅದನ್ನು ಎಂದಿಗೂ ಪರೀಕ್ಷಿಸದಿದ್ದರೆ ಕಿಲ್ ಸ್ವಿಚ್ ಪ್ರಯೋಜನವಿಲ್ಲದಂತಾಗುತ್ತದೆ. ನೀವು ಸ್ವಿಚ್ ಎಳೆದಾಗ ಸಬ್-ಏಜೆಂಟ್ಗಳು ನಿಜವಾಗಿಯೂ ನಿಲ್ಲುತ್ತವೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಡ್ರಿಲ್ಗಳನ್ನು (drills) ನಡೆಸಿ.
AI ಟೂಲ್ಗಳನ್ನು ಸಾಫ್ಟ್ವೇರ್ ಡಿಪೆಂಡೆನ್ಸಿಗಳಂತೆ (software dependencies) ಪರಿಗಣಿಸಿ. ಅದೇ ಸ್ವಚ್ಛತೆಯನ್ನು (hygiene) ಅನ್ವಯಿಸಿ: ಪին ಮಾಡಿ, ಸಹಿ ಮಾಡಿ, ಫಿಂಗರ್ಪ್ರಿಂಟ್ ಮಾಡಿ ಮತ್ತು ಪರಿಶೀಲಿಸಿ.
ನಿಮ್ಮ ಏಜೆಂಟ್ಗಳು ಇಂದು ಲೋಡ್ ಮಾಡುವ ಟೂಲ್ಗಳನ್ನು ನೀವು ಹೇಗೆ ಪರಿಶೀಲಿಸುತ್ತೀರಿ? ನೀವು ಅನುಮೋದಿಸಿದ ನಂತರ ಒಂದು ಟೂಲ್ ಬದಲಾದರೆ ಅದನ್ನು ನೀವು ಪತ್ತೆಹಚ್ಚುತ್ತೀರಾ?
Source: https://dev.to/brennhill/your-ai-agent-is-only-as-secure-as-the-tools-and-agents-it-calls-53p7
Optional learning community: https://t.me/GyaanSetuAi
