الملخص
Spectre هو فئة جديدة من الثغرات الأمنية في الأجهزة التي تتضمن قنوات جانبية للتنفيذ التخميني التي يمكن استخدامها للكشف عن معلومات حول البرنامج الذي يتعرض للهجوم. لمزيد من المعلومات، راجع مقالة مدونة فريق Visual C++ هذهوالنصائح الإرشادية للأمان 180002.
إذا كنت مطورا تعمل التعليمات البرمجية الخاصة به على البيانات التي تعبر حدود الثقة، يجب أن تفكر في تثبيت هذه التحديثات وإعادة تحويل التعليمات البرمجية الخاصة بك عن طريق تمكين مفتاح التبديل /Qspectre ، ثم الارتباط بالمكتبات المخففة من Spectre التي يتم توفيرها. /Qspectre والمكتبات توفر المساعدة في التخفيف من المخاطر ل Spectre Variant 1 - CVE-2017-5753.
كيفية الحصول على هذا التحديث
تحديث مجموعة الأدوات
| لجميع البنيات | VC14-KB4338871.exe |
|---|
مكتبات VC++ المخففة من Spectre
| لجميع الأنظمة المعتمدة المستندة إلى x86 | VS2015U3_vcpp_spectre_libs_x86.exe |
|---|---|
| لجميع الأنظمة المعتمدة المستندة إلى x64 | VS2015U3_vcpp_spectre_libs_x64.exe |
| لجميع الأنظمة المعتمدة المستندة إلى ARM | VS2015U3_vcpp_spectre_libs_arm.exe |
المتطلبات الأساسية
لتطبيق هذا التحديث، يجب أن يكون التحديث 3 ل Visual Studio 2015 مثبتا.
معلومات إعادة التشغيل
قد تحتاج إلى إعادة تشغيل الكمبيوتر بعد تطبيق هذا التحديث.
معلومات الاستبدال
لا يحل هذا التحديث محل أي تحديث تم إصداره مسبقا.
مزيد من المعلومات حول هذا التحديث
عند تثبيت تحديث مجموعة الأدوات، يمكنك تمكين /Qspectre يدويا من خيارات سطر الأوامر C/C++.
يجب عليك أيضا تثبيت مكتبات VC++ المخففة من Spectre (تحديث واحد لكل بنية)، ثم ربطها يدويا.
المسارات هي كما يلي:
x86: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre
x64: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre\amd64
الذراع: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre\arm
نحن نقدم دعم الربط الثابت والتوزيع المحلي للتطبيق فقط. لم يتم تعديل محتويات Visual C++ 2015 Runtime Libraries Redistributable. يعني التوزيع المحلي للتطبيق أنك تقوم بالارتباط بمكتبات Spectre الجديدة باستخدام خيار Multithreaded DLL (/MD أو /MDd)، ثم عند نشر برنامجك الجديد، فإنك تقوم بتضمين أوقات التشغيل المخففة في نفس الدليل مثل ملف .exe الذي يقوم بتحميلها. الإصدار الموزع مركزيا من وقت التشغيل (الإصدار الموجود في C:\Windows\System32 أو C:\Windows\SysWOW64) هو الإصدار غير الموزع. إذا لم يكن الملف القابل للتنفيذ في نفس الدليل، فإنه يلتقط الإصدار المنشور مركزيا من وقت التشغيل.
لتسهيل الاستخدام، نقدم أيضا نسخا من معظم المكتبات في أدلة مكتبة Spectre. ومع ذلك، فهي ليست جميعها مخففة من حدة Spectre. يحدد الجدول التالي المكتبات التي يتم تخفيفها. لاحظ أيضا أن الملفات التي تحتوي على عوامل تخفيف Spectre يجب أن تكون متسقة عبر جميع البنيات، إذا كانت التكنولوجيا مدعومة لتلك البنية.
Visual C++ وقت التشغيل الثابت واستيراد المكتبات
- binmode.obj
- chkstk.obj
- commode.obj
- comsupp.lib
- comsuppw.lib
- concrt.lib
- delayimp.lib
- invalidcontinue.obj
- iso_stdio_wide_specifiers.lib
- legacy_stdio_definitions.lib
- legacy_stdio_wide_specifiers.lib
- libcmt.lib
- libconcrt.lib
- libconcrt1.lib
- libcpmt.lib
- libcpmt1.lib
- libvcruntime.lib
- loosefpmath.obj
- msvcmrt.lib
- msvcprt.lib
- msvcrt.lib
- newmode.obj
- noarg.obj
- noenv.obj
- notelemetry.obj
- nothrownew.obj
- oldnames.lib
- ptrustm.lib
- setargv.obj
- threadlocale.obj
- vcamp.lib
- vccorlib.lib
- vcomp.lib
- vcruntime.lib
- wsetargv.obj
- onecore\iso_stdio_wide_specifiers.lib
- onecore\legacy_stdio_definitions.lib
- onecore\legacy_stdio_wide_specifiers.lib
- onecore\libcmt.lib
- onecore\libcpmt.lib
- onecore\libcpmt1.lib
- onecore\libvcruntime.lib
- onecore\msvcprt.lib
- onecore\msvcrt.lib
- onecore\oldnames.lib
- onecore\vccorlib.lib
- onecore\vcomp.lib
- onecore\vcruntime.lib
Visual C++ run-time DLLs
- concrt140.dll
- mfc140chs.dll
- mfc140cht.dll
- mfc140deu.dll
- mfc140enu.dll
- mfc140esn.dll
- mfc140fra.dll
- mfc140ita.dll
- mfc140jpn.dll
- mfc140kor.dll
- mfc140rus.dll
- mfc140u.dll
- mfcm140u.dll
- Microsoft.VisualC.STLCLR.dll
- msvcp140.dll
- vcamp140.dll
- vccorlib140.dll
- vcruntime140.dll
- onecore\concrt140.dll
- onecore\msvcp140.dll
- onecore\vccorlib140.dll
- onecore\vcruntime140.dll