Magic Quadrant™ per la gestione degli accessi privilegiati 2025: Netwrix riconosciuta per il quarto anno consecutivo. Scarica il report.

Piattaforma
Centro risorseBlog
Cos'è Microsoft LAPS: Come puoi migliorarne la sicurezza?

Cos'è Microsoft LAPS: Come puoi migliorarne la sicurezza?

Aug 25, 2021

Microsoft Local Administrator Password Solution (LAPS) consente alle organizzazioni di gestire le password dell'Amministratore locale su tutti i loro endpoint. Quando implementata correttamente, è un modo efficace per prevenire alcuni tipi di potenziale movimento laterale e privilege escalation all'interno del proprio ambiente — ma quando implementata in modo errato, può creare una grande apertura per gli attaccanti.

Questo articolo spiega cos'è LAPS e come implementarlo, nonché come utilizzare Netwrix Privilege Secure per superare le sue intrinseche lacune di sicurezza.

Cos'è Microsoft LAPS?

Microsoft LAPS è un gestore di password che utilizza Active Directory per gestire e ruotare le password degli account Amministratore locali su tutti i tuoi endpoint Windows. Assicurando che tutti gli account Amministratore locali abbiano password uniche e complesse, LAPS aiuta a mitigare il rischio di movimento laterale e escalation dei privilegi: un attaccante che compromette un account Amministratore locale non può spostarsi lateralmente ad altri endpoint semplicemente utilizzando la stessa password.

Un vantaggio rispetto ad altri gestori di password è che LAPS non richiede computer aggiuntivi per gestire queste password; viene fatto interamente tramite i componenti di Active Directory. Inoltre, puoi download e usare LAPS gratuitamente.

Configurazione di Microsoft LAPS

Per configurare LAPS nel tuo ambiente, segui i passaggi dettagliati nella guida (LAPS_OperationsGuide.docx) inclusa nel download. Qui, illustrerò alcuni di questi passaggi ad alto livello.

Installazione di LAPS sui tuoi endpoint

Quando si installa LAPS su un endpoint, vengono installati i seguenti componenti:

  • Interfaccia utente di tipo fat client
  • Modulo PowerShell
  • Modelli di Group Policy
  • Estensione GPO di AdmPwd

Mentre le console di gestione necessitano di una o più di queste funzionalità, gli endpoint da governare tramite LAPS richiedono solo l'estensione GPO AdmPwd. La Guida alle Operazioni offre alcuni metodi per distribuire questo componente ai tuoi endpoint.

Estendere lo schema del tuo Active Directory per accomodare LAPS

Microsoft fornisce un modulo PowerShell per aiutarti in questa fase. Aggiunge due attributi del computer allo schema:

  • ms-Mcs-AdmPwd — Memorizza la password dell'amministratore locale per l'oggetto computer in chiaro (spaventoso, lo so, ma approfondirò questo aspetto più tardi)
  • ms-Mcs-AdmPwdExpirationTime — Memorizza il momento in cui la password scade

Una volta esteso lo schema, puoi utilizzare Group Policy per distribuire la configurazione di LAPS a tutti i tuoi server membri. Quindi, usa l'editor Group Policy Management per configurare il nuovo oggetto Group Policy (GPO) di LAPS:

Image

Il GPO LAPS include le seguenti impostazioni:

  • Impostazioni della password — Consente di specificare i requisiti di complessità per le password degli account Amministratore locali, inclusi lunghezza ed età
Image
  • Abilita la gestione della password dell'amministratore locale — Determina se gli endpoint governati dal GPO sono gestiti da LAPS
  • Nome dell'account amministratore per gestire — Consente di gestire la password per gli account amministratori locali non predefiniti (ovvero, account locali non denominati ‘Administrator’)
  • Non consentire un tempo di scadenza della password più lungo di quanto richiesto dalla policy — Consente di assicurare che nessuna scadenza della password superi l'impostazione ‘Password Age (Days)’ nelle Password Settings

Assicurarsi che LAPS sia sicuro

Dopo aver esteso lo schema del tuo AD, il passo successivo è assicurarsi che i permessi per questi nuovi attributi siano applicati correttamente. Questo è uno dei passaggi più importanti del processo, poiché vuoi concedere l'accesso solo agli oggetti che ne hanno bisogno. Microsoft fornisce script PowerShell per verificare chi attualmente ha accesso all'attributo e per applicare nuovi permessi se necessario.

Ad alto livello, ci sono alcune considerazioni da tenere a mente qui:

  • Rimuovi il permesso 'All extended rights' da utenti e gruppi sugli oggetti computer che non dovrebbero essere in grado di visualizzare la password degli account Amministratore locali (ricorda che è memorizzata in chiaro in un attributo).
  • Il principale 'SELF' richiede la capacità di scrivere gli attributi 'ms-Mcs-AdmPwdExpirationTime' e 'ms-Mcs-AdmPwd' in modo che possa aggiornare le password e i tempi di scadenza quando una password scade. L'ACE per 'SELF' è richiesto su tutti gli oggetti computer governati da LAPS.
  • Gli utenti e i gruppi che hanno il permesso di reimpostare le password sugli account Amministratore locali devono avere l'accesso agli attributi su tali oggetti computer.

Ecco uno script che ti aiuterà a capire chi ha accesso a questi attributi oggi.

      <#
Author: Kevin Joyce

Requirements: Active Directory PowerShell module, Domain Administrator privileges (to ensure the capability to get attribute GUIDs and view all permissions on all computer objects)

Description: Looks up permissions within Active Directory on a target (OU or Computer) to determine access to LAPS attributes (ms-Mcs-AdmPwdExpirationTime and ms-Mcs-AdmPwd).

Usage: Populate the $target variable with the DN of a computer object, or OU to search for computer objects within.

To output the results to a text file run the following .LAPS_Permissions_Collection.ps1 > output.txt
<#

Import-Module ActiveDirectory
##Get the GUID of the extended attributes ms-Mcs-AdmPwdExpirationTime and ms-Mcs-AdmPwd from Schema
$schemaIDGUID = @{}
Get-ADObject -SearchBase (Get-ADRootDSE).schemaNamingContext -LDAPFilter '(|(name=ms-Mcs-AdmPwdExpirationTime)(name=ms-Mcs-AdmPwd))' -Properties name, schemaIDGUID |
ForEach-Object {$schemaIDGUID.add([System.GUID]$_.schemaIDGUID,$_.name)}

<# **REPLACE DN VARIABLE BELOW**
Declare the distinguishedName of the Computer object directly or OU to search for computers within#>
$target = 'CN=Computers,DC=COMPANY,DC=NET'

##Get distinguished name of all Computer objects from the OU or of the target itself
$computers = Get-ADComputer -SearchBase $target -Filter {name -like '*'}


<#Get objects that have specific permissions on the target(s):

Full Control(GenericAll)
Read All Properties(GenericRead)
Write all Properties (WriteProperty where ObjectType = 00000000-0000-0000-0000-000000000000 

#>
Set-Location ad:
foreach ($computer in $computers){
(Get-Acl $computer.distinguishedname).access |
Where-Object { (($_.AccessControlType -eq 'Allow') -and ($_.activedirectoryrights -in ('GenericRead','GenericAll') -and $_.inheritancetype -in ('All', 'None')) -or (($_.activedirectoryrights -like '*WriteProperty*')-or ($_.activedirectoryrights -like '*GenericRead*') -and ($_.objecttype -eq '00000000-0000-0000-0000-000000000000')))} |
ft ([string]$computer.name),identityreference, activedirectoryrights, objecttype, isinherited -autosize
}
<#Get objects that have specific permissions on the target(s) and specifically the LAPS attributes:

WriteProperty
ReadProperty
#>
Set-Location ad:
foreach ($computer in $computers){
(Get-Acl $computer.distinguishedname).access |
Where-Object {(($_.AccessControlType -eq 'Allow') -and (($_.activedirectoryrights -like '*WriteProperty*') -or ($_.activedirectoryrights -like '*ReadProperty*')) -and ($_.objecttype -in $schemaIDGUID.Keys))} |
ft ([string]$computer.name),identityreference, activedirectoryrights, objecttype, isinherited -AutoSize
}
      

Suggerimento di sicurezza: Oltre a bloccare questi due attributi LAPS tramite permessi, è anche consigliabile monitorare il traffico LDAP sugli attributi, in modo da poter individuare gli attaccanti che li interrogano quando i permessi configurati in modo errato lo consentono. StealthDEFEND for Active Directory può fornire allarmi in tempo reale sul traffico LDAP contro questi attributi.

Vedere LAPS in azione

Ci sono alcuni modi per ottenere la password dell'Amministratore locale corrente per un particolare endpoint tramite LAPS, ma il modo più semplice è utilizzare l'interfaccia grafica. Basta inserire un nome computer e mostrerà la password dell'Amministratore locale in chiaro insieme alla sua data di scadenza, che puoi modificare.

Image

In alternativa, puoi ottenere queste informazioni utilizzando PowerShell:

Image

Superare le lacune di sicurezza in Microsoft LAPS con Netwrix Privilege Secure

Microsoft LAPS è una soluzione potente per la gestione delle password dell'Amministratore locale su tutti i tuoi endpoint. Quando viene implementato correttamente, è un modo efficace per prevenire alcune forme di potenziale movimento laterale o escalation dei privilegi. Sfortunatamente, tuttavia, quando non viene implementato correttamente, può creare un'apertura molto grande per gli attaccanti.

Le lacune di sicurezza di LAPS includono le seguenti:

  • L'interfaccia datata
  • LAPS non supporta l'autenticazione e l'autorizzazione avanzate.
  • LAPS non fornisce just-in-time access, quindi gli account Amministratori sono sempre vulnerabili all'acquisizione da parte degli aggressori.
  • Non c'è un reset forzato della password dopo l'accesso, il che permette agli attaccanti di utilizzare una password rubata.
  • Gli utenti devono sempre conoscere la password dell'account, il che comporta problemi sia logistici che di sicurezza.

È possibile eliminare queste lacune di sicurezza utilizzando Netwrix Privilege Secure . Questa Privileged Access Management (PAM) solution migliora LAPS aggiungendo funzionalità come l'approvazione multi-livello, l'accesso programmato e just-in-time, la rotazione forzata della password, l'esposizione controllata della password e la registrazione e riproduzione delle sessioni.

Altri vantaggi di Netwrix Privilege Secure

La maggior parte delle soluzioni Privileged Access Management si concentra esclusivamente sul limitare l'accesso a account altamente privilegiati come Domain Admin e Administrator del server locale. Sebbene questo approccio fornisca agli amministratori accesso giusto in tempo, tutti gli account potenti rimangono disponibili — e quindi vulnerabili — anche quando non sono in uso.

Netwrix Privilege Secure ti permette di ridurre drasticamente la superficie di attacco eliminando la maggior parte di questi account privilegiati permanenti. Invece, agli amministratori vengono forniti i livelli esatti di diritti necessari per completare un compito, nel momento esatto in cui sono richiesti, e solo per il tempo necessario. Questo approccio ti consente anche di ridurre il numero di persone che devono essere membri dei Domain Admins, diminuendo ulteriormente i rischi per la sicurezza. Inoltre, la soluzione elimina o riduce al minimo gli artefatti che spesso vengono utilizzati per violare gli account.

Condividi su

Scopri di più

Informazioni sull'autore

Asset Not Found

Kevin Joyce

Direttore della Product Management

Direttore di Product Management presso Netwrix. Kevin ha una passione per la sicurezza informatica, in particolare per comprendere le tattiche e le tecniche che gli aggressori utilizzano per sfruttare gli ambienti delle organizzazioni. Con otto anni di esperienza nel product management, concentrandosi su Active Directory e la sicurezza di Windows, ha trasformato quella passione nell'aiutare a costruire soluzioni per le organizzazioni per proteggere le loro identità, infrastrutture e dati.