Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: Configuration Manager (Current Branch)
È responsabilità dell'amministratore convalidare l'utilizzo proposto di PowerShell e dei parametri di PowerShell nel proprio ambiente. Ecco alcune risorse utili per informare gli amministratori sulle potenzialità di PowerShell e sulle potenziali superfici di rischio. Queste indicazioni consentono di ridurre le potenziali superfici di rischio e consentire l'uso di script sicuri.
Sicurezza degli script di PowerShell
La funzionalità degli script di Configuration Manager consente di rivedere e approvare visivamente gli script. Un altro amministratore può richiedere che il proprio script sia consentito. Gli amministratori devono essere consapevoli che gli script di PowerShell possono avere script offuscati. Uno script offuscato potrebbe risultare dannoso e difficile da rilevare con un controllo visivo durante il processo di approvazione dello script. Esaminare visivamente gli script di PowerShell e usare gli strumenti di ispezione per rilevare problemi di script sospetti. Questi strumenti non sono sempre in grado di determinare la finalità dell'autore di PowerShell, quindi possono attirare l'attenzione su uno script sospetto. Tuttavia, gli strumenti richiederanno all'amministratore di giudicare se si tratta di una sintassi di script dannosa o intenzionale.
Consigli
- Acquisire familiarità con le indicazioni di sicurezza di PowerShell usando i vari collegamenti di seguito.
- Firma i tuoi script: un altro metodo per proteggere gli script consiste nel verificarli e quindi firmarli prima di importarli per l'utilizzo.
- Non archiviare segreti (ad esempio password) negli script di PowerShell e leggere altre informazioni su come gestirli.
Informazioni generali sulla sicurezza di PowerShell
Questa raccolta di collegamenti è stata scelta per fornire agli amministratori di Configuration Manager un punto di partenza per conoscere le raccomandazioni di sicurezza per gli script di PowerShell.
Protezione dagli attacchi di PowerShell
Protezione dall'iniezione di codice dannoso
API per l'interfaccia di analisi antimalware
Sicurezza dei parametri di PowerShell
Il passaggio di parametri è un modo per avere flessibilità con gli script e rinviare le decisioni fino al momento del runtime. Apre anche un'altra superficie di rischio.
L'elenco seguente include consigli per impedire l'inserimento di parametri dannosi o di script:
- Consente solo l'utilizzo di parametri predefiniti.
- Usare la funzionalità delle espressioni regolari per convalidare i parametri consentiti.
- Esempio: se è consentito solo un determinato intervallo di valori, usare un'espressione regolare per verificare solo i caratteri o i valori che possono costituire l'intervallo.
- La convalida dei parametri può aiutare a impedire agli utenti di provare a usare determinati caratteri che possono essere preceduti da escape, come le virgolette. Ci possono essere più tipi di virgolette, quindi usare espressioni regolari per convalidare i caratteri che hai deciso sono ammissibili è spesso più facile che provare a definire tutti gli input non consentiti.
- Usare il modulo PowerShell "injection hunter" in PowerShell Gallery.
- Possono esserci falsi positivi, quindi cerca l'intenzione quando qualcosa viene contrassegnato come sospetto per determinare se si tratta di un problema reale o meno.
- Microsoft Visual Studio dispone di un analizzatore di script che può aiutare a controllare la sintassi di PowerShell.
Il seguente video intitolato: "DEF CON 25 - Lee Holmes - Get $pwnd: Attacking Battle Hardened Windows Server" fornisce una panoramica dei tipi di problemi da cui è possibile proteggersi (in particolare la sezione dalle 12:20 alle 17:50):
Suggerimenti per l'ambiente
L'elenco seguente include raccomandazioni generali per gli amministratori di PowerShell:
- Distribuire la versione più recente di PowerShell, ad esempio la versione 5 o successiva, integrata in Windows 10 o versione successiva. Puoi anche distribuire Windows Management Framework.
- Abilitare e raccogliere i log di PowerShell, inclusa facoltativamente la registrazione degli eventi protetti. Incorporare questi log nei flussi di lavoro di firma, ricerca e risposta agli incidenti.
- Implementare Just Enough Administration su sistemi ad alto valore per eliminare o ridurre l'accesso amministrativo non vincolato a tali sistemi.
- Distribuisci i criteri di Controllo delle applicazioni di Windows Defender per consentire alle attività amministrative pre-approvate di utilizzare tutte le funzionalità del linguaggio PowerShell, limitando al contempo l'uso interattivo e non approvato a un sottoinsieme limitato del linguaggio PowerShell.
- Distribuisci Windows 10 o versione successiva per concedere al provider antivirus l'accesso completo a tutto il contenuto (incluso il contenuto generato o de-offuscato in fase di esecuzione) elaborato dagli host di scripting di Windows, incluso PowerShell.