Skip to content

Security: imgutss/RasaRichBot

Security

SECURITY.md

امنیت — Security Policy

نسخه‌های پشتیبانی‌شده: فقط آخرین وضعیت شاخهٔ main (و همان نسخه‌ای که روی Worker فعال است).

🔒 چه چیزی «راز» است و کجا زندگی می‌کند

نام کاربرد محل نگهداری
BOT_TOKEN توکن ربات از BotFather Environment Variables وورکر (Secret)
WEBHOOK_SECRET امضای درخواست‌های وبهوک Environment Variables وورکر (Secret)
ADMIN_KEY دسترسی اپراتور در مرورگر Environment Variables وورکر (Secret)

هیچ‌کدام از این‌ها نباید داخل کد، فایل، کامیت یا README بیایند. این مخزن عمداً هیچ کلیدی ندارد و فایل .dev.vars هم در .gitignore است.

اگر روی Cloudflare دیپلوی می‌کنی: مقادیر را فقط در بخش Settings → Variables and Secrets بگذار.

🚨 گزارش آسیب‌پذیری

لطفاً Issue عمومی نساز. مسیرهای امن:

  1. از GitHub Security Advisories (گزارش خصوصی) استفاده کن، یا
  2. در تلگرام به @RasaRichBot پیام بده و بنویس موضوع امنیتی است.

در گزارش این‌ها کمک می‌کند: نسخهٔ/شمارهٔ دیپلوی وورکر، مسیر API یا پیام دقیق خطا، و یک نمونهٔ بازتولیدشدنی. اگر فایل یا اسکرین‌شاتی لازم است، توکن‌ها و chat_idها را بپوشان.

هدف ما: پاسخ اولیه در ۷۲ ساعت، و اگر مشکل تأیید شد، اصلاح و انتشار در اولین فرصت.

🛡 نکات برای اپراتورها

  • توکن لو رفت؟ فوراً در BotFather با /revoke توکن را باطل کن، مقدار تازه را در وورکر بگذار و WEBHOOK_SECRET را عوض و وبهوک را دوباره ثبت کن.
  • کسی که ADMIN_KEY را داشته باشد می‌تواند از مرورگر به وورکر درخواست بزند؛ کلید را دوره‌ای عوض کن و در URL نگه ندار.
  • نشست مینی‌اپ با initData و امضای HMAC و انقضای یک‌ساعته اعتبارسنجی می‌شود؛ توکن نشست داخلی ۱۲ ساعته است.
  • ربات فقط به مقصدهایی منتشر می‌کند که کاربرِ میزبان و خود ربات در آن‌ها مدیر باشند.
  • اگر ربات را در کانالی مدیر می‌کنی، مجوزهای لازم را فقط به «ارسال پیام» محدود کن.

🙏 سپاس

از هر کسی که مسئولانه گزارش می‌دهد سپاسگزاریم — نامت را (اگر بخواهی) در بخش تشکر همین فایل اضافه می‌کنیم.

There aren't any published security advisories