Quando si parla di cybersecurity, il confine tra conformità e compromesso è spesso sottile. Se lavori nel campo dell’IT, in particolare se sei un professionista IT o fai parte di un Managed Service Provider (MSP), è probabile che tu abbia seguito questa linea per un po’ di tempo. Ammettiamolo: i vecchi cipher come SSL 2.0, SSL 3.0, TLS 1.0 e TLS 1.1 non solo sono obsoleti, ma sono essenzialmente rischi per la cybersecurity in attesa di esplodere. È un problema che deve essere risolto e questo articolo è una guida passo per passo che ti permetterà di disattivare cipher deboli in SSL/TLS e di migliorare la tua sicurezza.
Cosa sono i cipher deboli e perché dovrebbero interessarti?
I cipher deboli sono algoritmi obsoleti utilizzati nella crittografia SSL/TLS che sono suscettibili di attacchi. I criminali informatici potrebbero sfruttare questi collegamenti deboli per compromettere i dati sensibili. Considerato il severo panorama normativo odierno, il mantenimento di questi protocolli obsoleti potrebbe comportare rischi di conformità, per non parlare del danno alla reputazione che potrebbe causare ad un’organizzazione.
Script PowerShell per disattivare cipher deboli in SSL/TLS
Se gestisci un’infrastruttura basata su Windows, PowerShell è il tuo migliore amico. Per coloro che desiderano immergersi subito, lo script riportato di seguito automatizza il processo di disattivazione dei cipher deboli come TLS 1.0, TLS 1.1, SSL 2.0 e SSL 3.0, abilitando invece il più robusto TLS 1.2.
Lo script per disattivare cipher deboli in SSL/TLS
Nota: Lo per disattivare cipher deboli in SSL/TLS script richiede PowerShell 5.1 e privilegi di amministratore per essere eseguito. È compatibile con Windows 10 e Windows Server 2016. Anche se può funzionare su versioni precedenti come Windows 7 o Server 2008 R2, PowerShell 5.1 è un prerequisito.
#Requires -Version 5.1 <# .SYNOPSIS Disables TLS 1.0, TLS 1.1, SSL 2.0, SSL 3.0. Enables TLS 1.2. .DESCRIPTION Disables TLS 1.0, TLS 1.1, SSL 2.0, SSL 3.0. Enables TLS 1.2. .EXAMPLE No Parameters Needed Disables TLS 1.0, TLS 1.1, SSL 2.0, SSL 3.0. Enables TLS 1.2. .EXAMPLE -Restart Disables TLS 1.0, TLS 1.1, SSL 2.0, SSL 3.0. Enables TLS 1.2. Does Restart the computer. .OUTPUTS String[] .NOTES Minimum OS Architecture Supported: Windows 10, Windows Server 2016 Could possibly run on Windows 7 and Server 2008 R2, but PowerShell 5.1 would be required. Release Notes: Initial Release By using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https://www.ninjaone.com/terms-of-use. Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. Warranty Disclaimer: The script is provided “as is” and “as available”, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA). #> [CmdletBinding()] param () begin { function Test-IsElevated { $id = [System.Security.Principal.WindowsIdentity]::GetCurrent() $p = New-Object System.Security.Principal.WindowsPrincipal($id) $p.IsInRole([System.Security.Principal.WindowsBuiltInRole]::Administrator) } } process { if (-not (Test-IsElevated)) { Write-Error -Message "Access Denied. Please run with Administrator privileges." exit 1 } @( [PSCustomObject]@{ Protocol = 'SSL 2.0' Value = 0 Default = 1 } [PSCustomObject]@{ Protocol = 'SSL 3.0' Value = 0 Default = 1 } [PSCustomObject]@{ Protocol = 'TLS 1.0' Value = 0 Default = 1 } [PSCustomObject]@{ Protocol = 'TLS 1.1' Value = 0 Default = 1 } [PSCustomObject]@{ Protocol = 'TLS 1.2' Value = 1 Default = 0 } ) | ForEach-Object { $RegServerBase = "HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols$($_.Protocol)Server" $RegClientBase = "HKLM:SYSTEMCurrentControlSetControlSecurityProvidersSCHANNELProtocols$($_.Protocol)Client" New-Item $RegServerBase -Force -ErrorAction SilentlyContinue | Out-Null New-ItemProperty -Path $RegServerBase -Name 'Enabled' -Value $($_.Value) -PropertyType 'DWord' -Force -ErrorAction SilentlyContinue | Out-Null New-ItemProperty -Path $RegServerBase -Name 'DisabledByDefault' -Value $($_.Default) -PropertyType 'DWord' -Force -ErrorAction SilentlyContinue | Out-Null New-Item $RegClientBase -Force -ErrorAction SilentlyContinue | Out-Null New-ItemProperty -Path $RegClientBase -Name 'Enabled' -Value $($_.Value) -PropertyType 'DWord' -Force -ErrorAction SilentlyContinue | Out-Null New-ItemProperty -Path $RegClientBase -Name 'DisabledByDefault' -Value $($_.Default) -PropertyType 'DWord' -Force -ErrorAction SilentlyContinue | Out-Null $State = if ( $(Get-ItemPropertyValue -Path $RegServerBase -Name 'Enabled') -eq 0 -and $(Get-ItemPropertyValue -Path $RegServerBase -Name 'DisabledByDefault') -eq 1 ) { 'disabled' } else { 'enabled' } Write-Host "$($_.Protocol) has been $State." } Write-Host "Please reboot for settings to take effect." } end {}
Accedi a oltre 700 script nel Dojo di NinjaOne
Caratteristiche principali dello script per disattivare cipher deboli in SSL/TLS
- Verifica la presenza di privilegi amministrativi: Lo script per disattivare cipher deboli in SSL/TLS termina se non viene eseguito con i permessi amministrativi, in modo da salvaguardare l’esecuzione accidentale.
- Modifiche al registro: Lo script apporta modifiche mirate al registro di Windows, in particolare nelle aree che gestiscono i protocolli SSL/TLS, per applicare le impostazioni di sicurezza.
- Ciclo di feedback: Lo script per disattivare cipher deboli in SSL/TLS conferma quali protocolli sono stati abilitati o disabilitati.
- Non sono necessari parametri: L’esecuzione dello script per disattivare cipher deboli in SSL/TLS è semplice. Se si desidera riavviare il computer dopo l’esecuzione dello script, includi il parametro -Restart.
Come possono trarre vantaggio i professionisti IT e gli MSP?
Risparmio di tempo
Per i professionisti IT e gli MSP che gestiscono più sistemi, lo script per disattivare cipher deboli in SSL/TLS è una manna dal cielo. È possibile distribuirlo su più macchine con facilità, risparmiando innumerevoli ore di lavoro.
Conformità
I quadri normativi come PCI DSS richiedono che i cipher deboli siano disattivati. Lo script per disattivare cipher deboli in SSL/TLS offre una soluzione unica per raggiungere la conformità con il minimo sforzo.
Scalabilità
Lo script per disattivare cipher deboli in SSL/TLS può essere incorporato in flussi di lavoro di automazione più ampi, rendendolo uno strumento versatile per scalare le operazioni di sicurezza.
Riduzione dei rischi
Disabilitando i cipher deboli in SSL/TLS, si riducono i rischi di violazione dei dati e di attacchi informatici, migliorando così la sicurezza dell’organizzazione.
Integrazione dello script per disattivare cipher deboli in SSL/TLS con NinjaOne per semplificare le operazioni
Se sei un professionista IT o fai parte di un MSP, è molto probabile che tu conosca già NinjaOne. Le capacità della nostra piattaforma possono andare ben oltre le consuete funzioni di ticketing, patch management e inventario che si possono associare ad un RMM.
Ecco come integrare lo script PowerShell per disattivare cipher deboli in SSL/TLS nella tua configurazione NinjaOne:
Distribuzione centralizzata
NinjaOne offre la distribuzione centralizzata degli script, consentendo di eseguire lo script PowerShell su più endpoint contemporaneamente. Passa alla sezione “Scripting”, carica lo script disattivare cipher deboli in SSL/TLS ed eseguilo sui sistemi che gestisci, il tutto da un’unica dashboard.
Esecuzione programmata
Imposta le pianificazioni all’interno di NinjaOne per eseguire lo script per disattivare cipher deboli in SSL/TLS a orari prestabiliti. Ciò è particolarmente utile per i nuovi dispositivi che si aggiungono alla rete o per applicare periodicamente gli standard di conformità.
Avvisi e monitoraggio
Configura NinjaOne per monitorare le impostazioni del registro di sistema relative ai protocolli SSL/TLS. Qualsiasi deviazione dalle norme stabilite (come l’attivazione di un cipher debole) può far scattare un allarme, consentendo un’azione correttiva immediata.
Reporting
La reportistica completa di NinjaOne consente di convalidare il successo dell’implementazione dello script per disattivare cipher deboli in SSL/TLS. È possibile generare rapporti che confermano la disattivazione dei cipher deboli, il che può essere utile durante le verifiche di conformità.
Considerazioni finali
Se nel 2023 stai ancora usando cipher deboli, consideralo un campanello d’allarme. Utilizza lo script PowerShell di cui sopra per disattivare i cifrari deboli negli ambienti Windows e fare un passo concreto verso il rafforzamento della tua infrastruttura di cybersecurity.
Non useresti una vecchia serratura arrugginita per proteggere un caveau; non usare cipher obsoleti per proteggere i tuoi dati. È ora di modernizzare e proteggere la rete. E se ti chiedi ancora una volta come disattivare cipher deboli in SSL/TLS, ricordati che questo articolo ti è stato d’aiuto.
Esclusione di responsabilità: Testa sempre gli script e le modifiche in un ambiente controllato prima di distribuirli in produzione.