# شیوه‌نامهٔ اطلاع‌رسانی هفتگی آسیب‌پذیری‌ها سند دائمی برای تولید/به‌روزرسانی فایل‌های `Vulnerabilities_Notification_YYYY-MM-DD.xlsx` در همین مخزن. عامل AI باید این سند را مبنا بگیرد مگر کاربر صریحاً خلاف آن را بگوید. --- ## 1. هدف هر هفته از روی **آخرین نسخهٔ اکسل**، فایل جدید با تاریخ روز ساخته شود و محتوای خبرنامهٔ همان هفته (SANS NewsBites یا @RISK یا منبع اعلام‌شده) در همان ساختار جانمایی شود. --- ## 2. ورودی‌های لازم از کاربر کاربر در هر درخواست باید این‌ها را بدهد (یا در پیام بچسباند): | مورد | مثال | |------|------| | فایل قالب (آخرین نسخه) | `@Vulnerabilities_Notification_2026-08-09.xlsx` | | متن کامل خبرنامه / منبع | NewsBites Vol.x Num.y یا @RISK Vol.x Num.y | | تاریخ هدف (اگر غیر از امروز) | اختیاری؛ پیش‌فرض = تاریخ روز سیستم | اگر محدودهٔ محتوا مبهم باشد: - **NewsBites** → curated (داستان‌ها + KEV + CVEهای صریح + ADV تجمیعی برای بسته‌های بدون لیست کامل ID) - **@RISK RECENT CVEs** → یک ردیف به ازای هر CVE ID مگر کاربر خلاف بگوید --- ## 3. نام‌گذاری و تاریخ 1. قالب را کپی کن به: `Vulnerabilities_Notification_YYYY-MM-DD.xlsx` (تاریخ میلادی امروز یا تاریخ اعلام‌شده) 2. در شیت‌ها: - میلادی: `YYYY/MM/DD` - شمسی: با تقویم پارسی همان روز (مثلاً `1405/05/18`) 3. منبع ثابت نمونه: - NewsBites: `SANS NewsBites Vol.XX Num.YY / ISC / Vendor Advisory / CISA KEV` - @RISK: `SANS @RISK Vol.XX Num.YY / ISC / Vendor Advisory / CISA KEV` ### مهلت اقدام (پیش‌فرض) | شدت / وضعیت | مهلت شمسی | |-------------|-----------| | KEV یا Critical | تاریخ گزارش + ۳ روز | | High | تاریخ گزارش + ۷ روز | | Medium / Low | تاریخ گزارش + ۱۴ روز | --- ## 4. ساختار شیت‌ها (بدون تغییر ستون‌ها) شیت‌ها به ترتیب قالب: 1. `Summary` 2. `Vulnerabilities` (۲۹ ستون فارسی؛ هدر را عوض نکن) 3. `Assets` 4. `Tracking` 5. `MessageTemplates` 6. `_Lists` 7. `Notification` ### ستون‌های کلیدی `Vulnerabilities` `ردیف` · `تاریخ_اطلاع‌رسانی` · `منبع` · `لایه_دسته‌بندی` · `Vendor` · `محصول_سرویس` · `مولفه_آسیب‌پذیر` · `CVE_Advisory` · `CVSS` · `سطح_شدت` · `وضعیت_بهره‌برداری` · `نوع_آسیب‌پذیری` · `توضیح_اثر` · `نسخه‌های_تحت_تاثیر` · `دارایی_داخلی_مرتبط` · `مالک_دارایی` · `اینترنتی_است` · `حساسیت_خدمت` · `قابلیت_بهره‌برداری_در_سازمان` · `ATTACK_Technique` · `IOC_موجود` · `اقدام_اصلاحی` · `راهکار_موقت` · `نیاز_به_Downtime` · `مسئول_اقدام` · `مهلت_اقدام` · `وضعیت_پیگیری` · `لینک_مرجع` · `توضیحات_تکمیلی` ### قواعد محتوا - `توضیح_اثر` / `اقدام_اصلاحی` / `راهکار_موقت` / مالک و مسئول: **فارسی** - Vendor / Product / CVE / URL / مقادیر انگلیسی ثابت: **انگلیسی** - `وضعیت_پیگیری`: پیش‌فرض `Open` - `وضعیت_بهره‌برداری`: - `KEV` فقط برای CVEهای داخل CISA KEV - در غیر این صورت `Under Review` - در صورت شواهد بهره‌برداری فعال در خبر: `Active Exploitation Suspected` - `Assets`: یک Asset منطقی به ازای هر محصول/خانواده - `Tracking`: یک ردیف به ازای هر یافته (CVE یا ADV) - ردیف‌های دادهٔ هفتهٔ قبل را پاک کن؛ فقط هدر/قالب بماند - پس از نوشتن، ردیف‌های خالی/باقی‌ماندهٔ UsedRange قدیمی را هم پاک کن --- ## 5. سطح شدت (CVSS و استثنا) | CVSS | سطح | |------|------| | ≥ 9.0 | Critical | | 7.0 – 8.9 | High | | 4.0 – 6.9 | Medium | | < 4.0 | Low | استثناها: - **KEV** حتی با CVSS پایین‌تر → حداقل `High` (مثل Cisco FMC با CVSS 5.3) - CVSS=0 با KEV یا اثر بحرانی در متن → قضاوت Critical/High - موارد «NO CUSTOMER ACTION REQUIRED» → شدت عملیاتی `Low` با اقدام پایش ترتیب ردیف‌ها در `Notification` و ترجیحاً در `Vulnerabilities`: ابتدا KEV، بعد Critical، بعد High، بعد Medium/Low. --- ## 6. رنگ‌بندی `Notification` (خوانا) | سطح | RGB | Excel Color (BGR) | |-----|-----|-------------------| | Critical | (255, 199, 206) قرمز روشن | 13551615 | | High | (255, 194, 102) نارنجی | 6734591 | | Medium | (255, 255, 153) زرد | 10092543 | | Low | سفید | 16777215 | | هدر | (68, 114, 196) + فونت سفید | 12874308 | رنگ‌ها را بعد از هر بازنویسی و بعد از اعمال فونت، دوباره روی ردیف‌های داده اعمال کن. --- ## 7. فونت و تراز (دائمی) | نوع متن | فونت | اندازه | |--------|------|--------| | فارسی (کاراکتر عربی/فارسی) | `B Mitra` | 12 | | انگلیسی/لاتین (CVE، Vendor، URL، CVSS، Critical/High/Open/KEV، …) | `Times New Roman` | 10 (= ۱۲ − ۲) | - همه سلول‌های استفاده‌شده در شیت‌های محتوا: **وسط‌چین** (`xlCenter = -4108`) افقی و عمودی - سلول مختلط فارسی+انگلیسی: پایه `B Mitra` 12 - شیت‌های مشمول: `Summary`, `Vulnerabilities`, `Assets`, `Tracking`, `Notification`, `MessageTemplates` --- ## 8. دسته‌بندی (`لایه_دسته‌بندی`) از مقادیر موجود در `_Lists` استفاده کن؛ در صورت نیاز مقدار جدید را به `_Lists` اضافه کن. نمونه‌های رایج: - `Security Appliance` · `Security Appliance / SD-WAN` - `OS` · `OS / Network` · `OS / Network Service` · `OS / Virtualization` · `OS / Kernel` - `OT / ICS` · `Hardware / Firmware` - `Service / Web` · `Service / SIEM` · `Service / VoIP` - `Application / RMM` · `Application / AI` · `Application / Middleware` · `Application / CI-CD` - `Application / Microsoft` · `Application / Healthcare` · `Application / Retail` · `Application / Ads` - `Package / JS` · `Package / Library` · `Package / Hosting` - `DevOps / Infra` · `Cloud / PaaS` - `Process / Governance` · `Process / Awareness` - `Network / SD-WAN` · `API / Framework` شناسهٔ غیر-CVE: `ADV-...-YYYY-MM` (یا مشابه الگوی نسخهٔ قبل). --- ## 9. خروجی‌های جانبی ### Summary شمارش‌ها را از دادهٔ واقعی پر کن: Total / Critical / High / Medium / Low / KEV / Active Exploitation / Internet-facing / Actions Due < 72h / Open / In Progress / Mitigated / Patched. ### MessageTemplates دو قالب: 1. `پیام رسمی کامل` — موضوع، جمع یافته‌ها، اولویت KEV، سایر اولویت‌های سازمانی، نام فایل پیوست 2. `پیام کوتاه گروه` — خلاصهٔ یک‌پاراگرافی برای گروه --- ## 10. چرخهٔ اجرا (الگوریتم عامل) ```text 1) خواندن آخرین اکسل قالب و مسلط شدن به ساختار 2) Clone → Vulnerabilities_Notification_<امروز>.xlsx 3) Clear ردیف‌های داده قدیم (Vulnerabilities/Assets/Tracking/Notification) 4) استخراج یافته‌ها از خبرنامه + نگاشت لایه/شدت/KEV 5) پر کردن Vulns + Assets + Tracking 6) پر کردن Notification (با رنگ) + Summary + MessageTemplates + _Lists 7) اعمال فونت B Mitra/TNR و وسط‌چین روی همه شیت‌های محتوا 8) باز‌اعمال رنگ Notification/Summary پس از فونت 9) وریفای: پوشش IDها، دسته‌بندی نمونه، فونت/تراز، خوانایی فارسی 10) حذف فایل‌های موقت: _build / _inspect / _tmp* / _fix* / _verify* / _font_check* ``` ابزار پیش‌فرض در این محیط: **Excel COM + PowerShell** (اگر Python/openpyxl نبود). متون فارسی را از JSON با UTF-8 بخوان، نه از here-string خراب‌شونده در `.ps1`. --- ## 11. چک‌لیست وریفای - [ ] تعداد یافته‌ها = موارد توافق‌شدهٔ خبرنامه (Missing=0 / Extra=0) - [ ] هر یافته در `Tracking` و رنگ درست در `Notification` - [ ] لایه‌های کلیدی (KEV، OT، Cisco، Microsoft، …) صحیح - [ ] هدر فارسی = B Mitra 12 · CVE = Times New Roman 10 · effect فارسی = B Mitra 12 - [ ] `HorizontalAlignment = -4108` - [ ] متن فارسی بدون mojibake - [ ] تاریخ میلادی/شمسی هماهنگ - [ ] هیچ فایل موقت `_...` باقی نمانده --- ## 12. الگوی درخواست کاربر (کپی‌پیست) ```text طبق شیوه‌نامهٔ اطلاع‌رسانی هفتگی آسیب‌پذیری‌ها عمل کن. قالب: @Vulnerabilities_Notification_YYYY-MM-DD.xlsx منبع: Vol.x Num.y — تاریخ <میلادی> محدوده: متن خبرنامه: خروجی: تاریخ امروز، رنگ/فونت/تراز طبق شیوه‌نامه، وریفای کامل، حذف فایل موقت. ``` --- ## 13. خارج از محدوده (مگر دستور صریح) - تغییر ساختار ستون‌ها یا حذف شیت‌ها - commit/push بدون درخواست کاربر - نوشتن exploit / PoC - باز کردن مسیرهای ignoreشدهٔ mono-repo طبق قوانین workspace --- *نسخهٔ شیوه‌نامه: 2026-08-09 — هم‌راستا با قالب `Vulnerabilities_Notification_2026-08-09.xlsx`*