Je bent nu offline; er wordt gewacht tot er weer een internetverbinding is

MS14-025: Beveiligingsprobleem in Voorkeuren voor Groepsbeleid kan leiden tot misbruik van bevoegdheden: 13 mei 2014

BELANGRIJK: Dit artikel is vertaald door middel van automatische vertalingssoftware van Microsoft en is mogelijk nabewerkt door de Microsoft Community via CTF-technologie (Community Translation Framework) of door een menselijke vertaler. Microsoft biedt zowel automatisch vertaalde, door mensen vertaalde en door de community nabewerkte artikelen aan, zodat er in meerdere talen toegang is tot alle artikelen in onze Knowledge Base. Een vertaald of bewerkt artikel kan fouten bevatten in vocabulaire, syntaxis of grammatica.. Microsoft is niet verantwoordelijk voor eventuele onjuistheden, fouten of schade ten gevolge van een foute vertaling van de inhoud van een bericht of het gebruik van deze vertaalde berichten door onze klanten.

De Engelstalige versie van dit artikel is de volgende: 2962486
INLEIDING
Microsoft heeft beveiligingsbulletin MS14-025 uitgebracht. Voor meer informatie over dit beveiligingsbulletin:

Het verkrijgen van hulp en ondersteuning voor deze beveiligingsupdate

Hulp bij het installeren van updates:Ondersteuning voor Microsoft Update

Beveiligingsoplossingen voor IT-professionals:TechNet Security-oplossingen en ondersteuning

Uw Windows-computer Windows beveiligen tegen virussen en malware:Oplossing van virus en Security Center

Lokale ondersteuning afhankelijk van uw land:Internationale ondersteuning

Meer informatie

Bekende problemen en meer informatie over deze beveiligingsupdate

De volgende artikelen bevatten meer informatie over deze beveiligingsupdate met betrekking tot individuele productversies. De artikelen kunnen bekend probleem informatie bevatten. Als dit het geval is, wordt het bekende probleem vermeld onder elke koppeling artikel.
  • 2928120 MS14-025: Beschrijving van de beveiligingsupdate voor Windows Remote Server Administration Tools voor systemen waarop update 2919355 geïnstalleerd: 13 mei 2014
  • 2961899 MS14-025: Beschrijving van de beveiligingsupdate voor Windows Remote Server Administration Tools voor systemen die geen update 2919355 is geïnstalleerd: 13 mei 2014
Voorkeuren voor Groepsbeleid

Overzicht

Sommige voorkeursinstellingen van Groepsbeleid kunt u een wachtwoord opslaan. Deze functionaliteit wordt verwijderd omdat het wachtwoord onveilig is opgeslagen. Dit artikel beschrijft de wijzigingen in de gebruikersinterface en eventuele beschikbare oplossingen.

De volgende voorkeursinstellingen van Groepsbeleid kunnen niet langer gebruikersnamen en wachtwoorden worden opgeslagen:
  • Stationstoewijzingen
  • Lokale gebruikers en groepen
  • Geplande taken
  • Services
  • Gegevensbronnen
Dit heeft invloed op de werking van eventuele bestaande groepsbeleidsobjecten (GPO's) in uw omgeving die afhankelijk zijn van wachtwoorden die zijn opgenomen in de voorkeuren. Ook wordt voorkomen dat nieuwe voorkeuren voor Groepsbeleid te maken met behulp van deze functionaliteit.

Voor stationstoewijzingen, lokale gebruikers en groepen en Services, is het mogelijk om soortgelijke doelstellingen door middel van andere, veiliger functionaliteit in Windows te bereiken.

Voor geplande taken en gegevensbronnen u niet de dezelfde doelen die beschikbaar via de onbeveiligde functionaliteit van wachtwoorden voor groepsbeleidsvoorkeuren zijn bereiken.
Scenario 's
De volgende voorkeursinstellingen van Groepsbeleid worden beïnvloed door deze wijziging. Elke voorkeur kort is gedekt en vervolgens in meer detail. Oplossingen zijn bovendien voorwaarde waarmee u dezelfde taken uitvoeren.
Voorkeur waarin dit probleem optreedtVan toepassing op de gebruikerVan toepassing is op de computer
Lokale gebruikers beherenJaJa
Toegewezen stationsJa
Nee
Services
Nee
Ja
Geplande taken (niveau omhoog)JaJa
Geplande taken (lager niveau)JaJa
Directe taken (niveau omhoog)JaJa
Directe taken (lager niveau)JaJa
GegevensbronnenJaJa

Overzicht van wijzigingen

  • Wachtwoordvelden in alle betrokken voorkeuren zijn uitgeschakeld. Beheerders kunnen niet nieuwe voorkeuren met behulp van deze wachtwoordvelden maken.
  • Het veld gebruikersnaam is uitgeschakeld in de voorkeuren voor sommige.
  • Bestaande voorkeuren met een wachtwoord kunnen niet worden bijgewerkt. Ze kunnen alleen worden verwijderd of uitgeschakeld, zo nodig voor de specifieke voorkeur.
  • Het gedrag voor het verwijderen en uitschakelen acties zijn niet gewijzigd voor de voorkeuren.
  • Wanneer een beheerder een voorkeur met het kenmerk CPassword opent, ontvangt de beheerder de volgende waarschuwing in het dialoogvenster om hem of haar van de recente afschrijving in kennis. Pogingen wijzigingen opslaan in een nieuwe of bestaande voorkeuren die het kenmerk CPassword moeten hetzelfde dialoogvenster moet worden geactiveerd. Alleen verwijderen en uitschakelen acties waarschuwingsvensters niet activeert.

Waarschuwing voor CPassword



Scenario 1: Lokaal gebruikersbeheer

De voorkeur voor lokale gebruikersbeheer wordt vaak gebruikt voor het maken van lokale beheerders met een bekende wachtwoord op een computer. Deze functie is niet beveiligd door de manier waarop de voorkeursinstellingen van Groepsbeleid worden opgeslagen wachtwoorden. Daarom is deze functionaliteit niet meer beschikbaar. De volgende voorkeuren worden beïnvloed:
  • Computerconfiguratie-> instellingen Configuratiescherm-> lokale gebruikers en groepen-> nieuwe-> lokale gebruiker
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> lokale gebruikers en groepen-> nieuwe-> lokale gebruiker

Belangrijke wijzigingen

Actie: maken of vervangen
  • De velden gebruikersnaam, wachtwoorden Bevestig het wachtwoord zijn uitgeschakeld.
  • Het waarschuwingsvenster wordt weergegeven wanneer de beheerder wordt geopend of wordt geprobeerd wijzigingen wilt opslaan in een bestaande voorkeur die een wachtwoord bevat.


Lokale gebruiker - maken of vervangen

Actie: Update
  • De velden wachtwoord en Bevestig het wachtwoord zijn uitgeschakeld.
  • De waarschuwing dialoogvenster boxappears wanneer de beheerder opent of probeert wijzigingen wilt opslaan in een bestaande voorkeur die een wachtwoord bevat.


Lokale gebruiker - Update

Actie: verwijderen
  • Geen verandering in gedrag

Tijdelijke oplossingen

Het volgende script wordt voor mensen die eerder op het voor voorkeuren voor Groepsbeleid voor de lokale administrator-wachtwoorden instellen berustte, geleverd als een veilig alternatief voor de CPassword. Kopiëren en de inhoud naar een nieuw Windows PowerShell-bestand opslaan en vervolgens het script uitvoeren, zoals aangegeven in de. Voorbeeld van de sectie.

Microsoft verstrekt programmeervoorbeelden uitsluitend ter illustratie, zonder expliciete of impliciete garantie. Dit omvat, maar is niet beperkt tot de impliciete garanties van verkoopbaarheid of geschiktheid voor een bepaald doel. In dit artikel wordt ervan uitgegaan dat u bekend met de programmeertaal die wordt aangetoond en met de hulpprogramma's die worden gebruikt bent voor het maken van en naar procedures voor foutopsporing. Ondersteuningstechnici van Microsoft kunnen voor uitleg over de functionaliteit van een bepaalde procedure. Zij zal deze voorbeelden om extra functionaliteit of desgewenst uw specifieke vereisten echter niet wijzigen.

 function Invoke-PasswordRoll{<#.SYNOPSISThis script can be used to set the local account passwords on remote machines to random passwords. The username/password/server combination will be saved in a CSV file.The account passwords stored in the CSV file can be encrypted using a password of the administrators choosing to ensure clear-text account passwords aren't written to disk.The encrypted passwords can be decrypted using another function in this file: ConvertTo-CleartextPasswordFunction: Invoke-PasswordRollAuthor: MicrosoftVersion: 1.0.DESCRIPTIONThis script can be used to set the local account passwords on remote machines to random passwords. The username/password/server combination will be saved in a CSV file.The account passwords stored in the CSV file can be encrypted using a password of the administrators choosing to ensure clear-text account passwords aren't written to disk.The encrypted passwords can be decrypted using another function in this file: ConvertTo-CleartextPassword.PARAMETER ComputerNameAn array of computers to run the script against using PowerShell remoting..PARAMETER LocalAccountsAn array of local accounts whose password should be changed..PARAMETER TsvFileNameThe file to output the username/password/server combinations to..PARAMETER EncryptionKeyA password to encrypt the TSV file with. Uses AES encryption. Only the passwords stored in the TSV file will be encrypted, the username and servername will be clear-text..PARAMETER PasswordLengthThe length of the passwords which will be randomly generated for local accounts..PARAMETER NoEncryptionDo not encrypt the account passwords stored in the TSV file. This will result in clear-text passwords being written to disk.	.EXAMPLE. .\Invoke-PasswordRoll.ps1    #Loads the functions in this script fileInvoke-PasswordRoll -ComputerName (Get-Content computerlist.txt) -LocalAccounts @("administrator","CustomLocalAdmin") -TsvFileName "LocalAdminCredentials.tsv" -EncryptionKey "Password1"Connects to all the computers stored in the file "computerlist.txt". If the local account "administrator" and/or "CustomLocalAdmin" are present on the system, their password is changedto a randomly generated password of length 20 (the default). The username/password/server combinations are stored in LocalAdminCredentials.tsv, and the account passwords are AES encrypted using the password "Password1"..EXAMPLE. .\Invoke-PasswordRoll.ps1    #Loads the functions in this script fileInvoke-PasswordRoll -ComputerName (Get-Content computerlist.txt) -LocalAccounts @("administrator") -TsvFileName "LocalAdminCredentials.tsv" -NoEncryption -PasswordLength 40Connects to all the computers stored in the file "computerlist.txt". If the local account "administrator" is present on the system, its password is changed to a random generatedpassword of length 40. The username/password/server combinations are stored in LocalAdminCredentials.tsv unencrypted..NOTESRequirements: -PowerShellv2 or above must be installed-PowerShell remoting must be enabled on all systems the script will be run againstScript behavior:-If a local account is present on the system, but not specified in the LocalAccounts parameter, the script will write a warning to the screen to alert you to the presence of this local account. The script will continue running when this happens.-If a local account is specified in the LocalAccounts parameter, but the account does not exist on the computer, nothing will happen (an account will NOT be created).-The function ConvertTo-CleartextPassword, contained in this file, can be used to decrypt passwords that are stored encrypted in the TSV file.-If a server specified in ComputerName cannot be connected to, PowerShell will output an error message.-Microsoft advises companies to regularly roll all local and domain account passwords.#>    [CmdletBinding(DefaultParameterSetName="Encryption")]    Param(        [Parameter(Mandatory=$true)]        [String[]]        $ComputerName,        [Parameter(Mandatory=$true)]        [String[]]        $LocalAccounts,        [Parameter(Mandatory=$true)]        [String]        $TsvFileName,        [Parameter(ParameterSetName="Encryption", Mandatory=$true)]        [String]        $EncryptionKey,        [Parameter()]        [ValidateRange(20,120)]        [Int]        $PasswordLength = 20,        [Parameter(ParameterSetName="NoEncryption", Mandatory=$true)]        [Switch]        $NoEncryption    )    #Load any needed .net classes    Add-Type -AssemblyName "System.Web" -ErrorAction Stop    #This is the scriptblock that will be executed on every computer specified in ComputerName    $RemoteRollScript = {        Param(            [Parameter(Mandatory=$true, Position=1)]            [String[]]            $Passwords,            [Parameter(Mandatory=$true, Position=2)]            [String[]]            $LocalAccounts,            #This is here so I can record what the server name that the script connected to was, sometimes the DNS records get messed up, it can be nice to have this.            [Parameter(Mandatory=$true, Position=3)]            [String]            $TargettedServerName        )        $LocalUsers = Get-WmiObject Win32_UserAccount -Filter "LocalAccount=true" | Foreach {$_.Name}        #Check if the computer has any local user accounts whose passwords are not going to be rolled by this script        foreach ($User in $LocalUsers)        {            if ($LocalAccounts -inotcontains $User)            {                Write-Warning "Server: '$($TargettedServerName)' has a local account '$($User)' whos password is NOT being changed by this script"            }        }        #For every local account specified that exists on this server, change the password        $PasswordIndex = 0        foreach ($LocalAdmin in $LocalAccounts)        {            $Password = $Passwords[$PasswordIndex]            if ($LocalUsers -icontains $LocalAdmin)            {                try                {                    $objUser = [ADSI]"WinNT://localhost/$($LocalAdmin), user"                    $objUser.psbase.Invoke("SetPassword", $Password)                    $Properties = @{                        TargettedServerName = $TargettedServerName                        Username =  $LocalAdmin                        Password = $Password                        RealServerName = $env:computername                    }                    $ReturnData = New-Object PSObject -Property $Properties                    Write-Output $ReturnData                }                catch                {                    Write-Error "Error changing password for user:$($LocalAdmin) on server:$($TargettedServerName)"                }            }            $PasswordIndex++        }    }    #Generate the password on the client running this script, not on the remote machine. System.Web.Security isn't available in the .NET Client profile. Making this call    #    on the client running the script ensures only 1 computer needs the full .NET runtime installed (as opposed to every system having the password rolled).    function Create-RandomPassword    {        Param(            [Parameter(Mandatory=$true)]            [ValidateRange(20,120)]            [Int]            $PasswordLength        )        $Password = [System.Web.Security.Membership]::GeneratePassword($PasswordLength, $PasswordLength / 4)        #This should never fail, but I'm putting a sanity check here anyways        if ($Password.Length -ne $PasswordLength)        {            throw new Exception("Password returned by GeneratePassword is not the same length as required. Required length: $($PasswordLength). Generated length: $($Password.Length)")        }        return $Password    }    #Main functionality - Generate a password and remote in to machines to change the password of local accounts specified    if ($PsCmdlet.ParameterSetName -ieq "Encryption")    {        try        {            $Sha256 = new-object System.Security.Cryptography.SHA256CryptoServiceProvider            $SecureStringKey = $Sha256.ComputeHash([System.Text.UnicodeEncoding]::Unicode.GetBytes($EncryptionKey))        }        catch        {            Write-Error "Error creating TSV encryption key" -ErrorAction Stop        }    }    foreach ($Computer in $ComputerName)    {        #Need to generate 1 password for each account that could be changed        $Passwords = @()        for ($i = 0; $i -lt $LocalAccounts.Length; $i++)        {            $Passwords += Create-RandomPassword -PasswordLength $PasswordLength        }        Write-Output "Connecting to server '$($Computer)' to roll specified local admin passwords"        $Result = Invoke-Command -ScriptBlock $RemoteRollScript -ArgumentList @($Passwords, $LocalAccounts, $Computer) -ComputerName $Computer        #If encryption is being used, encrypt the password with the user supplied key prior to writing to disk        if ($Result -ne $null)        {            if ($PsCmdlet.ParameterSetName -ieq "NoEncryption")            {                $Result | Select-Object Username,Password,TargettedServerName,RealServerName | Export-Csv -Append -Path $TsvFileName -NoTypeInformation            }            else            {                #Filters out $null entries returned                $Result = $Result | Select-Object Username,Password,TargettedServerName,RealServerName                foreach ($Record in $Result)                {                    $PasswordSecureString = ConvertTo-SecureString -AsPlainText -Force -String ($Record.Password)                    $Record | Add-Member -MemberType NoteProperty -Name EncryptedPassword -Value (ConvertFrom-SecureString -Key $SecureStringKey -SecureString $PasswordSecureString)                    $Record.PSObject.Properties.Remove("Password")                    $Record | Select-Object Username,EncryptedPassword,TargettedServerName,RealServerName | Export-Csv -Append -Path $TsvFileName -NoTypeInformation                }            }        }    }}function ConvertTo-CleartextPassword{<#.SYNOPSISThis function can be used to decrypt passwords that were stored encrypted by the function Invoke-PasswordRoll.Function: ConvertTo-CleartextPasswordAuthor: MicrosoftVersion: 1.0.DESCRIPTIONThis function can be used to decrypt passwords that were stored encrypted by the function Invoke-PasswordRoll..PARAMETER EncryptedPasswordThe encrypted password that was stored in a TSV file..PARAMETER EncryptionKeyThe password used to do the encryption..EXAMPLE. .\Invoke-PasswordRoll.ps1    #Loads the functions in this script fileConvertTo-CleartextPassword -EncryptionKey "Password1" -EncryptedPassword 76492d1116743f0423413b16050a5345MgB8AGcAZgBaAHUAaQBwADAAQgB2AGgAcABNADMASwBaAFoAQQBzADEAeABjAEEAPQA9AHwAZgBiAGYAMAA1ADYANgA2ADEANwBkADQAZgAwADMANABjAGUAZQAxAGIAMABiADkANgBiADkAMAA4ADcANwBhADMAYQA3AGYAOABkADcAMQA5ADQAMwBmAGYANQBhADEAYQBjADcANABkADIANgBhADUANwBlADgAMAAyADQANgA1ADIAOQA0AGMAZQA0ADEAMwAzADcANQAyADUANAAzADYAMAA1AGEANgAzADEAMQA5ADAAYwBmADQAZAA2AGQA"Decrypts the encrypted password which was stored in the TSV file.#>    Param(        [Parameter(Mandatory=$true)]        [String]        $EncryptedPassword,        [Parameter(Mandatory=$true)]        [String]        $EncryptionKey    )    $Sha256 = new-object System.Security.Cryptography.SHA256CryptoServiceProvider    $SecureStringKey = $Sha256.ComputeHash([System.Text.UnicodeEncoding]::Unicode.GetBytes($EncryptionKey))    [SecureString]$SecureStringPassword = ConvertTo-SecureString -String $EncryptedPassword -Key $SecureStringKey    Write-Output ([System.Runtime.InteropServices.Marshal]::PtrToStringAuto([System.Runtime.InteropServices.Marshal]::SecureStringToCoTaskMemUnicode($SecureStringPassword)))}
Beheerders kunnen lokale administrator-accounts toevoegen aan computers met een Active Directory-groep maken en deze toe te voegen aan de lokale groep Administrators via Voorkeuren voor Groepsbeleid-> een lokale groep. Deze actie geen referenties in het cachegeheugen. Het dialoogvenster lijkt op de volgende. Deze tijdelijke oplossing is vereist een verbinding met Active Directory Domain Services wanneer de gebruiker met deze referenties onby vastgelegd.


Lokale groep - oplossing


Scenario 2: Toegewezen stations

Beheerders gebruiken stationstoewijzingen netwerklocaties toewijzen aan gebruikers. Functie voor de wachtwoordbeveiliging wordt gebruikt om te controleren of geautoriseerde toegang tot het station. De volgende voorkeuren worden beïnvloed:
  • Gebruikersconfiguratie-> Windows-instellingen-> stationstoewijzingen-> nieuwe-> toegewezen station

Belangrijke wijzigingen

Actie: Maken, bijwerken of vervangen
  • De velden gebruikersnaam, wachtwoorden Bevestig het wachtwoord zijn uitgeschakeld.

Toegewezen station - maken/Update/vervangen

Actie: verwijderen
  • Geen verandering in gedrag

Tijdelijke oplossingen

In plaats van de wachtwoordmethode voor verificatie, kunt u Windows Verkenner voor het beheren van machtigingen en rechten aan gebruikers toewijzen. Active Directory-objecten worden machtigingen voor toegangsbeheer kunt u naar de map.


Scenario 3: Services

U kunt de voorkeur Services eigenschappen van de service zodanig te wijzigen dat ze in een andere context dan hun oorspronkelijke beveiligingscontext worden uitgevoerd. De volgende voorkeuren worden beïnvloed:
  • Computerconfiguratie-> instellingen Configuratiescherm-> Services nieuwe->-> Service

Belangrijke wijzigingen

Opstarten: Geen wijziging, automatisch of handmatig
  • De velden wachtwoord en Bevestig het wachtwoord zijn uitgeschakeld.
  • De beheerder kan alleen ingebouwde accounts gebruiken.

Service - ongewijzigd/automatisch/handmatig

Opstarten: uitschakelen
  • Geen verandering in gedrag
Het dialoogvenster Nieuwe
  • Beheerders die niet gebouwd-gebruikers voor deze account gebruikt "wordt de volgende waarschuwing weergegeven:

Waarschuwing tegen niet-ingebouwde gebruikers


Tijdelijke oplossingen

Services kunnen nog steeds worden uitgevoerd als een lokale systeemaccount. Machtigingen kunnen worden gewijzigd, zoals beschreven in het volgende artikel in de Microsoft Knowledge Base:
256345 Hoe u instellingen voor Groepsbeleid configureren om beveiliging van systeemservices instellen

Opmerking
als de service die u wilt configureren niet aanwezig is, moet u de instellingen configureren op een computer waarop de service actief is.


Scenario 4: Geplande en directe taken (niveau omhoog)

Deze worden gebruikt voor geplande taken uitvoeren in de beveiligingscontext van een specifieke. De mogelijkheid voor het opslaan van referenties voor geplande taken worden uitgevoerd als een willekeurige gebruiker wanneer die gebruiker niet is aangemeld, is niet langer beschikbaar. De volgende voorkeuren worden beïnvloed. (Houd er rekening mee dat op sommige platforms, "ten minste Windows 7" wordt vervangen door "Windows Vista en hoger.")
  • Computerconfiguratie-> instellingen Configuratiescherm-> geplande taken-> nieuw-> geplande taak (ten minste Windows 7)
  • Computerconfiguratie-> instellingen Configuratiescherm-> geplande taken-> nieuw-> directe taak (ten minste Windows 7)
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> geplande taken-> nieuw-> geplande taak (ten minste Windows 7)
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> geplande taken-> nieuw-> directe taak (ten minste Windows 7)

Belangrijke wijzigingen

Actie: maken, bijwerken of vervangen
  • Wanneer u de optie Uitvoeren ongeacht of gebruiker wel of niet is aangemeld , wordt niet meer gevraagd of de beheerder van de referenties.
  • Het selectievakje wachtwoord niet opslaan is uitgeschakeld. Het is ook standaard ingeschakeld.

Nieuw geplande of directe taak (niveau omhoog)

Actie: verwijderen

Geen verandering in gedrag

Tijdelijke oplossingen

Voor de "geplande taak (ten minste Windows 7)" en "directe taak (ten minste Windows 7)" taken, beheerders kunnen specifieke gebruikersaccounts gebruiken wanneer de opgegeven gebruiker is aangemeld. Of ze kunnen alleen toegang hebben tot lokale bronnen als die gebruiker. Deze tasksstillcan worden uitgevoerd in de context van de lokale service.



Scenario 5: Geplande en directe taken (lager niveau)

Dit is de lagere versie van geplande taken uitgevoerd in de beveiligingscontext van een specifieke voorkeuren. De mogelijkheid voor het opslaan van referenties voor geplande taken worden uitgevoerd als een willekeurige gebruiker wanneer die gebruiker niet is aangemeld, is niet langer beschikbaar. De volgende voorkeuren worden beïnvloed:
  • Computerconfiguratie-> instellingen Configuratiescherm-> taken-> nieuwe-> van geplande taak
  • Computerconfiguratie-> instellingen Configuratiescherm-> taken-> nieuwe-> directe taak (Windows XP)
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> taken-> nieuwe-> van geplande taak
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> taken-> nieuwe-> directe taak (Windows XP)

Belangrijke wijzigingen

Actie: Maken, bijwerken of vervangen
  • Het selectievakje uitvoeren als is uitgeschakeld. Daarom de velden Gebruikersnaam, wachtwoorden Bevestig het wachtwoord al uitgeschakeld.

Nieuwe taak - maken/Update/vervangen (lager niveau)

Actie: verwijderen

Geen verandering in gedrag

Tijdelijke oplossingen

Voor de "Geplande taak" en "Directe taak (Windows XP)" items, geplande taken uitgevoerd met de machtigingen die momenteel beschikbaar voor de lokale service zijn.


Scenario 6: Gegevensbronnen

De voorkeur voor gegevensbronnen wordt gebruikt om een gegevensbron koppelen aan een gebruiker of computer. Deze functie wordt niet langer opgeslagen referenties voor toegang tot gegevensbronnen die zijn beveiligd met een wachtwoord. De volgende voorkeuren worden beïnvloed:
  • Computerconfiguratie-> instellingen Configuratiescherm-> gegevensbronnen
  • Gebruikersconfiguratie-> instellingen Configuratiescherm-> gegevensbronnen

Belangrijke wijzigingen

Actie: maken, bijwerken of vervangen
  • De velden Gebruikersnaam, wachtwoorden Bevestig het wachtwoord zijn uitgeschakeld:

Gegevensbronnen - maken/Update/vervangen

Actie: verwijderen
  • Geen verandering in gedrag

Tijdelijke oplossingen

Er zijn geen tijdelijke oplossingen beschikbaar. Deze voorkeur worden niet langer opgeslagen referenties voor toegang tot gegevensbronnen die zijn beveiligd met een wachtwoord.


Afschrijving van CPassword

CPassword verwijderen

De Windows PowerShell-script dat is opgenomen in dit Microsoft Knowledge Base-artikel wordt vastgesteld of een domein bevat de voorkeursinstellingen van Groepsbeleid met CPassword. Als de XML CPassword in een bepaalde voorkeur wordt gedetecteerd, wordt deze weergegeven in deze lijst.


Voorkeuren voor CPassword detecteren

Dit script moet worden uitgevoerd vanuit een lokale map op de domeincontroller die u wilt reinigen. Kopiëren en de inhoud opslaan in een nieuw bestand met Windows PowerShell, bepalen van de vaste schijf en vervolgens het script uitvoeren, zoals aangegeven in de volgende syntaxis.

 <#.SYNOPSISGroup Policy objects in your domain can have preferences that store passwords for different tasks, such as the following:    1. Data Sources    2. Drive Maps    3. Local Users    4. Scheduled Tasks (both XP and up-level)    5. ServicesThese passwords are stored in SYSVOL as part of GP preferences and are not secure because of weak encryption (32-byte AES). Therefore, we recommend that you not deploy such preferences in your domain environment and remove any such existing preferences. This script is to help administrator find GP Preferences in their domain's SYSVOL that contains passwords. .DESCRIPTIONThis script should be run on a DC or a client computer that is installed with RSAT to print all the preferences that contain password with information such as GPO, Preference Name, GPEdit path under which this preference is defined.After you have a list of affected preferences, these preferences can be removed by using the editor in the Group Policy Management Console. .SYNTAXGet-SettingsWithCPassword.ps1 [-Path  <String>] .EXAMPLEGet-SettingsWithCPassword.ps1 -Path %WinDir%\SYSVOL\domainGet-SettingsWithCPassword.ps1 -Path  <GPO Backup Folder Path> .NOTESIf Group Policy PS module is not found the output will contain GPO GUIDs instead of GPO names. You can either run this script on a domain controller or rerun the script on the client after you have installed RSAT and enabled the Group Policy module.Or, you can use GPO GUIDs to obtain GPO names by using the Get-GPO cmdlet. .LINKhttp://go.microsoft.com/fwlink/?LinkID=390507 #>#----------------------------------------------------------------------------------------------------------------# Input parameters#--------------------------------------------------------------------------------------------------------------param(    [string]$Path = $(throw "-Path is required.") # Directory path where GPPs are located. )#---------------------------------------------------------------------------------------------------------------$isGPModuleAvailable = $false$impactedPrefs = { "Groups.xml", "ScheduledTasks.xml","Services.xml", "DataSources.xml", "Drives.xml" }#----------------------------------------------------------------------------------------------------------------# import Group olicy module if available#----------------------------------------------------------------------------------------------------------------if (-not (Get-Module -name "GroupPolicy")){   if (Get-Module -ListAvailable |          Where-Object { $_.Name -ieq "GroupPolicy" })    {        $isGPModuleAvailable = $true        Import-Module "GroupPolicy"    }    else    {        Write-Warning "Unable to import Group Policy module for PowerShell. Therefore, GPO guids will be reported.                        Run this script on DC to obtain the GPO names, or use the Get-GPO cmdlet (on DC) to obtain the GPO name from GPO guid."    }}else{    $isGPModuleAvailable = $true}Function Enum-SettingsWithCpassword ( [string]$sysvolLocation ){    # GPMC tree paths    $commonPath = " -> Preferences -> Control Panel Settings -> "    $driveMapPath = " -> Preferences -> Windows Settings -> "        # Recursively obtain all the xml files within the SYVOL location    $impactedXmls = Get-ChildItem $sysvolLocation -Recurse -Filter "*.xml" | Where-Object { $impactedPrefs -cmatch $_.Name }            # Each xml file contains multiple preferences. Iterate through each preference to check whether it    # contains cpassword attribute and display it.    foreach ( $file in $impactedXmls )    {        $fileFullPath = $file.FullName                # Set GPP category. If file is located under Machine folder in SYSVOL        # the setting is defined under computer configuration otherwise the         # setting is a to user configuration          if ( $fileFullPath.Contains("Machine") )        {            $category = "Computer Configuration"        }        elseif ( $fileFullPath.Contains("User") )        {            $category = "User Configuration"        }        else        {            $category = "Unknown"        }        # Obtain file content as XML        try        {            [xml]$xmlFile = get-content $fileFullPath -ErrorAction Continue        }        catch [Exception]{            Write-Host $_.Exception.Message        }        if ($xmlFile -eq $null)        {            continue        }        switch ( $file.BaseName )        {            Groups             {                 $gppWithCpassword = $xmlFile.SelectNodes("Groups/User") | where-Object { [String]::IsNullOrEmpty($_.Properties.cpassword) -eq $false }                $preferenceType = "Local Users"            }            ScheduledTasks            {                $gppWithCpassword  = $xmlFile.SelectNodes("ScheduledTasks/*") | where-Object { [String]::IsNullOrEmpty($_.Properties.cpassword) -eq $false }                $preferenceType = "Scheduled Tasks"            }            DataSources            {                $gppWithCpassword = $xmlFile.SelectNodes("DataSources/DataSource") | where-Object { [String]::IsNullOrEmpty($_.Properties.cpassword) -eq $false }                $preferenceType = "Data sources"            }            Drives            {                $gppWithCpassword = $xmlFile.SelectNodes("Drives/Drive") | where-Object { [String]::IsNullOrEmpty($_.Properties.cpassword) -eq $false }                $preferenceType = "Drive Maps"            }            Services            {                $gppWithCpassword = $xmlFile.SelectNodes("NTServices/NTService") | where-Object { [String]::IsNullOrEmpty($_.Properties.cpassword) -eq $false }                $preferenceType = "Services"            }            default            {   # clear gppWithCpassword and preferenceType for next item.                try                {                    Clear-Variable -Name gppWithCpassword -ErrorAction SilentlyContinue                    Clear-Variable -Name preferenceType -ErrorAction SilentlyContinue                }                catch [Exception]{}            }        }        if ($gppWithCpassword -ne $null)        {            # Build GPO name from GUID extracted from filePath             $guidRegex = [regex]"\{(.*)\}"            $match = $guidRegex.match($fileFullPath)            if ($match.Success)            {               $gpoGuid = $match.groups[1].value               $gpoName = $gpoGuid            }            else            {               $gpoName = "Unknown"            }            if($isGPModuleAvailable -eq $true)            {                try                 {                       $gpoInfo = Get-GPO -Guid $gpoGuid -ErrorAction Continue                    $gpoName = $gpoInfo.DisplayName                }                catch [Exception] {                    Write-Host $_.Exception.Message                }            }            # display prefrences that contain cpassword            foreach ( $gpp in $gppWithCpassword )            {                if ( $preferenceType -eq "Drive Maps" )                {                    $prefLocation = $category + $driveMapPath + $preferenceType                }                else                {                    $prefLocation = $category + $commonPath + $preferenceType                }                $obj = New-Object -typeName PSObject                 $obj | Add-Member –membertype NoteProperty –name GPOName    –value ($gpoName)      –passthru |                       Add-Member -MemberType NoteProperty -name Preference -value ($gpp.Name)     -passthru |                       Add-Member -MemberType NoteProperty -name Path       -value ($prefLocation)                Write-Output $obj             }        } # end if $gppWithCpassword    } # end foreach $file} # end functions Enum-PoliciesWithCpassword#-----------------------------------------------------------------------------------# Check whether Path is valid. Enumerate all settings that contain cpassword. #-----------------------------------------------------------------------------------if (Test-Path $Path ){    Enum-SettingsWithCpassword $Path}else{    Write-Warning "No such directory: $Path"}  


Voorbeeld van syntaxis (wordt ervan uitgegaan dat het station C)

.\Get-SettingsWithCPassword.ps1 –path “C:\Windows\SYSVOL\domain” | Format-List

Opmerking Houd er rekening mee dat kunt u ook een back-up groepsbeleidsobject voor richten de pad in plaats van het domein.

Het detectiescript genereert een lijst met de volgende strekking weergegeven:

afbeelding invoegen

Bekijk de uitvoer naar een bestand opslaan voor langere lijsten:

.\Get-SettingsWithCPassword.ps1 –path “C:\Windows\SYSVOL\domain” | ConvertTo-Html > gpps.html

CPassword voorkeuren verwijderen

Wilt verwijderen van de voorkeuren die CPassword bevatten, is het raadzaam dat de Group Policy Management Console (GPMC) gebruikt op de domeincontroller of vanaf een client met Remote Server Administration Tools. U kunt een voorkeur in vijf stappen op deze consoles verwijderen. Ga hiervoor als volgt te werk:
  1. Open in de GPMC, de voorkeur dat CPassword gegevens bevat.
  2. Wijzig de actie te verwijderen of uitschakelen, voorzover van toepassing op de voorkeur.
  3. Klik op OK om uw wijzigingen te slaan.
  4. Wacht tot een of twee Groepsbeleid vernieuwen cycli wijzigingen doorgeven aan clients toestaan.
  5. Nadat de wijzigingen worden toegepast op alle clients, verwijdert u de voorkeur.
  6. Herhaal stap 1 tot en met 5 als u uw hele omgeving schoon. Als het detectiescript nul resultaten oplevert, bent u klaar.

Hash-informatie

BestandsnaamSHA1-hashSHA256-hash
Windows6.0-KB2928120-ia64.msuB2A74305CB56191774BFCF9FCDEAA983B26DC9A6DCE8C0F9CEB97DBF1F7B9BAF76458B3770EF01C0EDC581621BC8C3B2C7FD14E7
Windows6.0-KB2928120-x64.msu386457497682A2FB80BC93346D85A9C1BC38FBF71AF67EB12614F37F4AC327E7B5767AFA085FE676F6E81F0CED95D20393A1D38D
Windows6.0-KB2928120-x86.msu42FF283781CEC9CE34EBF459CA1EFE011D5132C3016D7E9DBBC5E487E397BE0147B590CFBBB5E83795B997894870EC10171E16D4
Windows6.1-KB2928120-ia64.msu5C2196832EC94B99AAF9B074D3938525B72196909958FA58134F55487521243AD9740BEE0AC210AC290D45C8322E424B3E5EBF16
Windows6.1-KB2928120-x64.msuEA5332F4E289DC799611EAB8E3EE2E86B7880A4B417A2BA34F8FD367556812197E2395ED40D8B394F9224CDCBE8AB3939795EC2A
Windows6.1-KB2928120-x86.msu7B7B6EE24CD8BE1AB3479F9E1CF9C98982C8BAB1603206D44815EF2DC262016ED13D6569BE13D06E2C6029FB22621027788B8095
Windows8-RT-KB2928120-x64.msuE18FC05B4CCA0E195E62FF0AE534BA39511A8593FCAED97BF1D61F60802D397350380FADED71AED64435D3E9EAA4C0468D80141E
Windows8-RT-KB2928120-x86.msuA5DFB34F3B9EAD9FA78C67DFC7ACACFA2FBEAC0B7F00A72D8A15EB2CA70F7146A8014E39A71CFF5E39596F379ACD883239DABD41
Windows8.1-KB2928120-x64.msuA07FF14EED24F3241D508C50E869540915134BB46641B1A9C95A7E4F0D5A247B9F488887AC94550B7F1D7B1198D5BCBA92F7A753
Windows8.1-KB2928120-x86.msuDE84667EC79CBA2006892452660EB99580D27306468EE4FA3A22DDE61D85FD3A9D0583F504105DF2F8256539051BC0B1EB713E9C
Windows8.1-KB2961899-x64.msu10BAE807DB158978BCD5D8A7862BC6B3EF20038BEC26618E23D9278FC1F02CA1F13BB289E1C6C4E0C8DA5D22E1D9CDA0DA8AFF51
Windows8.1-KB2961899-x86.msu230C64447CC6E4AB3AD7B4D4655B8D8CEFBFBE98E3FAD567AB6CA616E42873D3623A777185BE061232B952938A8846A974FFA7AF
update beveiligingspatch beveiligingsupdate beveiliging bug fout beveiligingsprobleem kwaadwillende aanvaller misbruik register niet-bufferoverschrijding overloop speciaal gevormd bereik speciaal vervaardigd denial of service DoS TSE

Waarschuwing: dit artikel is automatisch vertaald

Eigenschappen

Artikel-id: 2962486 - Laatst bijgewerkt: 10/02/2015 00:08:00 - Revisie: 5.0

Windows RT 8.1, Windows 8.1, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 Foundation, Windows Server 2012 R2 Standard, Windows 8, Windows 8 Enterprise, Windows 8 Pro, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows Server 2012 Foundation, Windows Server 2012 Standard, Windows 7 Service Pack 1, Windows Server 2008 R2 Service Pack 1, Windows Server 2008 Service Pack 2, Windows Vista Service Pack 2

  • atdownload kbbug kbexpertiseinter kbfix kbsecbulletin kbsecurity kbsecvulnerability kbmt KB2962486 KbMtnl
Feedback