Give a device-local AI agent its own Microsoft Entra identity. Reference implementation for Microsoft Agent 365 and Entra Agent ID.
- capability exposure inferred + 35
- tool safety inferred + 20
inferred
The A–E grade is our heuristic synthesis — a "review this" prompt, not a verdict. Each factor is tagged by what backs it: attested (a verifiable record), reported (a third party's claim), or inferred (our own heuristic, e.g. permissions). See methodology.
grade last moved 10h ago · see ecosystem CVEs →
- D · 75 → C · 55
- D · 67 → D · 75
- C · 35 → D · 67
- A · 0 → C · 35
No known CVEs for this server.
- medium dangerous code
dynamic exec: eval()/exec(), __import__()
- medium exfiltration combo resolve_file_url
single tool reads + sends: fs, net
- medium exfiltration combo get_a365_file_metadata_by_url
single tool reads + sends: fs, net
- medium tool shadowing send_email
tool "send_email" shadows a verified server's tool
analyzed commit f878cea · analyzer v33 · 3h ago
skills & prompt files 6
- skill microsoft-entrabot-f878cea/.claude/skills/implement-agent-id/SKILL.md
- skill microsoft-entrabot-f878cea/.claude/skills/refresh-persona/SKILL.md
- agent-rules microsoft-entrabot-f878cea/AGENTS.md
- agent-rules microsoft-entrabot-f878cea/CLAUDE.md
- prompt-file microsoft-entrabot-f878cea/engineering-history/prompts/multi-tenant-lightweight-chat-planning-prompt.md
- prompt-file microsoft-entrabot-f878cea/prompts/agent_system.md
danger signals2
- dynamic code execution eval()/exec() microsoft-entrabot-f878cea/tests/test_efferent_copy.py :203
exec( - dynamic code execution __import__() microsoft-entrabot-f878cea/tests/test_keyring_sanity.py :15
cls = getattr(__import__(module_name, fromlist=[class_name]), class_name)
Heuristic, inferred signals — false positives (legitimately powerful tools, forks, language ports) are expected. Treat each as "review this", not a verdict. See the ecosystem-wide picture on the security hub, or the fleet security of microsoft.