Súhrn
Dôveryhodnosti lesa poskytujú spôsob prostriedkov služby Active Directory lesa nedôveruje totožností v inom lese. Táto dôvera môže byť nakonfigurovaný obojsmerná. Dôveryhodná doménová štruktúra je zdrojom totožnosť používateľa. Doménovej štruktúre obsahuje prostriedok, na ktorom sa používatelia overujú. Dôveryhodná doménová štruktúra môže overiť doménovej štruktúre používatelia bez toho, aby naopak výskyt.
Neobmedzený delegovanie modulu Kerberos je mechanizmus, v ktorom používateľ odošle svoje poverenia služby na prístup k prostriedkom v mene používateľa služieb. Umožniť neobmedzený delegovanie modulu Kerberos, konto služby Active Directory musia byť označené ako dôveryhodný pre delegovanie. Ak používateľ a služby, ktoré sú súčasťou rôznych lesoch vytvorí problém. Lesa je zodpovedný za umožňuje delegovanie. Delegovanie aj povolenia používateľov z používateľa.
Umožňuje jedného lesa rozhodovať zabezpečenia, ktorý ovplyvňuje kontá v inom lese porušuje zabezpečenia hranice medzi lesov. Útočník, ktorý vlastní doménovej štruktúre môžete požiadať delegovanie TGT identity dôveryhodných lesa, čo je prístup k prostriedkom v lese dôveryhodné. Toto sa nevzťahuje na delegovanie Kerberos obmedzené (KCD).
Windows Server 2012 zaviedla výkon lesa hranica úplnú delegovanie modulu Kerberos. Táto funkcia pridá politiku dôveryhodnej doméne vypnúť neobmedzený delegovanie na základe za dôveryhodný. Nastavenie tejto funkcie umožňuje neobmedzený delegovanie a nebezpečný.
Aktualizácie, ktoré poskytujú zdokonalené zabezpečenie existuje v nasledujúcich verziách systému Windows Server:
-
Windows Server 2019
-
Windows Server 2016
-
Windows Server 2012 R2
-
Windows Server 2012
Táto funkcia spolu so zmenami v security zabezpečenie boli spätne portované pre nasledujúce verzie:
-
Windows Server 2008 R2
-
Windows Server 2008
Tieto aktualizácie, vykonajte nasledujúce zmeny:
-
Delegovanie Kerberos neobmedzený vypnutá v lese nové a nové externé dôveryhodnostipo inštalácii14 mája aktualizácie a novšie aktualizácie.
-
Neobmedzený delegovanie modulu Kerberos je vypnuté lesov (nové a existujúce) a externé dôveryhodnosti po nainštalovaní júla 9, 2019 aktualizácie a novšie aktualizácie.
-
Správcovia umožňujú neobmedzený delegovanie modulu Kerberos pomocou môže alebo novším NETDOM a AD PowerShell modulu.
Aktualizácie môže spôsobiť konflikty kompatibility aplikácií, ktoré v súčasnosti vyžadujú neobmedzený delegovanie v lese alebo externé dôveryhodnosti. Toto platí najmä externých dôvery, pre ktoré je predvolene karantény príznak (známa aj ako SID filtrovanie). Konkrétne požiadavky na overenie služieb, ktoré používajú neobmedzený delegovanie za dôveryhodný uvedené typy zlyhá pri požiadavke nové lístka.
Dátum vydania nájdete aktualizácie časovej osi.
Alternatívne riešenie
Zabezpečenie údajov a konto Windows Server verzia s funkciou výkon lesa hranica úplnú delegovanie modulu Kerberos , je možné zablokovať TGT delegovanie po nainštalovaní aktualizácie marca 2019 cez prichádzajúce dôveryhodnosti nastavením príznak Netdom EnableTGTDelegationNo takto:
netdom.exe trust fabrikam.com /domain:contoso.com /EnableTGTDelegation:No
Delegovanie TGT blokuje nové a existujúce a externé dôveryhodnosti po inštalácii môže júla 2019 resp. aktualizácie.
Povoliť delegovanie cez fondy a pôvodnú konfiguráciu nebezpečné kým delegovanie obmedzené alebo založeného môžete zapnúť, nastaviť príznak EnableTGTDelegationÁno.
NETDOM príkazového riadka povolenie delegovanie TGT je nasledovná:
netdom trust <TrustedDomainName > /domain:<TrustingDomainName > /EnableTgtDelegation:Yes
Môžete myslieť koncepčne NETDOM syntax umožňujúce TGT delegovanie takto:
netdom trust <domain that you are administering> /domain:<domain whose trust NETDOM is modifying> /EnableTgtDelegation:Yes
Syntax NETDOM zapnutie TGT delegovanie fabrakam.com používateľov serveroch contoso.com je nasledovná:
netdom.exe trust fabrikam.com /domain:contoso.com /EnableTGTDelegation:Yes
Poznámky:
-
EnableTGTDelegation príznak malo byť nastavené v dôveryhodnej doméne (fabrikam.com v tomto prípade) pre každého doména (napríklad contoso.com). Po nastavení príznaku dôveryhodnej domény už umožňujú TGT chcete prideliť doména.
-
Stav zabezpečenia EnableTGTDelegation nie.
-
Všetky aplikácie alebo služby, ktoré sa spolieha na neobmedzený delegovanie po lesoch zlyhá pri EnableTGTDelegation sa manuálne alebo pomocou programu Áno. EnableTGTDelegation predvolené nie na nové a existujúce fondy potom nainštalujte aktualizácie môže 2019 a júla 2019. Ďalšie informácie o zistenie tohto zlyhania nájdete nájsť služby, ktoré spoliehajú na neobmedzený delegovanie. Zobraziť aktualizácie časovej osi časovej zmeny, ktoré ovplyvňujú, ako možno použiť tento postup.
-
Ďalšie informácie o NETDOM nájdete v dokumentácii Netdom.exe.
-
Ak musíte zapnúť TGT delegovanie na dôveryhodnosti, odporúča sa, zníženie rizika zapnutím Windows Defender poverení kryt na klientskych počítačoch. To zabraňuje všetky neobmedzený delegácia z počítača Windows Defender poverení kryt zapnuté a spustený.
-
Ak lesa alebo externej dôveryhodnosti a buď sú nakonfigurované ako do karantény, TGT delegovanie sa nedá zapnúť, pretože funkčných opačnej Sémantika. Karanténa bit posilňuje zabezpečenie rozhraní zúčastnených domény. Povolenie delegovanie TGT vymaže zabezpečenia hranice medzi doménami tým dôveryhodné domény prístup poverenia používatelia z dôveryhodnej domény. Nemôžete mať oboje.
Ak príznak karantény je povolené pridať príznak karantény: no syntax príkazového riadka NETDOM.
-
Ak ste zmenili EnableTGTDelegationÁno, odstráňte lístkov Kerberos na pôvodné a stredne volajúci podľa potreby. Príslušné lístok odstrániť je postúpenie klienta TGT v príslušných dôveryhodnosti. To môže zahŕňať viacero zariadení, v závislosti od počtu delegovanie skokov v danom prostredí.
Ďalšie informácie o tomto postupe nájdete v nasledujúcom článku Windows IT Pro centrum:
Ochrana odvodený domény poverenia s Windows Defender poverení kryt
Časová os aktualizácie
12. marca 2019
Výkon na hranici lesa Kerberos úplnú delegovanie budú k dispozícii ako aktualizácia na túto funkciu na všetky podporované verzie systému Windows Server, ktoré sú uvedené v časti vzťahuje sa na začiatku tohto článku. Odporúča nastaviť funkciu na prichádzajúce lesa dôveryhodnosti.
Aktualizácia pridá funkcia výkon lesa hranica úplnú delegovanie modulu Kerberos nasledujúce systémy:
-
Windows Server 2008 R2
-
Windows Server 2008
14. mája 2019
Pridanie novej bezpečné predvolené konfigurácie nového lesa a externé dôveryhodnosti bola vydaná aktualizácia. Ak požadujete delegovanie cez fondy, EnableTGTDelegation príznak nastavená na Áno pred inštaláciou aktualizácie 9 júla 2019. Ak nepotrebujete delegovanie cez fondov, nie nastavte EnableTGTDelegation príznak. Príznak EnableTGTDelegation sa bude ignorovať, kým je nainštalovaná aktualizácia 9 júla 2019, aby správcovia čas zapnúť neobmedzený delegovanie modulu Kerberos, ak je to potrebné.
Ako súčasť tejto aktualizácie pre všetky novovytvorené dôveryhodnosti predvolene EnableTGTDelegation príznak nastaví č . Toto je naopak predchádzajúceho správania. Odporúčame, aby správcovia namiesto konfiguráciu služieb používať založeného delegovanie obmedzené.
Ďalšie informácie o zistenie problémov s kompatibilitou nájdete nájsť služby, ktoré spoliehajú na neobmedzený delegovanie.
9. júla 2019
Bola vydaná aktualizácia, ktorá vynúti nové predvolené správanie na strane prichádzajúcej lesa a externé dôveryhodnosti. Požiadavky na overenie pre služby, ktoré používajú neobmedzený delegovanie za dôveryhodný uvedené typy bude overený bez delegovanie. Služba zlyhá pri pokuse o spustenie delegované operácie.
Zníženie, nájdete v časti "riešenie".
Vyhľadanie služby, ktoré využívajú neobmedzený delegovanie
Vyhľadať lesov, ktoré prichádzajúce fondov, ktoré umožňujú TGT delegovanie, a nájsť všetky bezpečnostné princípy, ktoré umožňujú neobmedzený delegovanie nasledujúce PowerShell skriptov skript súboru (napríklad Get-RiskyServiceAccountsByTrust.ps1- Získajte):
Poznámka
Môžete tiež prejsť - ScanAll príznak Prehľadávať fondov, ktoré neumožňujú TGT delegovanie.
[CmdletBinding()]
Param
(
[switch]$Collect,
[switch]$ScanAll
)
if ($Debug) {
$DebugPreference = 'Continue'
}
else {
$DebugPreference = 'SilentlyContinue'
}
function Get-AdTrustsAtRisk
{
[CmdletBinding()]
Param
(
[string]$Direction = "Inbound",
[switch]$ScanAll
)
if ($ScanAll) {
return get-adtrust -filter {Direction -eq $Direction}
}
else {
return get-adtrust -filter {Direction -eq $Direction -and TGTDelegation -eq $false}
}
}
function Get-ServiceAccountsAtRisk
{
[CmdletBinding()]
Param
(
[string]$DN = (Get-ADDomain).DistinguishedName,
[string]$Server = (Get-ADDomain).Name
)
Write-Debug "Searching $DN via $Server"
$SERVER_TRUST_ACCOUNT = 0x2000
$TRUSTED_FOR_DELEGATION = 0x80000
$TRUSTED_TO_AUTH_FOR_DELEGATION= 0x1000000
$PARTIAL_SECRETS_ACCOUNT = 0x4000000
$bitmask = $TRUSTED_FOR_DELEGATION -bor $TRUSTED_TO_AUTH_FOR_DELEGATION -bor $PARTIAL_SECRETS_ACCOUNT
$filter = @"
(&
(servicePrincipalname=*)
(|
(msDS-AllowedToActOnBehalfOfOtherIdentity=*)
(msDS-AllowedToDelegateTo=*)
(UserAccountControl:1.2.840.113556.1.4.804:=$bitmask)
)
(|
(objectcategory=computer)
(objectcategory=person)
(objectcategory=msDS-GroupManagedServiceAccount)
(objectcategory=msDS-ManagedServiceAccount)
)
)
"@ -replace "[\s\n]", ''
$propertylist = @(
"servicePrincipalname",
"useraccountcontrol",
"samaccountname",
"msDS-AllowedToDelegateTo",
"msDS-AllowedToActOnBehalfOfOtherIdentity"
)
$riskyAccounts = @()
try {
$accounts = Get-ADObject -LDAPFilter $filter -SearchBase $DN -SearchScope Subtree -Properties $propertylist -Server $Server
}
catch {
Write-Warning "Failed to query $Server. Consider investigating seperately. $($_.Exception.Message)"
}
foreach ($account in $accounts) {
$isDC = ($account.useraccountcontrol -band $SERVER_TRUST_ACCOUNT) -ne 0
$fullDelegation = ($account.useraccountcontrol -band $TRUSTED_FOR_DELEGATION) -ne 0
$constrainedDelegation = ($account.'msDS-AllowedToDelegateTo').count -gt 0
$isRODC = ($account.useraccountcontrol -band $PARTIAL_SECRETS_ACCOUNT) -ne 0
$resourceDelegation = $account.'msDS-AllowedToActOnBehalfOfOtherIdentity' -ne $null
$acct = [PSCustomobject] @{
domain = $Server
sAMAccountName = $account.samaccountname
objectClass = $account.objectclass
isDC = $isDC
isRODC = $isRODC
fullDelegation = $fullDelegation
constrainedDelegation = $constrainedDelegation
resourceDelegation = $resourceDelegation
}
if ($fullDelegation) {
$riskyAccounts += $acct
}
}
return $riskyAccounts
}
function Get-RiskyServiceAccountsByTrust
{
[CmdletBinding()]
Param
(
[switch]$ScanAll
)
$riskyAccounts = @()
$trustTypes = $("Inbound", "Bidirectional")
foreach ($type in $trustTypes) {
$riskyTrusts = Get-AdTrustsAtRisk -Direction $type -ScanAll:$ScanAll
foreach ($trust in $riskyTrusts) {
$domain = $null
try {
$domain = Get-AdDomain $trust.Name -ErrorVariable eatError -ErrorAction Ignore
} catch {
write-debug $_.Exception.Message
}
if($eatError -ne $null) {
Write-Warning "Couldn't find domain: $($trust.Name)"
}
if ($domain -ne $null) {
$accts = Get-ServiceAccountsAtRisk -DN $domain.DistinguishedName -Server $domain.DNSRoot
foreach ($acct in $accts) {
Write-Debug "Risky: $($acct.sAMAccountName) in $($acct.domain)"
}
$risky = [PSCustomobject] @{
Domain = $trust.Name
Accounts = $accts
}
$riskyAccounts += $risky
}
}
}
return $riskyAccounts
}
if ($Collect) {
Get-RiskyServiceAccountsByTrust -ScanAll:$ScanAll | Select-Object -expandProperty Accounts | format-table
}
Výstup PowerShell skriptov zoznam objektov zabezpečenia služby Active Directory domén, ktoré sú konfigurované pre prichádzajúce dôvery vykonávajúceho doménu, ktorá má nenútená delegovanie nakonfigurovaný. Výstup bude podobať na nasledujúci príklad.
doména |
sAMAccountName |
triedy objectClass |
partner.fabrikam.com |
nebezpečné |
používateľ |
partner.fabrikam.com |
labsrv$ |
počítača |
Zisťovanie neobmedzený delegovanie udalostí v systéme Windows
Pri vydaní lístok modulu Kerberos k radiču domény služby Active Directory zaznamená nasledujúce udalosti zabezpečenia. Udalosti obsahujú informácie o cieľovej domény. Udalosti môžete zistiť, či sa používa neobmedzený delegovanie cez prichádzajúce fondy.
Poznámka
Vyhľadanie udalostí, ktoré obsahujú hodnotu TargetDomainName , ktorá sa zhoduje s názvom dôveryhodnej domény.
Denník udalostí |
Zdroj udalosti |
Identifikácia udalosti |
Podrobnosti |
Zabezpečenie |
Microsoft-Windows-Security-Auditing |
4768 |
Bola vydaná Kerberos TGT. |
Zabezpečenie |
Microsoft-Windows-Security-Auditing |
4769 |
Bola vydaná lístok modulu Kerberos služby. |
Zabezpečenie |
Microsoft-Windows-Security-Auditing |
4770 |
Lístok modulu Kerberos služby bolo obnovené. |
Riešenie problémov s zlyhania overenia
Po vypnutí neobmedzený delegovanie aplikácie môžu mať problémy s kompatibilitou s týmito zmenami, ak neobmedzený delegovanie aplikácie. Tieto aplikácie by mal byť nakonfigurovaný na používanie obmedzené delegovanie alebo delegovanie, ktorá je prostriedok. FĎalšie informácie, see Kerberos obmedzené delegovanie prehľad.
Aplikácie týchto overovania cez fondy nie sú podporované prostredníctvom delegovanie obmedzené. Napríklad delegácia zlyhá, ak používateľ v lese sa overuje aplikácie lesa B a v lese B sa pokúša preniesť lístok späť do lesa A.