Reading Widget

Security checks across malware telemetry and agentic risk

Overview

This skill appears to be a disclosed WeRead desktop widget that fetches reading stats, writes local widget files, and optionally enables background refresh.

Install only if you are comfortable giving the widget a WeRead API key and allowing it to fetch private reading stats. Keep the key out of shared files, skip the optional launchd setup unless you want automatic background refresh, and remove the LaunchAgent plus the key from settings when uninstalling.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (8)

Context-Inappropriate Capability

Medium
Confidence
93% confidence
Finding
The skill falls back to reading ~/.claude/settings.json to obtain WEREAD_API_KEY, which reaches outside the skill's own configuration boundary into a global user settings file. Even though it only targets a specific key name, this creates unnecessary access to broader user configuration and normalizes secret retrieval from unrelated global state, increasing privacy and credential-handling risk.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The skill instructs the user or agent to handle a long-lived API key tied to user identity and store it in local configuration, but it does not provide a clear warning about credential sensitivity, scope, revocation, or privacy implications. This increases the chance of mishandling a secret that grants access to private reading history and related account data.

Session Persistence

Medium
Category
Rogue Agent
Content
### Step 4(可选)— 后台自动刷新

如果用户想让数据自动更新(不只是 HTML 每 5 分钟 meta refresh,而是源数据也定期重抓),装一个 launchd plist:

```xml
<!-- ~/Library/LaunchAgents/com.user.reading-widget.plist -->
Confidence
95% confidence
Finding
plist

Session Persistence

Medium
Category
Rogue Agent
Content
如果用户想让数据自动更新(不只是 HTML 每 5 分钟 meta refresh,而是源数据也定期重抓),装一个 launchd plist:

```xml
<!-- ~/Library/LaunchAgents/com.user.reading-widget.plist -->
<plist version="1.0">
<dict>
  <key>Label</key><string>com.user.reading-widget</string>
Confidence
95% confidence
Finding
plist

Session Persistence

Medium
Category
Rogue Agent
Content
```xml
<!-- ~/Library/LaunchAgents/com.user.reading-widget.plist -->
<plist version="1.0">
<dict>
  <key>Label</key><string>com.user.reading-widget</string>
  <key>ProgramArguments</key>
Confidence
95% confidence
Finding
plist

Session Persistence

Medium
Category
Rogue Agent
Content
<key>StartInterval</key><integer>300</integer>
  <key>RunAtLoad</key><true/>
</dict>
</plist>
```

加载:`launchctl load ~/Library/LaunchAgents/com.user.reading-widget.plist`
Confidence
96% confidence
Finding
plist

Session Persistence

Medium
Category
Rogue Agent
Content
</plist>
```

加载:`launchctl load ~/Library/LaunchAgents/com.user.reading-widget.plist`

## 自定义
Confidence
93% confidence
Finding
launchctl load

Session Persistence

Medium
Category
Rogue Agent
Content
</plist>
```

加载:`launchctl load ~/Library/LaunchAgents/com.user.reading-widget.plist`

## 自定义
Confidence
93% confidence
Finding
plist

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal