خلاصه پاسخ: حقیقت درباره Smart App Control در ویندوز ۱۱
قابلیت Smart App Control در ویندوز ۱۱ یک سازوکار پیشرفته کنترل اجرای کد مبتنی بر هوش ابری و اعتبارسنجی امضای دیجیتال است، نه یک نرمافزار آنتیویروس سنتی. این ویژگی با بهرهگیری از مدل اعتماد صفر (Zero Trust)، فایلهای اجرایی ناشناخته و فاقد امضای معتبر را پیش از اجرا مسدود میسازد تا از نفوذ باجافزارها و بدافزارهای روز-صفر جلوگیری کند؛ هرچند عدم امکان تعریف استثنای دستی (Exclusion) و تعامل خودکار با سناریوهای توسعه نرمافزار، باورهای نادرست متعددی درباره رفتار آن پدید آورده است.
نکات کلیدی
- 🛡️ فلسفه اجرای پیشفرض صفر: در حالت فعال (Enforcement Mode)، تنها برنامههایی اجرا میشوند که توسط هوش ابری مایکروسافت ایمن شناخته شوند یا دارای گواهی امضای کد معتبر از مرجع مورد اعتماد مایکروسافت (Trusted Root Program) باشند.
- ⚡ حالت ارزیابی هوشمند (Evaluation Mode): پس از نصب تمیز سیستمعامل، ویندوز ۱۱ فعالیتهای کاربر را معمولاً به مدت یک هفته بررسی کرده و در صورت نبود تداخل با جریانهای کاری توسعهدهندگان، قابلیت را بهصورت خودکار فعال میسازد.
- 💡 امکان فعالسازی مجدد: برخلاف نسخههای ابتدایی که نیازمند نصب مجدد کامل ویندوز بودند، بر اساس مستندات پشتیبانی مایکروسافت، بهروزرسانیهای جدید امکان روشنسازی بدون نصب مجدد را در دستگاههای سازگار فراهم کردهاند.
- 🔒 عدم پشتیبانی از استثناسازی دستی: در طراحی کنونی این ویژگی، تعریف استثنا (Exclusion) برای پوشهها یا فایلهای اجرایی خاص امکانپذیر نیست و توسعهدهندگان محلی نیازمند امضای کدهای خود هستند.
- ☁️ تفاوت ساختاری با راهکارهای سازمانی: این فناوری برای کاربران خانگی و مشاغل کوچک هدفگذاری شده و در شبکههای تحت مدیریت سازمانی، باید با راهکار سازمانی App Control for Business یا AppLocker جایگزین شود.
چرا این باورها پیرامون کنترل برنامهها در ویندوز رایجاند؟
با انتشار بهروزرسانی 22H2 و نسخههای متعاقب ویندوز ۱۱، مهندسان مایکروسافت پارادایم امنیتی سیستمعامل را دستخوش دگرگونی بنیادینی کردند. تا پیش از آن، مدل امنیتی سنتی ویندوز بر پایه «اجرای آزاد پیشفرض» (Default-Allow) استوار بود؛ بدین معنا که هر فایل اجرایی، اسکریپت یا فرایندی حق اجرا در فضای سیستم را داشت، مگر آنکه موتور آنتیویروس با بررسی دیتابیس امضاهای مخرب یا رفتارسنجی بیدرنگ، مخرب بودن قطعی آن را اثبات میکرد.
اما مهاجرت به مدل «عدم اعتماد پیشفرض» (Default-Deny) که زیربنای فناوریهای مدرن کنترل نرمافزار را تشکیل میدهد، اصطکاک مستقیمی با عادات چنددههای کاربران و متخصصان فناوری اطلاعات ایجاد کرده است. بسیاری از کاربران هنگام مواجهه با پیامهای خطای مسدودسازی برنامههای قدیمی، ابزارهای کاربردی متنباز، بازیهای ویدیویی مستقل یا پروژههای نرمافزاری دستساز خود در محیط ویژوال استودیو، تصور میکنند سیستم امنیتی ویندوز دچار نقص فنی شده یا رفتاری سرکشانه از خود نشان میدهد. عدم شفافیت پیرامون سرویسهای هوش ابری مایکروسافت و چگونگی صدور گواهیهای دیجیتال معتبر، بستری حاصلخیز برای شکلگیری افسانهها و سوءتفاهمهای فراوان فراهم آورده است. در ادامه، رایجترین باورهای نادرست پیرامون این قابلیت را موشکافی و ابطال میکنیم.
افسانه ۱: Smart App Control یک آنتیویروس کامل و جایگزین مایکروسافت دیفندر است
یکی از مهلکترین باورهای رایج میان کاربران خانگی و حتی برخی مدیران شبکه این است که با حضور قابلیت Smart App Control در ویندوز ۱۱، نیازی به راهکارهای آنتیویروس فعال وجود ندارد و این سازوکار جدید مستقیماً جایگزین Microsoft Defender Antivirus شده است.
حقیقت چیست؟
به استناد مستندات رسمی مایکروسافت Learn درباره Application Control، فناوریهای کنترل برنامه به هیچ وجه جانشین نرمافزارهای آنتیویروس نیستند، بلکه بهعنوان یک لایه دفاعی تکمیلی و حیاتی در کنار آنها عمل میکنند. کنترل برنامه تعیین میکند که «چه کدهایی اجازه ورود و اجرا در حافظه را دارند»، در حالی که آنتیویروس پیوسته رفتار کدهای در حال اجرا، ترافیک شبکه، رفتارهای مشکوک در رجیستری و بدافزارهای مستقر در حافظه را اسکن و واکاوی میکند.
بر اساس اعلام مستندات مایکروسافت Learn: «اگرچه کنترل برنامه میتواند رایانههای شما را در برابر کدهای مخرب بسیار مقاوم سازد، اما جایگزینی برای آنتیویروس نیست. شما باید همچنان یک راهکار آنتیویروس فعال را در کنار کنترل برنامه برای داشتن یک سبد امنیتی جامع سازمانی حفظ کنید.»
آنتیویروس در ویندوز کارهایی از قبیل پاکسازی فایلهای آلوده، قرنطینه کدهای مخرب مستقر روی دیسک، بررسی اسکریپتهای اجرا شده در بستر وب و نظارت بر آسیبپذیریهای حافظه را انجام میدهد؛ در حالی که کنترل برنامه اساساً یک گیتکیپر (Gatekeeper) در سطح کرنل و لایه Code Integrity است که صرفاً بر اساس دو مؤلفه تصمیم میگیرد:
- آیا سرویس هوش ابری مایکروسافت با قاطعیت سلامت برنامه را تأیید میکند؟
- در صورت عدم وجود سابقه ابری، آیا فایل دارای امضای دیجیتال معتبر از یک مرکز صدور گواهی (CA) عضو برنامه Trusted Root Program است؟
چنانچه یک فایل اجرایی مجاز و امضاشده پس از اجرا رفتارهای مشکوکی بروز دهد یا دچار حملات تزریق کد در حافظه (Process Injection) شود، وظیفه مهار و نابودی آن منحصراً بر عهده آنتیویروس و پلتفرمهای EDR خواهد بود.
افسانه ۲: آیا غیرفعال کردن قابلیت Smart App Control نیازمند نصب مجدد کل ویندوز است؟
در جوامع آنلاین و فرومهای تخصصی نظیر Reddit و انجمنهای ایرانی، مکرراً ادعا میشود که چنانچه کاربری این قابلیت را در ویندوز ۱۱ غیرفعال کند، دیگر هرگز امکان بازگردانی آن وجود نخواهد داشت مگر با فرمت کامل دیسک و نصب مجدد و تر و تمیز (Clean Install) سیستمعامل.
حقیقت چیست؟
این باور بر مبنای طراحی اولیه سیستم در نسخههای ابتدایی 22H2 شکل گرفته است؛ در زمان معرفی این قابلیت، بازگشت به حالت ارزیابی یا فعالسازی مجدد تنها از طریق نصب پاک ویندوز امکانپذیر بود تا مایکروسافت مطمئن شود هیچ بدافزار یا کد ناشناختهای پیش از اجرای سیاستهای امنیتی روی دیسک جا خوش نکرده است.
اما همانگونه که در صفحه پرسشهای متداول مایکروسافت Support تصریح شده است:
«بهروزرسانیهای اخیر ویندوز امکان فعالسازی مجدد Smart App Control را بدون نیاز به نصب تمیز سیستمعامل فراهم کردهاند، مشروط بر آنکه شرایط سختافزاری و وضعیت سازگاری دستگاه اجازه دهد.»
همچنین بر اساس بحثهای ثبتشده در تالار گفتگوی فنی مایکروسافت (Microsoft Q&A)، کاربران باید در نظر داشته باشند که اگر دستگاه توسط پالیسیهای سازمانی (MDM یا Group Policy) اداره شود یا Developer Mode در سیستمعامل فعال باشد، وضعیت بهطور دائم به حالت خاموش (Off) تغییر وضعیت میدهد. بنابراین، اگرچه غیرفعالسازی دستی هنوز ریسکهایی به همراه دارد، اما عبارت «تنها راه بازگردانی، فرمت کردن سیستم است» دیگر یک قانون مطلق نبوده و در بیلدهای بهروزشده تعدیل شده است.
افسانه ۳: کاربر میتواند برای برنامهها یا پوشههای خاص در Smart App Control استثنا (Exclusion) تعریف کند
بسیاری از متخصصان و برنامهنویسانی که با خطای مسدود شدن کامپایلهای محلی یا ابزارهای تست روبرو میشوند، در بخش تنظیمات Windows Security ساعتها به دنبال دکمه یا گزینهای شبیه به آنتیویروس دیفندر برای مستثنی کردن یک دایرکتوری (مانند دایرکتوری پروژههای C:\Dev) میگردند و زمانی که آن را پیدا نمیکنند، گمان میکنند این بخش به درستی بارگذاری نشده است.
حقیقت چیست؟
این یکی از اساسیترین تفاوتهای طراحی میان لایههای امنیتی مختلف ویندوز است. مطابق با توضیحات کارشناسان مایکروسافت در پاسخهای رسمی Microsoft Q&A به شکایات کاربران:
- ⚠️ در معماری Smart App Control، امکان تعریف دستی استثنا (Exclusion) برای هیچ برنامه، پوشه، یا مسیر فایلی تعبیه نشده است.
- 💡 این ابزار بهگونهای طراحی شده که رفتار آن کاملاً صفر یا صدی و اتوماتیک است تا بدافزارها نتوانند از طریق کپی کردن خود در پوشههای مجاز (Whitelisted Directories) تدابیر کنترلی را دور بزنند.
اگر توسعهدهندهای کدی تولید میکند که توسط این سازوکار مسدود میشود، دو راهکار اساسی پیش رو دارد:
- امضای دیجیتال فایلها با گواهی معتبر: کدها باید توسط یک گواهینامه معتبر کدساینینگ (Code-Signing Certificate) امضا شوند تا مکانیزم Code Integrity ویندوز بتواند اصالت ناشر را احراز کند.
- غیرفعالسازی هوشمند یا مهاجرت به حالت توسعهدهنده: چنانچه فرد روزانه دهها فایل بدون امضا تولید و اجرا میکند، سیستم پس از ارزیابی رفتار کاربر، معمولاً بهطور خودکار خود را خاموش میکند؛ یا کاربر میتواند شخصاً آن را غیرفعال کرده و به استفاده از ابزارهای پیشرفته مدیریت خطمشی روی آورد.
در محیطهای سازمانی که نیاز مبرم به تعریف استثناهای پیشرفته بر اساس مسیر فایل (Path)، هش SHA-256، یا مشخصات ناشر وجود دارد، راهکار رسمی مایکروسافت استفاده از App Control for Business (نام پیشین: Windows Defender Application Control یا WDAC) است که کنترل ذرهبینی و مبتنی بر فایلهای XML سیاستگذاری را ارائه میدهد.
افسانه ۴: آیا دریافت اعلان فعالسازی Smart App Control نشاندهنده کشف بدافزار در سیستم است؟
کاربران متعددی گزارش دادهاند که پس از مدتی استفاده عادی از ویندوز، ناگهان اعلانی (Toast Notification) دریافت کردهاند مبنی بر اینکه Smart App Control فعال شده است. این موضوع موجی از اضطراب ایجاد میکند؛ چرا که افراد تصور میکنند سیستم در همان لحظه در معرض یک حمله سایبری خطرناک قرار گرفته یا بدافزاری خطرناک را شناسایی کرده است.
حقیقت چیست؟
بر اساس دادههای ارائهشده در راهنمای جامع Microsoft Learn درباره مراحل کنترل هوشمند برنامه و تحلیلهای تکمیلی مهندسان در پاسخ به کاربران، این اعلان دقیقاً نشاندهنده نقطه مقابل اضطراب کاربر است:
- زمانی که ویندوز ۱۱ به صورت تازه نصب میشود، سیستم به طور خودکار در حالت ارزیابی (Evaluation Mode) قرار میگیرد.
- در این بازه زمانی (معمولاً حدود ۷ روز)، سیستمعامل بدون مسدود کردن برنامهها، به بررسی رفتار و عادات کاربری میپردازد تا ارزیابی کند آیا فعال شدن سازوکار مسدودسازی باعث اختلال در امور روزمره فرد میشود یا خیر.
- چنانچه کاربر از برنامههای استاندارد، قانونی و سالم استفاده کند، سیستم به این نتیجه میرسد که رایانه محیط مناسبی برای فعالسازی کامل است و سپس پیامی مبنی بر ورود به حالت اجرا (Enforcement Mode) نمایش میدهد.
بنابراین، دیدن این اعلان نهتنها به معنای آلودگی سیستم نیست، بلکه مهر تأییدی بر پاک بودن و سلامت نرمافزاری دستگاه در طول بازه ارزیابی است. اگر این سازوکار قصد مسدود کردن فایلی را داشته باشد، اعلان کاملاً متفاوتی با عنوان صریح «App blocked by Smart App Control» بر روی صفحه نقش خواهد بست.
افسانه ۵: Smart App Control تنها فایلهای اجرایی exe را بررسی میکند
یکی دیگر از تصورات خطرناک مدیران سیستمهای میانی این است که اگر خطمشیهای کنترلی فعال باشند، صرفاً فایلهای دارای پسوند .exe فیلتر میشوند و خطر اسکریپتها یا فرایندهای مفسری همچنان پابرجاست.
حقیقت چیست؟
بر اساس مستندات مستندات کنترل برنامه مایکروسافت، نظارت بر اجرای کد در ویندوز ۱۱ فراتر از فایلهای اجرایی دسکتاپ امتداد مییابد. معماری کنترل یکپارچگی کد ویندوز (Windows Code Integrity) به صورت عمیق با اجزای زیر در هم تنیده است:
- فایلهای باینری و کتابخانهها: فایلهای
.dll، درایورهای سیستمی و ماژولهای بارگذاریشده در سطح هسته و فضای کاربری. - بستههای نصبی: پکیجهای نصبی استاندارد مایکروسافت مانند فایلهای
.msiو.msp. - محیط پاورشل (PowerShell): در صورت فعال بودن پالیسیهای کنترل، نشستهای تعاملی پاورشل بهصورت اجباری در حالت Constrained Language Mode اجرا میشوند تا مهاجمان نتوانند با بهرهگیری از توابع سطح پایین .NET حافظه سیستم را دستکاری کنند.
- اسکریپتهای سیستمی: اسکریپتهای بچفایل (
.bat) و دستورات خط فرمان کنترل میشوند.
این گستردگی نظارت سبب میشود که بسیاری از زنجیرههای حمله مبتنی بر Living-off-the-Land (LotL) که در آنها مهاجم از ابزارهای مشروع ویندوز برای فراخوانی کدهای بیامضا استفاده میکند، در همان مرحله آغازین متوقف شوند.
مقایسه جامع راهکارهای کنترل اجرای برنامه در اکوسیستم مایکروسافت
برای انتخاب استراتژی امنیتی مناسب، درک تفاوتهای بنیادین میان قابلیت مصرفکننده (Smart App Control) و راهکارهای جامع سازمانی مایکروسافت الزامی است. جدول زیر این سه فناوری را به دقت مقایسه میکند:
| مؤلفه و ویژگی | Smart App Control (SAC) | App Control for Business (WDAC سابق) | AppLocker |
|---|---|---|---|
| سیستمعاملهای تحت پشتیبانی | صرفاً ویندوز ۱۱ (نسخه 22H2 به بعد) | ویندوز ۱۰، ۱۱ و تمامی نسخههای ویندوز سرور از ۲۰۱۶ تا ۲۰۲۵ | ویندوز ۱۰، ۱۱ و خانواده ویندوز سرور |
| مخاطب هدف | مصرفکنندگان خانگی و کسبوکارهای بسیار کوچک | سازمانهای متوسط، بزرگ، نهادهای حساس و دفاعی | شبکههای تجاری سنتی متکی بر اکتیو دایرکتوری |
| روش اعتبارسنجی نرمافزار | سرویس هوش ابری مایکروسافت + گواهی Trusted Root | خطمشیهای سختگیرانه XML، هش، مسیر، امضا، گواهی سازمانی | قوانین بر پایه هش، مسیر و شناسه ناشر در GPO |
| تعریف استثنای دستی (Exclusion) | ❌ امکانپذیر نیست | ✅ کنترل بینهایت دقیق در سطح هش، مسیر و کاربر | ✅ پشتیبانی از استثنا بر اساس مسیر و کاربران |
| محافظت در سطح کرنل (Kernel-level) | ✅ از طریق Hypervisor-protected Code Integrity | ✅ یکپارچه با HVCI و امنیت مبتنی بر مجازیسازی (VBS) | ❌ اجرا در لایههای درایور کاربر و فیلتر سیستمی |
| حالت ارزیابی خودکار (Evaluation Mode) | ✅ دارد (بررسی ۷ روزه سازگاری سیستم) | ✅ حالت ممیزی تخصصی (Audit Mode) با لاگ رویدادها | ✅ حالت Audit-only در Event Viewer |
| مدیریت متمرکز در ابزارهای سازمانی | ❌ مستقل روی کلاینت (در محیط دامنه خاموش میشود) | ✅ کاملاً یکپارچه با Microsoft Intune، SCCM و GPO | ✅ مدیریت کامل از طریق کنسول Group Policy Management |
همانطور که جدول فوق نشان میدهد، مدیرانی که قصد محافظت از ایستگاههای کاری در شبکههای پیچیده را دارند، نباید به دنبال پیادهسازی SAC باشند، بلکه باید تمرکز خود را بر روی ایجاد کاتالوگهای خطمشی App Control for Business قرار دهند. برای بررسی تفاوتهای عملکردی نسخههای مختلف سیستمعامل و انتخاب پلن مناسب، میتوانید از ابزار انتخابگر نسخه ویندوز استفاده کنید.
پیامدها و الزامات فنی برای توسعهدهندگان نرمافزار
حضور سازوکارهای فیلترینگ هوشمند، تأثیر مستقیمی بر اکوسیستم مهندسی نرمافزار و تیمهای برنامهنویسی بر جای گذاشته است. یکی از شکایات پرتکرار در انجمنهای رفع اشکال مایکروسافت، مسدود شدن خودکار پروژههای در حال کامپایل در IDEهایی نظیر Visual Studio است.
جریان کاری مناسب برای توسعهدهندگان
اگر در حال برنامهنویسی روی ویندوز ۱۱ هستید، اقدامات زیر جهت جلوگیری از تداخل SAC ضروری است:
- فعالسازی حالت Developer Mode: رفتن به بخش Settings > System > For developers و فعالسازی این حالت به سیستمعامل اعلام میکند که این دستگاه یک ماشین تولید نرمافزار است. این اقدام معمولاً سازوکار SAC را به صورت هوشمند از مدار خارج میکند تا روند بیلد شدن دچار اختلال نشود.
- امضای فایلهای آزمایشی: استفاده از امضاهای خودامضا (Self-Signed) برای محیطهای ایزوله یا تهیه گواهیهای معتبر تجاری برای توزیع عمومی کدهای باینری.
- پایش گزارشهای رویداد (Event Viewer): در صورت مسدود شدن ناشناخته یک ماژول، بررسی لاگهای مسیر
Applications and Services Logs > Microsoft > Windows > CodeIntegrity > Operationalدقیقاً نشان میدهد چه هشی، با چه هویتی و به چه دلیلی رد صلاحیت شده است.
راهنمای خرید و ملاحظات ایران
پیادهسازی سازوکارهای امنیتی ویندوز ۱۱ و بهرهمندی از قابلیتهای پیشرفتهای نظیر Smart App Control، App Control for Business و مجازیسازی امن هسته (VBS/HVCI)، وابستگی مستقیمی به سلامت لایسنس و دسترسی آزادانه به سرویسهای ابری مایکروسافت دارد.
چالشهای سیستمعاملهای دستکاریشده و کرک در ایران
در بازار فناوری اطلاعات کشورمان، به دلیل محدودیتهای مالی و تحریمهای بینالمللی، استفاده از سیستمعاملهای کرکشده، ویندوزهای دستکاریشده با نرمافزارهای فعالساز (KMS Emulators) و نسخههای بهاصطلاح «لایت» همچنان بسیار رواج دارد. این رویکرد خطرات مهیبی را در حوزه کنترل برنامه ایجاد میکند:
- از کار افتادن ارتباط با سرویسهای ابری هوش مایکروسافت: سیستمهای کرکشده غالباً آدرسهای تلمتری و پایگاههای داده امنیتی مایکروسافت را در فایل
hostsیا فایروال مسدود میکنند. در نتیجه، SAC نمیتواند با سرویس ابری ارتباط برقرار کرده و سیستم دائماً برنامههای سالم را مسدود میکند. - تخریب فروشگاه گواهی ریشه (Trusted Root CA): اسکریپتهای کرک معمولاً گواهیهای جعلی را به مخزن ویندوز تزریق میکنند تا فعالسازها بدون هشدار اجرا شوند. این امر ستون اصلی اعتماد زنجیره کدها (Chain of Trust) را در هم میشکند.
- عدم دریافت بهروزرسانیهای کرنل و امنیتی: آسیبپذیریهای روز-صفر ناشناخته در لایههای پایین سیستمعامل بدون وصله باقی مانده و لایههای کنترل برنامه را خنثی میسازند. سازمانها برای برونرفت از این ریسک بحرانی میتوانند راهنمای مهاجرت از نسخه غیرقانونی به لایسنس اورجینال را مطالعه کنند.
انتخاب میان لایسنسهای Retail، OEM و Volume در تهران و شهرستانها
برای نهادها و شرکتهای ایرانی، درک ماهیت لایسنس جهت انتخاب پلتفرم کنترل برنامه بسیار سرنوشتساز است:
- **لای



