Back to skill

Security audit

Mog

Security checks across malware telemetry and agentic risk

Overview

Mog is a legitimate Microsoft 365 CLI, but it needs Review because it can send, change, and delete live account data and stores broad OAuth access tokens in file storage by default.

Install only if you are comfortable granting this tool broad delegated access to your Microsoft 365 account. Prefer a least-privileged or isolated Azure app, use keychain storage when possible, treat ~/.config/mog/tokens.json as sensitive if file storage is used, and avoid letting an agent run delete, clear, send, or update commands without explicit human review.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (8)

Lp3

Medium
Category
MCP Least Privilege
Confidence
87% confidence
Finding
The skill advertises and documents capabilities that imply network access, file writes, and use of local credential/token files, but it does not declare permissions. This creates a transparency and consent problem: an agent or user may invoke a skill that can access Microsoft 365 data and write local files without explicit permission gating or clear security boundaries.

Missing User Warnings

Medium
Confidence
84% confidence
Finding
The skill documents destructive or data-affecting operations such as sending mail, deleting calendar items, removing drive files, clearing tasks, deleting contacts, updating spreadsheets, and deleting OneNote content without warning users about irreversible effects or the need for confirmation. In an agent context, this increases the risk of accidental data loss, unintended outbound communication, or unauthorized modification of cloud data.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The delete command permanently removes a task immediately after invocation, with no confirmation prompt, dry-run mode, or safeguard against operator mistakes. In a CLI that manipulates live Microsoft 365 data, mistyped IDs, shell history reuse, or automation bugs can cause unintended data loss.

Missing User Warnings

High
Confidence
98% confidence
Finding
The clear command enumerates all completed tasks in a list and deletes them in bulk without any pre-execution warning or confirmation. Bulk destructive actions amplify the impact of user error, wrong-list selection, or accidental invocation, especially because the default behavior may target the first available list when no list ID is supplied.

Credential Access

High
Category
Privilege Escalation
Content
// SaveTokensAuto saves tokens using the current storage type.
func SaveTokensAuto(tokens *Tokens) error {
	switch CurrentStorage {
	case StorageKeyring:
		return SaveTokensKeyring(tokens)
	default:
		return SaveTokens(tokens)
Confidence
79% confidence
Finding
Keyring

Credential Access

High
Category
Privilege Escalation
Content
func SaveTokensAuto(tokens *Tokens) error {
	switch CurrentStorage {
	case StorageKeyring:
		return SaveTokensKeyring(tokens)
	default:
		return SaveTokens(tokens)
	}
Confidence
79% confidence
Finding
Keyring

Credential Access

High
Category
Privilege Escalation
Content
// LoadTokensAuto loads tokens using the current storage type.
func LoadTokensAuto() (*Tokens, error) {
	switch CurrentStorage {
	case StorageKeyring:
		return LoadTokensKeyring()
	default:
		return LoadTokens()
Confidence
76% confidence
Finding
Keyring

Credential Access

High
Category
Privilege Escalation
Content
func LoadTokensAuto() (*Tokens, error) {
	switch CurrentStorage {
	case StorageKeyring:
		return LoadTokensKeyring()
	default:
		return LoadTokens()
	}
Confidence
76% confidence
Finding
Keyring

VirusTotal

63/63 vendors flagged this skill as clean.

View on VirusTotal

Static analysis

No suspicious patterns detected.