# Sentinel's Journal ## 2026-02-07 - Telegram Bot Authorization Bypass **Vulnerability:** The Telegram Deployment Bot (`scripts/telegram_deploy_bot.py`) contained a "Fail Open" vulnerability where omitting the `TELEGRAM_ALLOWED_USER_IDS` environment variable resulted in granting access to *all* Telegram users instead of *none*. **Learning:** Security controls must default to deny (Fail Closed). Implicitly allowing access when configuration is missing creates silent vulnerabilities that are hard to detect until exploited. **Prevention:** Ensure all authorization checks explicitly return `False` or throw an exception if the access control list is empty or undefined. Never default to `True` in security-critical paths. ## 2026-02-13 - [Documentation] Cloudflare Nameservers and Domain Unification - Updated Cloudflare nameservers to daisy.ns.cloudflare.com and rocco.ns.cloudflare.com. - Unified domain name to lengkundee01.org across CNAME and PWA documentation. ## 2026-02-23 - [Information Leakage] Web Dashboard Error Handling **Vulnerability:** The Web Dashboard (`scripts/web_dashboard.py`) exposed raw exception messages directly to users in HTTP 500 responses. This could leak internal file paths, configuration details, or other sensitive information. **Learning:** Returning `str(e)` in API responses is convenient for debugging but dangerous in production. Attackers can intentionally trigger errors to map the system internals. **Prevention:** Always catch exceptions at the top level and return a generic "Internal Server Error" message to the client. Log the full exception details to a secure server log (stderr/file) for administrative review.