Logige sisse Microsofti kontoga
Logige sisse või looge konto.
Tere!
Valige mõni muu konto.
Teil on mitu kontot
Valige konto, millega soovite sisse logida.

Kokkuvõte

Metsa trusts ette viis ressursside Active Directory metsa teise metsa identiteeti usaldada. See usaldus saab konfigureerida mõlemas suunas. Usaldatav mets on kasutajate allikas. Usaldavad metsa sisaldab abivahend, mis kasutajate autentimiseks. Usaldatav mets saab autentida kasutajad usaldavad metsa ilma tagurpidi tekkida.

Sundimatu Kerberose delegeerimine on mehhanism, mille kasutaja saadab oma mandaadi teenuse võimaldavad juurdepääsu ressurssidele kasutaja nimel. Sundimatu Kerberose delegeerimine lubamiseks peate teenusekonto Active Directory märgitud kui usaldusväärne delegeerimine. See tekitab probleemi, kui kasutaja ja teenuse kuuluvad erinevate metsade. Teenuse metsa vastutab võimaldab delegeerimine. Delegeerimine sisaldab kasutajate metsa kasutaja mandaate.

Võimaldab ühe metsa turvalisuse otsuseid, mis mõjutab teise metsa kontod rikub turvalisuse piiri metsade vahel. Ründaja, usaldavad metsa omanikust saab taotleda TGT identiteedi delegeerimine usaldatav mets annab juurdepääsu ressurssidele usaldatav mets. See ei kehti Kerberose piiratud delegeerimine (KCD).

Windows Serveri 2012 tuua jõustamise Kerberose täielik delegeerimine metsa piiri. See funktsioon on poliitika usaldusväärsest domeenist keelata sundimatu delegeerimine usalduse kohta eraldi. Vaikesäte see funktsioon võimaldab sundimatu delegeerimine ja ohtlik.

Turvalisuse tugevdamise pakuvad on olemas Windows Serveri järgmiste versioonide puhul:

  • Windows Serveri 2019

  • Windows Server 2016

  • Windows Server 2012 R2

  • Windows Server 2012

See funktsioon koos turbe täiustamine muutused olid backported järgmiste versioonide:

  • Windows Server 2008 R2

  • Windows Server 2008

Nende turvavärskenduste järgmised muudatused:

  • Uus metsa ja uue välise Trust vaikimisi keelatud sundimatu Kerberose delegeeriminepärast installimistmai 14 update ja uuemad värskendused.

  • Sundimatu Kerberose delegeerimine on keelatud metsa (uute ja olemasolevate) ja välise Trust pärast installimist on juuli 9, 2019 update ja uuemad värskendused.

  • Administraatorid lubada sundimatu Kerberose delegeerimine mai abil või NETDOM ja AD PowerShelli moodul uuemad versioonid.

Värskendused võivad põhjustada ühilduvuse konflikte rakendusi, mis nõuavad praegu sundimatu delegeerimine kogu metsas või välise Trust. See kehtib eriti välise trust, mille karantiini lipu (tuntud ka kui SID filtreerimine) on vaikimisi lubatud. Täpsemalt teenused, mis kasutavad sundimatu delegeerimine loetletud trust tüübid nurjuvad uute piletite tellimisel.

Avaldamise kuupäevad leiate värskendab ajaskaala.

Lahendus

Andmete ja konto turvalisus pakub Windows Serveri versiooni, mis on metsa piiri Kerberose täielik delegeerimine jõustamise funktsiooni, võib blokeerida TGT delegeerimine pärast märtsi 2019 värskenduste installimist üle sissetuleva trust määrates selle Netdom lipu EnableTGTDelegationNo järgmiselt:

netdom.exe trust fabrikam.com /domain:contoso.com /EnableTGTDelegation:No

TGT delegeerimine on blokeeritud uue ja olemasoleva metsa ja välise Trust pärast installimist Mai ja juuli 2019 värskendab vastavalt.

Lubage kogu trusts delegeerimine ja naasta ebaturvaliste algse konfiguratsiooni kuni piiratud või ressursi delegeerimine saab lubatud, seadke EnableTGTDelegation lipu Jah.

NETDOM käsurea lubamiseks TGT delegeerimine on järgmine:

netdom trust <TrustedDomainName > /domain:<TrustingDomainName > /EnableTgtDelegation:Yes

Olemuselt Mõelge NETDOM süntaks lubamine TGT delegeerimine järgmiselt:

netdom trust <domain that you are administering> /domain:<domain whose trust NETDOM is modifying> /EnableTgtDelegation:Yes

Lubamiseks TGT delegeerimine fabrakam.com kasutajate contoso.com serverites NETDOM süntaks on järgmine:

netdom.exe trust fabrikam.com /domain:contoso.com /EnableTGTDelegation:Yes

Märkused

  • EnableTGTDelegation lipu seadma usaldusväärses domeenis (antud juhul Fabricam.com) iga usaldavad domeeni (nt contoso.com). Pärast seda, kui seatakse lipu, luba usaldusväärsest domeenist enam usaldavad domeeni delegeeritud TGTs eluiga.

  • EnableTGTDelegation turvaline olek pole.

  • Rakendus või teenus, mis sõltub sundimatu delegeerimine metsade vahel nurjub, kui EnableTGTDelegation on käsitsi või automaatselt määratud Jah. EnableTGTDelegation vaikeväärtus on NO sisse uue ja olemasoleva hooldus pärast mai 2019 ja juuli 2019 värskendusi installida. Tuvastada selle tõrke kohta lisateabe saamiseks vaadake teenused, mis sõltuvad sundimatu delegeerimine leida. Vaadake värskenduste ajaskaala ajaskaala muudatusi, mis mõjutavad seda, kuidas seda lahendust saab rakendada.

  • Lugege lisateavet NETDOM Netdom.exe dokumentatsiooni.

  • Kui peate lubama TGT delegeerimine usalduse kohta, on soovitatav seda riski vähendamiseks, lubades Windows Defenderi mandaatide valvur klientarvutite. See hoiab kõik sundimatu delegeerimine arvutist, millel on Windows Defender mandaatide valvur lubatud ja töötab.

  • Kui teil on metsa või välise trust ja kas on konfigureeritud karantiini, ei saa lubada TGT delegeerimine, kuna kaks lipud on vastupidise semantika. Karantiini bit tugevdab turvalisuse piiri osalevad domeenide vahel. Lubamine TGT delegeerimine kustutab turvalisuse piirid, võimaldab kasutajatel mandaatide usaldavad domeeni juurdepääsu usaldusväärsest domeenist domeenide vahel. Te ei saa olla nii moodi.

    Karantiin: no lipu lisada NETDOM Käsureasüntaks karantiini lipp on praegu lubatud.

  • Kui olete muutnud EnableTGTDelegationJah, kustutage Kerberose piletit pärinevaid ja kesktasemel helistades vastavalt vajadusele. Vastava pileti kustutamiseks on kliendi viide TGT kogu vajalikku usalduse. See võib hõlmata rohkem kui üks seade, sõltuvalt konkreetses keskkonnas delegeerimine hüpete arvu.

Selle toimingu kohta lisateabe saamiseks lugege Windows IT Pro Center järgmist artiklit:

Tuletatud domeeni mandaate Windows Defenderi mandaatide valvur kaitse

Värskenduste ajaskaala

12. märtsil 2019

Jõustamise eest metsa piir Kerberose täielik delegeerimine on saadaval värskendus kõigi toetatud versioonid Windows Server jaotises kehtib käesoleva artikli alguses loetletud selle funktsiooni. Soovitame määrata sissetuleva metsa trusts funktsiooni.

Värskendus lisab funktsiooni täitmise metsa piiri Kerberose täielik delegeerimine järgmistesse süsteemidesse:

  • Windows Server 2008 R2

  • Windows Server 2008

14. mai 2019

Värskendus anti välja mõne uue ohutu vaikimisi konfiguratsioon Uus metsa ja välise Trust lisamine. Kui vajate delegeerimine kogu Trust, EnableTGTDelegation lipu tuleks seada Jah enne 9 juuli 2019 värskenduse installimist. Kui te ei vaja delegeerimine kogu Trust, tuleks EnableTGTDelegation lippu ei määra. EnableTGTDelegation lipu ignoreeritakse kuni 9 juuli 2019 värskenduse installimist administraatoritel lubage sundimatu Kerberose delegeerimine, kui see on vajalik aega anda.

Selle värskenduse osana seatakse EnableTGTDelegation lippu ei kuvata vaikimisi ühtegi vastloodud Trust. See on varasema käitumise vastupidist. Me soovitame, et administraatorid konfigureerima selle asemel mõjutatud teenuseid kasutada ressurssi vastavalt piiratud delegeerimine.

Ühilduvusprobleemide tuvastamiseks kohta lisateabe saamiseks vaadake leida teenused, mis sõltuvad sundimatu delegeerimine.

9. juuli 2019

Värskendus anti välja mis jõustab uue vaikekäitumise metsa ja välise Trust sissetuleva poolel. Autentimine nõuab teenused, mis kasutavad sundimatu delegeerimine üle loetletud trust tüübid on autentimisega, kuid ilma delegeerimine. Teenus ei õnnestu, üritab delegeeritud operatsioonide.

Leevendamine, lugege jaotise "vastukaal".

Leida teenused, mis sõltuvad sundimatu delegeerimine

Otsige metsades, mis on sissetuleva usub, et võimaldada TGT delegeerimine ja luba sundimatu, mis tahes turvalisuse leidmiseks käivitage järgmine PowerShelli skriptide skripti faili (näiteks Get-RiskyServiceAccountsByTrust.ps1- Kogutud):

Märkus.

Samuti ei liigu - ScanAll lipu Trust, mis ei luba TGT otsimiseks.


[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 
}

PowerShelli skriptide väljund loendis Active Directory domeenid, mis on konfigureeritud sissetuleva Trust täidesaatva domeeni, mis on konfigureeritud delegeerimine sundimatu turbepõhimõtete. Väljund sarnaneb järgmises näites.

Domeen

sAMAccountName

Objektiklassi

partner.fabrikam.com

ohtlike

kasutaja

partner.fabrikam.com

labsrv$

arvuti

Sundimatu delegeerimine kaudu Windowsi sündmuste tuvastamine

Kerberose pileti välja logib Active Directory domeenikontrolleri järgmised turvalisusega seotud üritused. Sündmused sisaldavad teavet target domeeni. Sündmuste abil saate määratleda, kas sundimatu delegeerimine kasutab sissetuleva trusts üle.

Märkus.

Kontrollige sündmuste kohta, mis on TargetDomainName väärtus, mis vastab usaldusväärse domeeni nimi.

Sündmuste logi

Sündmuse allikas

Sündmuse ID

Üksikasjad

Turvalisus

Windows Microsoft Security Auditing

4768

Kerberose TGT väljastati.

Turvalisus

Windows Microsoft Security Auditing

4769

Teenuse Kerberose pilet on välja antud.

Turvalisus

Windows Microsoft Security Auditing

4770

Teenuse Kerberose pilet taastatakse.

Autentimise tõrgete tõrkeotsing

Sundimatu delegeerimine on keelatud, võivad rakendused on ühilduvusprobleeme, need muudatused kui rakendused sõltuvad sundimatu delegeerimine. Need rakendused peaksid olema konfigureeritud kasutamine piiratud delegeerimine või piiratud delegeerimine, mis põhineb ressursi. Fvõi rohkem teavet, see .Kerberose piiratud delegeerimine ülevaade

Rakendusi, mis sõltuvad edasi autentimist üle trusts, kasutades piiratud delegeerimine ei toetata. Näiteks on delegeerimine nurjub, kui rakenduse metsa b kontrollib kasutaja metsa a ja metsa b rakendus üritab delegeerida pilet tagasi metsa A.

Kas vajate veel abi?

Kas soovite rohkem valikuvariante?

Siin saate tutvuda tellimusega kaasnevate eelistega, sirvida koolituskursusi, õppida seadet kaitsma ja teha veel palju muud.

Kogukonnad aitavad teil küsimusi esitada ja neile vastuseid saada, anda tagasisidet ja saada nõu rikkalike teadmistega asjatundjatelt.

Kas sellest teabest oli abi?

Kui rahul te keelekvaliteediga olete?
Mis mõjutas teie hinnangut?
Kui klõpsate nuppu Edasta, kasutatakse teie tagasisidet Microsofti toodete ja teenuste täiustamiseks. IT-administraator saab neid andmeid koguda. Privaatsusavaldus.

Täname tagasiside eest!

×