Scan Report
27 /100
Apple iCloud Suite
Apple iCloud 全套服务操作:日历、照片、iCloud Drive、设备查找、提醒事项
Legitimate iCloud management suite with minor documentation inconsistencies and credential handling concerns, but no confirmed malicious behavior. The status_wall daemon adds persistence risk that should be documented.
Safe to install
Document the subprocess daemon behavior in SKILL.md. Standardize password usage guidance across scripts (main password vs app-specific password confusion). Consider pinning dependency versions.
Findings 4 items
| Severity | Finding | Location |
|---|---|---|
| Medium | Inconsistent credential type documentation Doc Mismatch | scripts/icloud-photos.py, scripts/icloud-notes.py, scripts/icloud-reminders.py:8 |
| Medium | Background daemon with undeclared persistence Priv Escalation | scripts/status_wall.py:152 |
| Low | Dependency versions not pinned Supply Chain | SKILL.md:25 |
| Low | No allowed-tools declaration in SKILL.md Doc Mismatch | SKILL.md:17 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | NONE | WRITE | ✓ Aligned | scripts/status_wall.py writes to ~/.status_wall.json, ~/.status_wall.pid, ~/.sta… |
| Network | NONE | READ | ✓ Aligned | Scripts make outbound API calls to iCloud (caldav.icloud.com, pyicloud) and Amap… |
| Environment | NONE | READ | ✓ Aligned | All scripts read ICLOUD_USERNAME, ICLOUD_PASSWORD, ICLOUD_APP_PASSWORD, ICLOUD_C… |
| Shell | NONE | WRITE | ✓ Aligned | status_wall.py:152 — subprocess.Popen spawns daemon; icloud_calendar.py:update_c… |
1 High 10 findings
High API Key 疑似硬编码凭证
PASSWORD="xxxx-xxxx-xxxx-xxxx" QUICKSTART.md:80 Medium External URL 外部 URL
https://appleid.apple.com README.md:97 Medium External URL 外部 URL
https://lbs.amap.com/ README.md:98 Medium External URL 外部 URL
https://vdirsyncer.pimutils.org/ SKILL.md:125 Medium External URL 外部 URL
https://khal.readthedocs.io/ SKILL.md:126 Medium External URL 外部 URL
https://todoman.readthedocs.io/ SKILL.md:127 Medium External URL 外部 URL
https://caldav.icloud.com/ evals/results/calendar-with-skill.md:5 Medium External URL 外部 URL
https://restapi.amap.com/v3/geocode/regeo? scripts/status_wall.py:335 Info Email 邮箱地址
[email protected] QUICKSTART.md:24 Info Email 邮箱地址
[email protected] scripts/icloud-notes.py:142 File Tree
18 files · 95.7 KB · 3153 lines Python 7f · 2128L
Markdown 10f · 1019L
JSON 1f · 6L
├─
▾
config-templates
│ └─
todoman-config.py
Python
├─
▾
evals
│ └─
▾
results
│ ├─
calendar-with-skill.md
Markdown
│ └─
calendar-without-skill.md
Markdown
├─
▾
references
│ ├─
calendar.md
Markdown
│ ├─
drive.md
Markdown
│ ├─
findmy.md
Markdown
│ ├─
photos.md
Markdown
│ └─
scripts.md
Markdown
├─
▾
scripts
│ ├─
icloud_calendar.py
Python
│ ├─
icloud_tool.py
Python
│ ├─
icloud-notes.py
Python
│ ├─
icloud-photos.py
Python
│ ├─
icloud-reminders.py
Python
│ └─
status_wall.py
Python
├─
_meta.json
JSON
├─
QUICKSTART.md
Markdown
├─
README.md
Markdown
└─
SKILL.md
Markdown
Dependencies 4 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
pyicloud | unpinned | pip | No | Open-source library, version not pinned |
caldav | unpinned | pip | No | Open-source CalDAV library, version not pinned |
icalendar | unpinned | pip | No | Open-source iCalendar library, version not pinned |
icloudpd | unpinned | pip | No | Optional dependency for batch photo download, version not pinned |
Security Positives
✓ All credential inputs are read from environment variables or interactive prompts, not hardcoded in source
✓ pyicloud is a well-known, publicly documented open-source library (not a custom implant)
✓ No base64-encoded strings, obfuscation, or anti-analysis techniques detected
✓ No ~/.ssh, ~/.aws, .env, or other sensitive credential path access
✓ No curl|bash remote script execution or eval() calls
✓ 2FA validation is enforced before accessing sensitive iCloud data
✓ Credentials are only transmitted to legitimate Apple iCloud and Amap API endpoints (HTTPS)
✓ Status wall writes to user-specified shared calendar, not hidden storage