AI-ಸಕ್ರಿಯಗೊಳಿಸಿದ GitHub Actions ಅನ್ನು ಕೇವಲ ಒಂದು ಕಾಮೆಂಟ್ ಮೂಲಕ ಹೈಜಾಕ್ ಮಾಡಬಹುದು, ಇದರಿಂದ API ಕೀಗಳು, ಕ್ಲೌಡ್ ಟೋಕನ್ಗಳು ಮತ್ತು ಇತರ ರಹಸ್ಯಗಳು ಸೋರಿಕೆಯಾಗಬಹುದು. ಒಬ್ಬ ಭದ್ರತಾ ಸಂಶೋಧಕರು 22 ಓಪನ್-ಸೋರ್ಸ್ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಿದ್ದಾರೆ, ಅಲ್ಲಿ ಸಾರ್ವಜನಿಕ ಟ್ರಿಗರ್, “skip prompts” ಫ್ಲಾಗ್ ಹೊಂದಿರುವ AI ಟೂಲ್ ಮತ್ತು ಬಹಿರಂಗಗೊಂಡ ರಹಸ್ಯಗಳು ನೇರವಾದ ಡೇಟಾ ಸೋರಿಕೆಯ ಹಾದಿಯನ್ನು ಸೃಷ್ಟಿಸುತ್ತವೆ.
ಈ ದೋಷವು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ
ಈಗಿನ ಪ್ರಾಜೆಕ್ಟ್ಗಳು AI ಏಜೆಂಟ್ಗಳನ್ನು—Claude Code, GitHub Copilot CLI ಮತ್ತು ಅಂತಹ ಇತರ ಪರಿಕರಗಳನ್ನು—ನೇರವಾಗಿ CI ಪೈಪ್ಲೈನ್ಗಳಲ್ಲಿ ಅಳವಡಿಸುತ್ತಿವೆ. ಒಂದು ವರ್ಕ್ಫ್ಲೋ ಹಂತವು ಶೆಲ್ ಕಮಾಂಡ್ ಅನ್ನು ರನ್ ಮಾಡುತ್ತದೆ ಮತ್ತು ಹೆಚ್ಚಾಗಿ ಆ ಪರಿಕgetಕ್ಕೆ ಸಂವಾದಾತ್ಮಕ ಅನುಮತಿ ವಿನಂತಿಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಲು ಹೇಳುವ ಫ್ಲಾಗ್ ಅನ್ನು ಸೇರಿಸುತ್ತದೆ. ಯಾವುದೇ ಸಾರ್ವಜನಿಕ ಇನ್ಪುಟ್—ಒಂದು ಇಶ್ಯೂ (issue), ಕಾಮೆಂಟ್ ಅಥವಾ ಪುಲ್-ರಿಕ್ವೆಸ್ಟ್ (pull-request) ಶೀರ್ಷಿಕೆ—ನಗುವಾಗ ವರ್ಕ್ಫ್ಲೋ ಪ್ರಾರಂಭವಾದರೆ, ದಾಳಿಕೋರರು ಕೇವಲ ಒಂದು ಸಾಲಿನ ಪಠ್ಯವನ್ನು ಪೋಸ್ಟ್ ಮಾಡಿದರೆ ಸಾಕು, ಅದನ್ನು AI ಒಂದು ಕಮಾಂಡ್ ಎಂದು ಪರಿಗಣಿಸುತ್ತದೆ.
"skip prompts" ಫ್ಲಾಗ್ನಿಂದ ಈಗಾಗಲೇ ಅನಿಯಂತ್ರಿತ ಶೆಲ್ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುವ AI, ವರ್ಕ್ಫ್ಲೋ ಬಹಿರಂಗಪಡಿಸುವ ಯಾವುದೇ ಎನ್ವಿರಾನ್ಮೆಂಟ್ ವೇರಿಯಬಲ್ ಅಥವಾ ಫೈಲ್ ಅನ್ನು ಓದುತ್ತದೆ. ಒಂದು ವೇಳೆ ಆ ಕೆಲಸವು (job) ರಹಸ್ಯಗಳನ್ನು—API ಕೀಗಳು, ಕ್ಲೌಡ್ ಸರ್ವಿಸ್ ಟೋಕನ್ಗಳು ಅಥವಾ ಪೂರ್ಣ ಸರ್ವಿಸ್-ಅಕೌಂಟ್ ಕ್ರೆಡೆನ್ಷಿಯಲ್ಗಳನ್ನು—ಲೋಡ್ ಮಾಡಿದ್ದರೆ, AI ಆ ಮೌಲ್ಯಗಳನ್ನು ದಾಳಿಕೋರರು ನಿಯಂತ್ರಿಸುವ ಸರ್ವರ್ಗೆ ಕಳುಹಿಸುತ್ತದೆ. ಯಾವುದೇ ಕೋಡ್ ಬದಲಾವಣೆ ಇಲ್ಲದೆ, ಯಾವುದೇ ಹೊಸ ಅವಲಂಬನೆ (dependency) ಇಲ್ಲದೆ, ಕೇವಲ ಹಾನಿಕಾರಕವಲ್ಲದಂತೆ ಕಾಣುವ ಒಂದು ಕಾಮೆಂಟ್ ಮೂಲಕ ಇದು ಸಾಧ್ಯವಾಗುತ್ತದೆ.
ನೈಜ ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳು
ಸಂಶೋಧಕರು ಈಗಾಗಲೇ ಪ್ಯಾಚ್ ಮಾಡಲಾದ ಮೂರು ದೋಷಪೂರಿತ ರೆಪೊಸಿಟರಿಗಳನ್ನು ಖಚಿತಪಡಿಸಿದ್ದಾರೆ:
- pymc-labs/pymc-marketing – ಪ್ರಾಂಪ್ಟ್ ಇಂಜೆಕ್ಷನ್ ಮೂಲಕ Anthropic API ಕೀಯನ್ನು ಪಡೆಯಲು ಸಾರ್ವಜನಿಕ ಇಶ್ಯೂ ಅನ್ನು ಬಳಸಬಹುದು.
- MadAppGang/dingo – ಈ ವರ್ಕ್ಫ್ಲೋ Claude Code ಗೆ ಪೂರ್ಣ Bash ಪ್ರವೇಶವನ್ನು ನೀಡಿತು ಮತ್ತು ಒಂದೇ ಕೆಲಸದಲ್ಲಿ (job) ಎರಡು ರಹಸ್ಯಗಳನ್ನು ಬಹಿರಂಗಪಡಿಸಿತು.
- MadAppGang/claudish – dingo ಪ್ರಾಜೆಕ್ಟ್ನಂತೆಯೇ ಅದೇ ದೋಷಪೂರಿತ ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ಬಳಸಿದೆ.
ಒಂದು ಸಂಶೋಧನೆಯಲ್ಲಿ ಲೈವ್ ಕ್ಲೌಡ್-ಸರ್ವಿಸ್ ಅಕೌಂಟ್ ಕೀ ಪತ್ತೆಯಾಯಿತು, ಇದನ್ನು ಸಂಶೋಧಕರು ನೇರವಾಗಿ ಪ್ರಮುಖ AI ಪ್ರೊವೈಡರ್ನ ಭದ್ರತಾ ತಂಡಕ್ಕೆ ವರದಿ ಮಾಡಿದರು. ಹದಿಮೂರು ಹೆಚ್ಚುವರಿ ವರದಿಗಳು ನಿರ್ವಹಕರ ಬಳಿ ಬಾಕಿ ಇವೆ; ಪರಿಹಾರಗಳು ಜಾರಿಗೆ ಬರುವವರೆಗೆ ಅವರ ಹೆಸರುಗಳನ್ನು ಬಹಿರಂಗಪಡಿಸಲಾಗುತ್ತಿಲ್ಲ.
ಅಪಾಯದಲ್ಲಿ ಏನಿದೆ?
ದಾಳಿಕೋರರು ರಹಸ್ಯವನ್ನು ಹೊರತೆಗೆದಾಗ, ಹಾನಿಯು ತಕ್ಷಣದ ಮತ್ತು ವೆಚ್ಚದಾಯಕವಾಗಿರಬಹುದು. ಕ್ಲೌಡ್-ಸರ್ವಿಸ್ ಅಕೌಂಟ್ ಕೀಯು ಕಂಪ್ಯೂಟ್ ಸಂಪನ್ಮೂಲಗಳು, ಸ್ಟೋರೇಜ್ ಬಕೆಟ್ಗಳು ಮತ್ತು ಇತರ ಪಾವತಿಸಿದ ಸೇವೆಗಳಿಗೆ ಅನಿಯಂತ್ರಿತ ಪ್ರವೇಶವನ್ನು ನೀಡುತ್ತದೆ. ದೊಡ್ಡ ಭಾಷಾ ಮಾದರಿ (large-language-model) ಪ್ರೊವೈಡರ್ನ API ಕೀಯು ಅನ್ಲಿಮಿಟೆಡ್ ಕ್ವೇರಿಗಳನ್ನು ರನ್ ಮಾಡಬಹುದು, ಇದು ಸಾವಿರಾರು ಡಾಲರ್ಗಳ ವೆಚ್ಚವನ್ನು ಉಂಟುಮಾಡಬಹುದು. ಈ ಎಕ್ಸ್ಪ್ಲಾಯ್ಟ್ CI ಪರಿಸರದಲ್ಲಿ ನಡೆಯುವುದರಿಂದ, ಉಲ್ಲಂಘನೆಯು ಡೌನ್ಸ್ಟ್ರೀಮ್ಗೆ ಹರಡಬಹುದು: ಕಳಂಕಿತ ರನ್ನರ್ನಲ್ಲಿ ನಿರ್ಮಿಸಲಾದ ಯಾವುದೇ ಆರ್ಟಿಫ್ಯಾಕ್ಟ್ (artifact) ದುಷ್ಟ ಕೋಡ್ ಅನ್ನು ಹೊಂದಿರಬಹುದು, ಇದು ಒಂದೇ ರೆಪೊಸಿಟರಿಯನ್ನು ಸಪ್ಲೈ-ಚೈನ್ ವೆಕ್ಟರ್ ಆಗಿ ಪರಿವರ್ತಿಸಬಹುದು.
AI-ಸಹಾಯಿತ CI ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿರುವ ತಂಡಗಳಿಗೆ, ಇದರ ಲಾಭ ಮತ್ತು ನಷ್ಟದ ನಡುವಿನ ವ್ಯತ್ಯಾಸ ಸ್ಪಷ್ಟವಾಗಿದೆ. ಆಟೋ-ಜನರೇಟೆಡ್ ಕೋಡ್, ಲಿಂಟಿಂಗ್ (linting) ಅಥವಾ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ನ ಅನುಕೂಲತೆಯನ್ನು, ಸಾರ್ವಜನಿಕ ಕಾಮೆಂಟ್ ಒಂದು ಗುಪ್ತ ಬ್ಯಾಕ್ಡೋರ್ ಆಗುವ ಅಪಾಯದೊಂದಿಗೆ ತೂಕ ಮಾಡಬೇಕಾಗುತ್ತದೆ.
ಈ ದೋಷವನ್ನು ಗಮನಿಸುವುದು ಏಕೆ ಕಷ್ಟ?
ಸಂಶೋಧಕರು ಆರಂಭದಲ್ಲಿ ಆರು ವರದಿಗಳನ್ನು ಸಲ್ಲಿಸಿದ್ದರು, ಆದರೆ ನಂತರ ಅವುಗಳನ್ನು ಹಿಂಪಡೆಯಲಾಯಿತು. ಈ ಹಿಂಪಡೆಯುವಿಕೆಯು GitHub Actions ನ ಅನುಮತಿ ಪರಿಶೀಲನೆಗಳ ಬಗ್ಗೆ ಇದ್ದ ಕಲ್ಪನೆಗಳಿಂದ ಉಂಟಾಯಿತು ಹೊರತು, Action ನ ಸೋರ್ಸ್ ಕೋಡ್ನ ಸಾಲು-ಸಾಲಿನ ವಿಮರ್ಶೆಯಿಂದಲ್ಲ. ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಮತ್ತು ಅಂತಃಪ್ರಜ್ಞೆಗಳು ತಪ್ಪುದಾರಿಗೆಳೆಯಬಹುದು; AI-ಸಕ್ರಿಯಗೊಳಿಸಿದ ಹಂತದ ಭದ್ರತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಏಕೈಕ ವಿಶ್ವಾಸಾರ್ಹ ಮಾರ್ಗವೆಂದರೆ, ಪರಿಕgetವನ್ನು ರನ್ ಮಾಡುವ ಕೋಡ್ ಮತ್ತು ಅದನ್ನು ಜೋಡಿಸುವ ವರ್ಕ್ಫ್ಲೋ YAML ಅನ್ನು ಪರಿಶೀಲಿಸುವುದು.
ತಡೆಗಟ್ಟುವಿಕೆಯ ಪರಿಶೀಲನಾ ಪಟ್ಟಿ (Mitigation checklist)
ನೀವು GitHub Actions ವರ್ಕ್ಫ್ಲೋ ಒಳಗೆ AI CLI ಅಥವಾ ಅಂತಹ ಇತರ ಪರಿಕರವನ್ನು ರನ್ ಮಾಡುತ್ತಿದ್ದರೆ, ಮರ್ಜ್ ಮಾಡುವ ಮೊದಲು ಈ ಎರಡು ಪ್ರಶ್ನೆಗಳಿಗೆ ಉತ್ತರಿಸಿ:
ವರ್ಕ್ಫ್ಲೋ ಅನ್ನು ಯಾರು ಟ್ರಿಗರ್ ಮಾಡಬಹುದು? ಟ್ರಿಗರ್ಗಳನ್ನು ವಿಶ್ವಾಸಾರ್ಹ ಘಟನೆಗಳಿಗೆ (ಉದಾಹರಣೆಗೆ, ಪ್ರೊಟೆಕ್ಟೆಡ್ ಬ್ರಾಂಚ್ಗಳಿಗೆ ಪುಶ್ ಮಾಡುವುದು) ಸೀಮಿತಗೊಳಿಸಿ ಅಥವಾ ಬಾಹ್ಯ ಕೊಡುಗೆದಾರರಿಂದ ಪ್ರಾರಂಭಿಸಲಾದ ರನ್ಗಳಿಗೆ ಸ್ಪಷ್ಟ ಅನುಮತಿಯನ್ನು ಕೇಳಿ. ಹೆಚ್ಚಿನ ಗೇಟಿಂಗ್ ಇಲ್ಲದೆ
on: issue_commentಅಥವಾon: issuesಅನ್ನು ಬಳಸಬೇಡಿ.ಒಂದೇ ಕೆಲಸದಲ್ಲಿ (job) ಯಾವ ರಹಸ್ಯಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗಿದೆ? ಅನಿಯಂತ್ರಿತ ಶೆಲ್ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುವ AI ಏಜೆಂಟ್ ಅನ್ನು ರನ್ ಮಾಡುವ ಕೆಲಸದಲ್ಲಿ (job) ಎಂದಿಗೂ API ಕೀಗಳು, ಕ್ಲೌಡ್ ಟೋಕನ್ಗಳು ಅಥವಾ ಸರ್ವಿಸ್-ಅಕೌಂಟ್ ಕ್ರೆಡೆನ್ಷಿಯಲ್ಗಳನ್ನು ಬಹಿರಂಗಪಡಿಸಬೇಡಿ. ರಹಸ್ಯಗಳಿರುವ ಹಂತಗಳನ್ನು AI ಪರಿಕರಗಳನ್ನು ಬಳಸದ ಪ್ರತ್ಯೇಕ ಕೆಲಸಗಳು (jobs) ಅಥವಾ ರನ್ನರ್ಗಳಿಗೆ ವಿಂಗಡಿಸಿ.
ಹೆಚ್ಚುವರಿ ಬಲವರ್ಧನೆ ಕ್ರಮಗಳು:
- ಅನುಮತಿ ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ಸ್ಕಿಪ್ ಮಾಡುವ ಫ್ಲಾಗ್ ಅನ್ನು ತೆಗೆದುಹಾಕಿ, ಇದರಿಂದ ಶೆಲ್ ಕಮಾಂಡ್ಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುವ ಮೊದಲು AI ಪರಿಕgetವು ಸ್ಪಷ್ಟವಾದ ದೃಢೀಕರಣವನ್ನು ಕೇಳುವಂತೆ ಮಾಡಬಹುದು.
- AI ಪರಿಕgetವು ಓದಬಹುದಾದ ಯಾವುದೇ ಎನ್ವಿರಾನ್ಮೆಂಟ್ ವೇರಿಯಬಲ್ ಅನ್ನು ಸ್ಯಾನಿಟೈಸ್ (sanitize) ಅಥವಾ ರಡಾಕ್ಟ್ (redact) ಮಾಡುವ ಹಂತವನ್ನು ಸೇರಿಸಿ.
- ಯಾವುದೇ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳಿಗೆ ಡೇಟಾ ಸೋರಿಕೆಯನ್ನು ತಡೆಯಲು ನೆಟ್ವರ್ಕ್ ಎಗ್ರೆಸ್ (network egress) ನಿಯಂತ್ರಣಗಳನ್ನು ಹೊಂದಿರುವ ಸೆಲ್ಫ್-ಹೋಸ್ಟೆಡ್ ರನ್ನರ್ಗಳನ್ನು ಬಳಸಿ.
ವಿರೋಧಾತ್ಮಕ ಅಂಶ: CI ನಲ್ಲಿ AI ನ ಉಪಯುಕ್ತತೆ
ಉತ್ಪಾದಕತೆಯ ಲಾಭಗಳು ಅಪಾಯಕ್ಕಿಂತ ಹೆಚ್ಚಿವೆ ಎಂದು ಬೆಂಬಲಿಗರು ವಾದಿಸುತ್ತಾರೆ. ಸ್ವಯಂಚಾಲಿತ ಕೋಡ್ ಸಲಹೆಗಳು ವಿಮರ್ಶೆಯ ಸಮಯವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತವೆ ಮತ್ತು AI-ಚಾಲಿತ ಪರೀಕ್ಷೆಗಳು ದೋಷಗಳನ್ನು ಮೊದಲೇ ಪತ್ತೆಹಚ್ಚುತ್ತವೆ. ಆದಾಗ್ಯೂ, ಅದೇ ಅನುಕೂಲತೆಯು ದಾಳಿಯ ವ್ಯಾಪ್ತಿಯನ್ನು (attack surface) ವಿಸ್ತರಿಸುತ್ತದೆ. ಕೀಲಿ ಅಂಶವೆಂದರೆ AI ಅನ್ನು ಕೈಬಿಡುವುದಲ್ಲ, ಬದಲಾಗಿ ಶೆಲ್-ಮಟ್ಟದ ಅಧಿಕಾರಗಳನ್ನು ಹೊಂದಿರುವ ಯಾವುದೇ ಪರಿಕgetವನ್ನು ಸಂಭಾವ್ಯ ದಾಳಿ ಮಾರ್ಗವಾಗಿ ಪರಿಗಣಿಸುವುದು.
ಮುಂದೆ ಏನನ್ನು ಗಮನಿಸಬೇಕು
ಈ ಸಂಶೋಧನೆಗಳು AI-ಸಕ್ರಿಯಗೊಳಿಸಿದ Actions ಗಾಗಿ ಕಟ್ಟುನಿಟ್ಟಾದ ಡಿಫಾಲ್ಟ್ ಅನುಮತಿಗಳ ಬಗ್ಗೆ GitHub ನ ಭದ್ರತಾ ಫೋರಂಗಳಲ್ಲಿ ಈಗಾಗಲೇ ಚರ್ಚೆಗಳನ್ನು ಹುಟ್ಟುಹಾಕಿವೆ. ಭವಿಷ್ಯದ ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಅಪ್ಡೇಟ್ಗಳು ಇವುಗಳನ್ನು ಒಳಗೊಂಡಿರಬಹುದು:
- ನೇರ ಶೆಲ್ ಪ್ರವೇಶವಿಲ್ಲದೆ (direct shell access), AI ಪರಿಕರಗಳನ್ನು ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ಡ್ ಪರಿಸರದಲ್ಲಿ (sandboxed environment) ಚಲಾಯಿಸಲು ಒತ್ತಾಯಿಸುವ ಒಂದು ಫ್ಲಾಗ್ (flag).
- ಇಶ್ಯೂ ಬಾಡಿಗಳು ಅಥವಾ ಕಾಮೆಂಟ್ಗಳಲ್ಲಿ ಪ್ರಾಂಪ್ಟ್-ಇಂಜೆಕ್ಷನ್ (prompt-injection) ಮಾದರಿಗಳ ಅಂತರ್ಗತ ಪತ್ತೆಹಚ್ಚುವಿಕೆ.
- ವರ್ಕ್ಫ್ಲೋವು ಸಾರ್ವಜನಿಕ ಟ್ರಿಗ್ಗರ್ಗಳನ್ನು (public triggers) ರಹಸ್ಯ ಮಾಹಿತಿ ಇರುವ ಕೆಲಸಗಳೊಂದಿಗೆ (secret-laden jobs) ಬೆರೆಸಿದಾಗ ಸ್ವಯಂಚಾಲಿತ ಎಚ್ಚರಿಕೆಗಳು.
ಸದ್ಯಕ್ಕೆ, ಇದರ ಜವಾಬ್ದಾರಿ ರೆಪೊಸಿಟರಿ ನಿರ್ವಾಹಕರ ಮೇಲಿದೆ (repository maintainers). ಗುರುತಿಸಲಾದ 22 ರೆಪೊಸಿಟರಿಗಳು ಈ ಸಮಸ್ಯೆ ಕೇವಲ ಒಂದು ಘಟನೆಯಲ್ಲ ಎಂಬುದನ್ನು ತೋರಿಸುತ್ತವೆ; ಇದೇ ರೀತಿಯ ವರ್ಕ್ಫ್ಲೋ ಮಾದರಿಯನ್ನು ಹೊಂದಿರುವ ಯಾವುದೇ ಪ್ರಾಜೆಕ್ಟ್ ಅಪಾಯಕ್ಕೆ ಸಿಲುಕಬಹುದು. ದಾಳಿಕೋರರು ಪತ್ತೆಹಚ್ಚುವ ಮೊದಲೇ CI ಕಾನ್ಫಿಗರೇಶನ್ಗಳ (CI configurations) ಶೀಘ್ರ ಆಡಿಟ್ ಸಮಸ್ಯೆಯನ್ನು ಬಹಿರಂಗಪಡಿಸಬಹುದು.
ಸಾರಾಂಶ: ಸಾರ್ವಜನಿಕ GitHub ಇಶ್ಯೂನಲ್ಲಿರುವ ಕೇವಲ ಒಂದು ಸಾಲಿನ ಪಠ್ಯವು AI ಏಜೆಂಟ್ಗೆ ನಿಮ್ಮ CI ಪರಿಸರದ ಮೇಲೆ ಸಂಪೂರ್ಣ ನಿಯಂತ್ರಣವನ್ನು ನೀಡಬಹುದು ಮತ್ತು ಅಲ್ಲಿ ನೀವು ಸಂಗ್ರಹಿಸಿರುವ ರಹಸ್ಯಗಳನ್ನು (secrets) ಕದಿಯಬಹುದು. ನಿಮ್ಮ ವರ್ಕ್ಫ್ಲೋಗಳನ್ನು ಯಾರು ಪ್ರಾರಂಭಿಸಬಹುದು ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸಿ, AI ಚಾಲಿತ ಹಂತಗಳಿಂದ ರಹಸ್ಯಗಳನ್ನು ದೂರವಿಡಿ ಮತ್ತು ಪರಿಶೀಲಿಸದ ಅನುಮತಿಗಳನ್ನು ನೀಡುವ ಪ್ರತಿಯೊಂದು ಫ್ಲಾಗ್ ಅನ್ನು ಸೂಕ್ಷ್ಮವಾಗಿ ಗಮನಿಸಿ. ಭದ್ರತಾ ಉಲ್ಲಂಘನೆಯ ವೆಚ್ಚವು ಶಿಸ್ತುಬದ್ಧ ಪರಿಶೀಲನೆಯ ಪ್ರಯತ್ನಕ್ಕಿಂತ ಬಹಳ ದೊಡ್ಡದಾಗಿರುತ್ತದೆ.
