扫描报告
5 /100
renatus-icm
Manage Renatus event marketing campaigns as an ICM: email campaigns, lead export, browser-based guest registration via CDP, event landing page generation, and unsubscribe sync
Legitimate Renatus event marketing campaign toolkit with clear documentation, declared CDP/session-token access, and standard subprocess-based email sending. No malicious behavior, exfiltration, obfuscation, or credential theft observed.
可以安装
Safe to use. Ensure Chrome/Brave CDP access uses a dedicated browser profile and credentials are managed per the documented security recommendations.
安全发现 2 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 低危 | Broader CDP access declared than strictly needed for skill scope 文档欺骗 | SKILL.md:28 |
| 低危 | Missing dependency in unsubscribe sync script 敏感访问 | scripts/weekly_unsubscribe_sync.sh:100 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | WRITE | WRITE | ✓ 一致 | SKILL.md declares file generation; scripts write CSV/JSON/config output |
| 网络访问 | READ | READ | ✓ 一致 | urllib requests to Supabase API and Renatus back office; all outbound URLs docum… |
| 命令执行 | WRITE | WRITE | ✓ 一致 | subprocess.run for gws/gog CLI email sending (lines 134-150, send_commercial_ema… |
| 环境变量 | READ | READ | ✓ 一致 | config_loader.py reads RENATUS_* env vars; renatus_leads.py reads SUPABASE_URL, … |
| 浏览器 | READ | READ | ✓ 一致 | CDP localStorage access reads 'auth' and '__RequestVerificationToken' only; SKIL… |
| 剪贴板 | NONE | NONE | — | No clipboard access found |
| 技能调用 | NONE | NONE | — | No skill-invoke patterns found |
| 数据库 | READ | READ | ✓ 一致 | Supabase funnel_leads table reads via lead-admin-export edge function; SUPABASE_… |
22 项发现
中危 外部 URL 外部 URL
http://127.0.0.1:9222 SKILL.md:28 中危 外部 URL 外部 URL
https://backoffice.myrenatus.com/Events/EventDetails?eventId=... SKILL.md:52 中危 外部 URL 外部 URL
https://YOUR_REGISTRATION_PAGE/ SKILL.md:72 中危 外部 URL 外部 URL
https://backoffice.myrenatus.com SKILL.md:75 中危 外部 URL 外部 URL
https://YOUR_DOMAIN assets/site/unsubscribe.html:57 中危 外部 URL 外部 URL
https://YOUR_DOMAIN/unsubscribe.html references/email-campaign.md:68 中危 外部 URL 外部 URL
https://YOUR_DOMAIN/unsubscribe.html?e= references/email-campaign.md:75 中危 外部 URL 外部 URL
https://$REF.supabase.co/functions/v1/lead-admin-export?limit=500 references/email-campaign.md:158 中危 外部 URL 外部 URL
https://YOUR_DOMAIN/commercial/ references/event-page-setup.md:30 中危 外部 URL 外部 URL
https://yourdomain.com/commercial/ references/event-page-setup.md:118 中危 外部 URL 外部 URL
https://backoffice.myrenatus.com/Events/EventDetails?eventId= scripts/add_event.py:210 中危 外部 URL 外部 URL
https://YOUR_PROJECT_REF.supabase.co scripts/config_loader.py:78 中危 外部 URL 外部 URL
https://YOUR_INSTRUCTOR_PHOTO_URL.jpg scripts/config_loader.py:91 中危 外部 URL 外部 URL
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd scripts/generate_email_template.py:65 中危 外部 URL 外部 URL
http://www.w3.org/1999/xhtml scripts/generate_email_template.py:66 中危 外部 URL 外部 URL
https://YOUR_REGISTRATION_PAGE_URL/ scripts/generate_email_template.py:323 中危 外部 URL 外部 URL
https://backoffice.myrenatus.com/Events/EventDetails?eventId=abc123... scripts/generate_event_page.py:9 中危 外部 URL 外部 URL
https://YOUR_PROJECT_REF.functions.supabase.co/submit-renatus-registration scripts/generate_event_page.py:451 中危 外部 URL 外部 URL
https://backoffice.myrenatus.com/Home/index scripts/weekly_unsubscribe_sync.sh:146 提示 邮箱 邮箱地址
[email protected] assets/site/unsubscribe.html:53 提示 邮箱 邮箱地址
[email protected] references/email-campaign.md:5 提示 邮箱 邮箱地址
[email protected] scripts/send_commercial_email_batches.py:13 目录结构
18 文件 · 172.2 KB · 4882 行 Python 9f · 3404L
Markdown 5f · 894L
HTML 2f · 314L
Shell 1f · 266L
CSV 1f · 4L
├─
▾
assets
│ ├─
▾
site
│ │ ├─
confirmation.html
HTML
│ │ └─
unsubscribe.html
HTML
│ └─
sample_leads.csv
CSV
├─
▾
references
│ ├─
email-campaign.md
Markdown
│ ├─
event-page-setup.md
Markdown
│ ├─
supabase-setup.md
Markdown
│ └─
workflows.md
Markdown
├─
▾
scripts
│ ├─
add_event.py
Python
│ ├─
config_loader.py
Python
│ ├─
generate_calendar.py
Python
│ ├─
generate_email_template.py
Python
│ ├─
generate_event_page.py
Python
│ ├─
renatus_delete_lead.py
Python
│ ├─
renatus_leads.py
Python
│ ├─
renatus_register_guest.py
Python
│ ├─
send_commercial_email_batches.py
Python
│ └─
weekly_unsubscribe_sync.sh
Shell
└─
SKILL.md
Markdown
依赖分析 1 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
playwright | not pinned | pip | 否 | No requirements.txt found; playwright is the only runtime dependency, used exclusively for Chrome CDP browser automation |
安全亮点
✓ SKILL.md comprehensively documents all credential requirements and security recommendations
✓ CDP access explicitly reads session tokens only, NOT passwords — documented inline at add_event.py line 43
✓ Email sending uses documented gws/gog CLI with subprocess.run — no hidden transmission
✓ All network requests target documented Supabase/Renatus endpoints — no arbitrary IP or C2 communication
✓ No base64, eval, or obfuscation patterns found in any Python or shell scripts
✓ No credential harvesting (no os.environ iteration, no ~/.ssh, ~/.aws, .env file reading)
✓ Dry-run defaults on registration and deletion scripts prevent accidental writes
✓ Lead export reads Supabase only with explicit admin token — no arbitrary data exfiltration
✓ Config file is gitignored and credentials can be fully env-var driven
✓ Bounce detection and unsubscribe sync are legitimate email compliance features
✓ All dependencies (playwright) are standard, pinned packages with no known supply chain risks