Riepilogo

Dopo avere applicato gli aggiornamenti della protezione di aprile 2017 descritti nella Guida di aggiornamento di protezione Microsoft 2017-CVE-0160 , il comando di interruzione a computer PowerShell v 3.0 + non riesce. Inoltre, se applicazioni utilizzano i metodi di gestione dell'alimentazione, ad esempio l'arresto o riavvio del sistema, dalla classe Win32_OperatingSystem e impostare l'attributo EnablePrivileges su true, essi possono osservare l'errore stesso. Viene restituito un messaggio di errore "Privilegio non disponibile".

Ulteriori informazioni

Sintomi per problema 1

I clienti che tenta di spegnere o riavviare un sistema locale o remoto, utilizzando il comando stop a computer su PowerShell 3.0 e versioni successive, verranno visualizzato il seguente errore:

computer-Stop: privilegio non disponibile.

Char riga: 1:1

+ stop-computer

+ ~~~~~~~~~~~~~

+ CategoryInfo: InvalidOperation: (< nomecomputer >: stringa) [Computer-Stop], ManagementE

+ FullyQualifiedErrorId: StopComputerException,Microsoft.PowerShell.Commands.StopComputerCommand

Soluzione per problema 1

Per risolvere questo problema, eseguire il seguente comando di "shutdown.exe" per l'esecuzione di spegnere e riavviare le operazioni su sistemi locali o remoti:

Shutdown.exe [-r] [-s] [-m \\computer]

Per ulteriori informazioni e i comandi della Guida, eseguire:

shutdown.exe -?

Sintomi per problema 2

Cliente le applicazioni utilizzando i metodi di gestione dell'alimentazione, ad esempio l'arresto o riavvio del sistema, dalla classe Win32_OperatingSystem e impostare l'attributo EnablePrivileges su true, possono osservare lo stesso errore "Non privilegio".

  • Esempio 1 (PowerShell) restituisce un errore di "Privilegio non disponibile":   $computername= "." $win32OS = get-wmiobject win32_operatingsystem -computername $computername $win32OS.psbase.Scope.Options.EnablePrivileges = $true $win32OS.reboot()

    • Esempio 2 (codice C#) restituisce un errore di "Privilegio non disponibile":   [STAThread] static void Main(string[] args) { ManagementClass mgmtObject = new ManagementClass("Win32_OperatingSystem"); foreach (ManagementObject iterMgmtObject in mgmtObject.GetInstances()) { iterMgmtObject.Scope.Options.EnablePrivileges = true; iterMgmtObject.InvokeMethod("Reboot", null, null); } }

Soluzione per problema 2

  • Ad esempio 1 (PowerShell):   $computername= "." $win32OS = get-wmiobject win32_operatingsystem -computername $computername -EnableAllPrivileges $win32OS.reboot()

  • Ad esempio 2 (codice C#):   using System; using System.Collections.Generic; using System.Linq; using System.Management; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication { public class Program { static void Main(string[] args) { var mgmtScope = new ManagementScope( ManagementPath.DefaultPath, new ConnectionOptions() { EnablePrivileges = true }); var mgmtClass = new ManagementClass(mgmtScope, new ManagementPath("Win32_OperatingSystem"), null); foreach (ManagementObject mgmtInst in mgmtClass.GetInstances()) { var mgmtCallResult = mgmtInst.InvokeMethod("Reboot", null, null); Console.Out.WriteLine("Reboot() Return Value: {0}", mgmtCallResult["ReturnValue"]); } } } }

Risoluzione

Risoluzione di problema 1

Per risolvere questo problema, installare l'aggiornamento della tabella di sotto del sistema in uso.

Sistema operativo

Aggiornamento

Windows Server 2008

Per il.NET Framework 2.0 installare l'aggiornamento 4020511

Per il.NET Framework 4.5.2, installare l'aggiornamento 4020507

Per il 4.6.NET Framework, installare l'aggiornamento 4020503

Windows 7 e Windows Server 2008 R2

Per installare il.NET Framework 3.5.1, aggiornare 4020513

Per installare il.NET Framework 4.5.2, aggiornare 4020507

Per il.NET Framework 4.6 o 4.6.1, installare l'aggiornamento 4020503

Per installare il.NET Framework 4.6.2, aggiornare 4020500

Windows Server 2012

Per il.NET Framework 3.5 installato l'aggiornamento 4020512

Per installare il.NET Framework 4.5.2, aggiornare 4020506

Per il 4.6 di.NET Framework o 4.6.1, installazione dell'aggiornamento 4020501

Per installare il.NET Framework 4.6.2, aggiornare 4020498

Windows 8.1 e Windows Server 2012 R2

Per.NET Framework 3.5, installare aggiornamento 4020514

Per installare il.NET Framework 4.5.2, aggiornare 4020505

Per il 4.6 di.NET Framework o 4.6.1, installazione dell'aggiornamento 4020502

Per installare il.NET Framework 4.6.2, aggiornare 4020499

RTM di Windows 10

Installazione aggiornamento 4019474

10 di Windows versione 1511

Installazione aggiornamento 4019473

10 di Windows versione 1607 e Windows Server 2016

Installazione aggiornamento 4019472

10 di Windows versione 1703

Installazione aggiornamento 4016871

Risoluzione di problema 2

Per risolvere questo problema, installare l'aggiornamento della tabella di sotto del sistema in uso.

Versione del prodotto

Anteprima di qualità cumulativo KB

Aggiornamento di Windows 10 1703 (2) Windows Server 2016

Catalogo 4034674

.NET Framework 3.5

Catalogo 4038788

.NET Framework 4.7

4034674

Aggiornamento di Windows 10 1607 Windows Server 2016

 

.NET Framework 3.5

Catalog 4034661

.NET Framework 4.6.2 e 4.7

Catalog 4034658

Windows 8.1 Windows RT 8.1Windows Server 2012 R2

Catalog 4035038

.NET Framework 3.5

4033997

.NET Framework 4.5.2

4033991

.NET Framework, 4.6, 4.6.1 e 4.6.2 4.7

4033989

Windows Server 2012

Catalog 4035037

.NET Framework 3.5

4033995

.NET Framework 4.5.2

4033992

.NET Framework, 4.6, 4.6.1 e 4.6.2 4.7

4033988

Windows 7 Windows Server 2008 R2

Catalog 4035036

.NET Framework 3.5.1

4033996

.NET Framework 4.5.2

4033993

.NET Framework, 4.6, 4.6.1 e 4.6.2 4.7

4033990

Windows Server 2008

Catalog 4035039

.NET Framework 2.0

4033994

.NET Framework 4.5.2

4033993

.NET Framework 4.6

4033990

Si applica a

In questo articolo si applica ai seguenti prodotti, come descritto nella sezione Prodotti interessati del 2017-CVE-0160:

Microsoft.NET Framework 2.0, 3.5, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 su tutte le versioni supportate di Windows in esecuzione di PowerShell 3.0 e versioni successive.

 

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.