MS14-025: Lỗ hổng trong tuỳ chọn chính sách nhóm có thể cho phép nâng cao đặc quyền: ngày 13 tháng 4 năm 2014

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch thuật của Microsoft và có thể được Cộng đồng Microsoft chỉnh sửa lại thông qua công nghệ CTF thay vì một biên dịch viên chuyên nghiệp. Microsoft cung cấp các bài viết được cả biên dịch viên và phần mềm dịch thuật thực hiện và cộng đồng chỉnh sửa lại để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng nhiều ngôn ngữ Tuy nhiên, bài viết do máy dịch hoặc thậm chí cộng đồng chỉnh sửa sau không phải lúc nào cũng hoàn hảo. Các bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này: 2962486
GIỚI THIỆU
Microsoft đã phát hành bản tin bảo mật MS14-025. Để tìm hiểu thêm về bản tin bảo mật này:

Làm thế nào để nhận trợ giúp và hỗ trợ cho bản cập nhật bảo mật này

Trợ giúp cài đặt chuyên biệt bản Cập Nhật:Hỗ trợ cho Microsoft Update

Giải pháp bảo mật cho các chuyên gia CNTT:TechNet khắc phục sự cố bảo mật và hỗ trợ

Giúp bảo vệ máy tính chạy Windows Windows khỏi vi-rút và phần mềm độc hại:Giải pháp vi-rút và Trung tâm bảo mật

Hỗ trợ địa phương theo quốc gia của bạn:Hỗ trợ quốc tế

Thông tin thêm

Vấn đề đã biết và biết thêm thông tin về bản Cập Nhật bảo mật này

Các bài viết chứa thông tin về bản Cập Nhật bảo mật này vì nó liên quan đến phiên bản sản phẩm cá nhân. Các bài viết có thể có sự cố đã biết thông tin. Nếu trường hợp này xảy ra, vấn đề được liệt kê trong mỗi liên kết bài viết.
  • 2928120 MS14-025: Mô tả các bản Cập Nhật bảo mật cho Windows công cụ quản trị máy chủ từ xa cho hệ thống đã cập nhật 2919355 cài đặt: ngày 13 tháng 4 năm 2014
  • 2961899 MS14-025: Mô tả các bản Cập Nhật bảo mật cho Windows công cụ quản trị máy chủ từ xa cho hệ thống không có bản Cập Nhật 2919355 cài đặt: ngày 13 tháng 4 năm 2014
Tuỳ chọn chính sách nhóm

Tổng quan

Một số tùy chọn chính sách nhóm có thể lưu mật khẩu. Chức năng này đang được loại bỏ vì mật khẩu được lưu trữ insecurely. Bài viết này mô tả các thay đổi giao diện người dùng và bất kỳ giải pháp có sẵn.

Tuỳ chọn chính sách nhóm sau sẽ không cho phép tên người dùng và mật khẩu được lưu:
  • Bản đồ ổ đĩa
  • Nhóm và người dùng cục bộ
  • Bộ lập lịch nhiệm vụ
  • bản ghi dịch vụ
  • nguồn dữ liệu
Điều này sẽ ảnh hưởng đến hành vi của bất kỳ sẵn có đối tượng chính sách nhóm (GPO) trong môi trường dựa trên mật khẩu được chứa trong các tuỳ chọn. Nó cũng sẽ ngăn tạo tùy chọn chính sách Nhóm Mới bằng cách sử dụng chức năng này.

Bản đồ ổ đĩa, người dùng cục bộ và nhóm và bản ghi dịch vụ, bạn có thể đạt được mục tiêu tương tự thông qua chức năng, an toàn hơn trong Windows.

Bộ lập lịch nhiệm vụ và nguồn dữ liệu, bạn sẽ không thể đạt được mục tiêu tương tự có sẵn thông qua các chức năng không an toàn mật khẩu tùy chọn chính sách nhóm.
Kịch bản
Tuỳ chọn chính sách nhóm sau bị ảnh hưởng bởi sự thay đổi này. Mỗi tuỳ chọn được bao gồm một thời gian ngắn và sau đó thêm chi tiết. Ngoài ra, giải pháp cung cấp mà cho phép bạn thực hiện các tác vụ tương tự.
Tuỳ chọn bị ảnh hưởngÁp dụng cho người dùngÁp dụng cho máy tính
Quản lý người dùng cục bộ
Ánh xạ ổ đĩa
Không
bản ghi dịch vụ
Không
Bộ lập lịch nhiệm vụ (lên cấp)
Bộ lập lịch nhiệm vụ (xuống cấp)
Tác vụ ngay lập tức (lưu cấp)
Tác vụ ngay lập tức (xuống cấp)
nguồn dữ liệu

Tóm tắt các thay đổi

  • Mật khẩu trong tuỳ chọn bị ảnh hưởng tất cả bị vô hiệu hoá. Quản trị viên không thể tạo tuỳ chọn mới bằng cách sử dụng các mật khẩu.
  • Trường người dùng bị vô hiệu hoá một số tuỳ chọn.
  • Tuỳ chọn sẵn có có mật khẩu không được Cập Nhật. Họ chỉ có thể xóa hoặc vô hiệu hóa, là phù hợp với sở thích cụ thể.
  • Chế độ hoạt động xoá và vô hiệu hoá không thay đổi đối với các tuỳ chọn.
  • Khi quản trị viên mở bất kỳ tuỳ chọn có các thuộc tính CPassword, quản trị viên sẽ nhận được cảnh báo hộp thoại thông báo cho họ tại sự phản kháng. Cố gắng để lưu thay đổi tuỳ chọn mới hoặc hiện có yêu cầu các thuộc tính CPassword sẽ kích hoạt cùng hộp thoại. Chỉ xoá và vô hiệu hoá hành động sẽ không kích hoạt hộp thoại cảnh báo.

Cảnh báo bảo mật CPassword



Tình huống 1: Quản lý người dùng cục bộ

Tuỳ chọn quản lý người dùng cục bộ thường được sử dụng để tạo ra các quản trị viên cục bộ đã biết mật khẩu trên máy tính. Tính năng này không an toàn vì cách tùy chọn chính sách nhóm lưu trữ mật khẩu. Do đó, chức năng này không còn có sẵn. Các tuỳ chọn sau bị ảnh hưởng:
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> người dùng cục bộ và nhóm-> mới-> người dùng cục bộ
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> người dùng cục bộ và nhóm-> mới-> người dùng cục bộ

Thay đổi quan trọng

Hành động: tạo hoặc thay thế
  • Trường tên người dùng, mật khẩuXác nhận mật khẩu bị vô hiệu hoá.
  • hộp thoại cảnh báo xuất hiện khi quản trị viên mở hoặc cố gắng lưu bất kỳ thay đổi một tuỳ chọn sẵn có có mật khẩu.


người dùng cục bộ - tạo hoặc thay thế

Hành động: Cập Nhật
  • Trường mật khẩuXác nhận mật khẩu bị vô hiệu hoá.
  • Boxappears hộp thoại cảnh báo khi quản trị viên mở hoặc cố gắng lưu bất kỳ thay đổi một tuỳ chọn sẵn có có mật khẩu.


người dùng cục bộ - Cập Nhật

Hành động: xoá
  • Không có thay đổi hành vi

Giải pháp

Đối với những người trước đây dựa vào tuỳ chọn chính sách nhóm để thiết lập mật khẩu quản trị viên cục bộ, kịch bản sau đây được cung cấp một thay thế an toàn cho CPassword. sao lưu nội dung tệp Windows PowerShell mới, và sau đó chạy tập lệnh như được nêu trong của nó. Ví dụ phần.

Microsoft cung cấp mô hình lập trình để minh hoạ, không bảo hành hoặc rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở các bảo đảm cho một mục đích cụ thể hoặc sự. Bài viết này giả định rằng bạn đã quen với ngôn ngữ lập trình đang được giải thích và các công cụ được sử dụng để tạo và quy trình gỡ lỗi. Các kỹ sư hỗ trợ Microsoft có thể giúp giải thích các chức năng của một quy trình cụ thể. Tuy nhiên, họ sẽ không sửa đổi các ví dụ để cung cấp thêm chức năng hoặc xây dựng quy trình nhằm đáp ứng yêu cầu cụ thể của bạn.

 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)))}
Quản trị viên có thể thêm tài khoản quản trị viên viên cục bộ cho các máy tính bằng cách tạo một nhóm Thư mục Họat động và thêm vào nhóm quản trị viên cục bộ thông qua các tùy chọn chính sách Nhóm-> nhóm cục bộ. Thao tác này không bộ đệm ẩn thông tin kí nhập. hộp thoại giống như sau. Giải pháp này yêu cầu kết nối với miền bản ghi dịch vụ Thư mục Họat động khi người dùng kí nhập onby bằng cách sử dụng các uỷ nhiệm.


nhóm cục bộ - giải pháp


Trường hợp 2: ổ đĩa được ánh xạ

Quản trị viên sử dụng ổ đĩa đồ phân bổ các vị trí mạng cho người dùng. Tính năng bảo vệ mật khẩu được sử dụng để đảm bảo được phép truy cập vào ổ đĩa. Các tuỳ chọn sau bị ảnh hưởng:
  • Cấu hình người dùng-> cài đặt chuyên biệt Windows-> bản đồ ổ-> mới-> ổ đĩa được ánh xạ

Thay đổi quan trọng

Hành động: Tạo, Cập Nhật, hoặc thay thế
  • Trường tên người dùng, mật khẩuxác nhận mật khẩu bị vô hiệu hoá.

ổ đĩa được ánh xạ - tạo/Cập Nhật/thay thế

Hành động: xoá
  • Không có thay đổi hành vi

Giải pháp

Thay vì sử dụng phương pháp mật khẩu để xác thực, bạn có thể sử dụng Window Explorer để quản lý quyền chia sẻ và phân bổ quyền người dùng. Bạn có thể sử dụng Thư mục Họat động đối tượng để kiểm soát quyền truy cập vào mục tin thư thoại.


Trường hợp 3: bản ghi dịch vụ

Bạn có thể sử dụng tuỳ chọn bản ghi dịch vụ thay đổi thuộc tính của bản ghi dịch vụ trong đó một cách chạy trong ngữ cảnh khác bối cảnh bảo mật ban đầu của họ. Các tuỳ chọn sau bị ảnh hưởng:
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> dịch vụ-> mới-> bản ghi dịch vụ

Thay đổi quan trọng

Khởi động: Không có thay đổi, tự động hoặc thủ công
  • Trường mật khẩuxác nhận mật khẩu bị vô hiệu hoá.
  • Quản trị viên có thể sử dụng tài khoản chỉ cài sẵn.

bản ghi dịch vụ - thay đổi/tự động/thủ công

Khởi động: vô hiệu hoá
  • Không có thay đổi hành vi
hộp thoại mới
  • Quản trị viên cố gắng sử dụng không xây dựng-nhập người dùng cho tài khoản này "nhận được cảnh báo sau:

Chú ý đối với người dùng builtin


Giải pháp

bản ghi dịch vụ vẫn có thể chạy như một trương mục hệ thống cục bộ. bản ghi dịch vụ mức cấp phép có thể được thay đổi như được ghi lại trong bài viết sau trong cơ sở kiến thức Microsoft:
256345 Làm thế nào để cấu hình chính sách nhóm thiết đặt bảo mật cho các bản ghi dịch vụ hệ thống

Chú ý
nếu không có các bản ghi dịch vụ mà bạn muốn đặt cấu hình, bạn phải cấu hình thiết đặt trên máy tính đang chạy bản ghi dịch vụ.


Tình huống 4: Tác vụ theo lịch trình và ngay lập tức (lưu cấp)

Điều này được sử dụng để chạy Bộ lập lịch nhiệm vụ trong ngữ cảnh bảo mật cụ thể. Không có khả năng lưu trữ thông tin kí nhập cho các tác vụ theo lịch biểu để chạy bất kỳ người dùng khi người dùng không được kí nhập. Các tuỳ chọn sau bị ảnh hưởng. (Xin lưu ý trên một số nền tảng, "tối thiểu Windows 7" được thay thế bằng "Windows Vista và sau đó.")
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> đã Bộ lập lịch nhiệm vụ (ít Windows 7)
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> ngay lập tức tác vụ (ít Windows 7)
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> đã Bộ lập lịch nhiệm vụ (ít Windows 7)
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> ngay lập tức tác vụ (ít Windows 7)

Thay đổi quan trọng

Hành động: tạo, Cập Nhật, hoặc thay thế
  • Khi bạn chọn tuỳ chọn Run cho dù người dùng được kí nhập hoặc không , một hộp thoại không nhắc uỷ nhiệm người quản trị.
  • Hộp lưu trữ mật khẩu bị vô hiệu hoá. theo mặc định, hộp cũng được kiểm tra.

Tác vụ theo lịch trình mới hoặc ngay lập tức (lưu cấp)

Hành động: xoá

Không có thay đổi hành vi

Giải pháp

Đối với các "Scheduled tác vụ (ít Windows 7)" và "ngay lập tức tác vụ (ít Windows 7)" tác vụ, quản trị viên có thể sử dụng tài khoản người dùng cụ thể khi người dùng được kí nhập. Hoặc, họ chỉ có thể truy cập tài nguyên Cục bộ với người dùng. Tasksstillcan chạy trong ngữ cảnh của bản ghi dịch vụ địa phương.



Tình huống 5: Tác vụ theo lịch trình và ngay lập tức (xuống cấp)

Đây là phiên bản xuống cấp tuỳ chọn sử dụng để chạy Bộ lập lịch nhiệm vụ trong ngữ cảnh bảo mật cụ thể. Không có khả năng lưu trữ thông tin kí nhập cho các tác vụ theo lịch biểu để chạy bất kỳ người dùng khi người dùng không được kí nhập. Các tuỳ chọn sau bị ảnh hưởng:
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> Bộ lập lịch nhiệm vụ
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> ngay lập tức tác vụ (Windows XP)
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> Bộ lập lịch nhiệm vụ
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> lập lịch tác vụ-> mới-> ngay lập tức tác vụ (Windows XP)

Thay đổi quan trọng

Hành động: Tạo, Cập Nhật, hoặc thay thế
  • Hộp chạy dưới dạng bị vô hiệu hoá. Do đó, Tên, mật khẩuXác nhận mật khẩu trường tất cả vô hiệu hoá.

Tác vụ mới - tạo/Cập Nhật/thay thế (xuống cấp)

Hành động: xoá

Không có thay đổi hành vi

Giải pháp

"Tác vụ theo lịch" và "Ngay lập tức tác vụ (Windows XP)" mục, tác vụ theo lịch biểu chạy bằng cách sử dụng các quyền hiện có sẵn cho các bản ghi dịch vụ địa phương.


Tình huống 6: nguồn dữ liệu

Tuỳ chọn nguồn dữ liệu được sử dụng để kết hợp các nguồn dữ liệu với máy tính hoặc người dùng. Tính năng này không lưu trữ thông tin kí nhập cho phép truy cập vào nguồn dữ liệu được bảo vệ bằng mật khẩu. Các tuỳ chọn sau bị ảnh hưởng:
  • Cấu hình máy tính-> thiết đặt Pa-nen điều khiển-> nguồn dữ liệu
  • Cấu hình người dùng-> thiết đặt Pa-nen điều khiển-> nguồn dữ liệu

Thay đổi quan trọng

Hành động: tạo, Cập Nhật, hoặc thay thế
  • Trường tên người dùng, mật khẩuXác nhận mật khẩu bị vô hiệu hoá:

nguồn dữ liệu - tạo/Cập Nhật/thay thế

Hành động: xoá
  • Không có thay đổi hành vi

Giải pháp

Không có giải pháp có sẵn. Tuỳ chọn này không lưu trữ thông tin kí nhập để truy cập vào nguồn dữ liệu được bảo vệ bằng mật khẩu.


Sự phản kháng của CPassword

Loại bỏ CPassword

Tập lệnh Windows PowerShell được bao gồm trong bài viết Cơ sở tri thức Microsoft phát hiện xem miền chứa bất kỳ tuỳ chọn chính sách nhóm có thể sử dụng CPassword. Nếu phát hiện CPassword XML trong tuỳ chọn cho, nó sẽ được hiển thị trong danh sách này.


Phát hiện CPassword tùy chọn

Kịch bản này phải được chạy từ mục tin thư thoại cục bộ trên bộ điều khiển miền mà bạn muốn xoá. sao lưu nội dung tệp mới Windows PowerShell, xác định các ổ đĩa hệ thống, và sau đó chạy tập lệnh như được nêu trong việc sử dụng.

 <#.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"}  


Ví dụ sử dụng (giả định rằng ổ đĩa hệ thống là C)

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

Lưu ý: Xin lưu ý rằng bạn có thể cũng nhắm mục tiêu bất kỳ GPO sao lưu cho các đường dẫn thay vì tên miền.

Tập lệnh phát hiện ra một danh sách tương tự như sau:

Chèn hình ảnh

Danh sách dài hơn, hãy xem xét lưu kết quả vào tệp:

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

Loại bỏ CPassword tùy chọn

Để loại bỏ các tuỳ chọn chứa dữ liệu CPassword, chúng tôi khuyên bạn sử dụng bàn điều khiển quản lý chính sách nhóm (GPMC) trên bộ điều khiển miền hoặc từ một khách hàng có công cụ quản trị máy chủ từ xa được cài đặt chuyên biệt. Bạn có thể loại bỏ bất kỳ tuỳ chọn ở bước 5 bàn điều khiển này. Để thực hiện việc này, hãy làm theo các bước sau:
  1. Trong GPMC, mở tuỳ chọn chứa dữ liệu CPassword.
  2. Thay đổi các hành động xóa hoặc vô hiệu hoá, là phù hợp với sở thích.
  3. Bấm OK để lưu thay đổi của bạn.
  4. Đợi một hoặc hai chính sách nhóm làm mới chu kỳ để thay đổi phổ biến cho khách hàng.
  5. Sau khi thay đổi được áp dụng trên tất cả các khách hàng, xoá Tuỳ chọn.
  6. Lặp lại bước 1 đến 5 là cần thiết để xoá toàn bộ môi trường của bạn. Khi phát hiện lệnh trả lại kết quả không, bạn đã hoàn tất.

Thông tin băm tệp

Tên tệpSHA1 bămSha256 băm
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
Cập Nhật security_patch security_update bảo mật lỗi lỗi lỗ hổng bảo mật nguy hiểm tấn công khai thác registry unauthenticated đệm overrun tràn đặc biệt tạo phạm vi đặc biệt crafted từ chối bản ghi dịch vụ DoS TSE

Cảnh báo: Bài viết này được dịch tự động

Властивості

Ідентифікатор статті: 2962486 – останній перегляд: 10/01/2015 18:36:00 – виправлення: 2.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 KbMtvi
Зворотний зв’язок