Salta al contenuto

Come posso recuperare le risorse AWS interessate dall'agente CrowdStrike Falcon?

11 minuti di lettura
0

Non riesco a connettermi alle risorse AWS su cui è installato l'agente CrowdStrike Falcon. Desidero risolvere i problemi relativi al recupero delle risorse.

Breve descrizione

Il 19 luglio 2024, alle 04:09 UTC, un aggiornamento dell'agente CrowdStrike Falcon (csagent.sys) ha causato errori di arresto non pianificati o una schermata blu nei dispositivi basati su Windows. Tra i dispositivi interessati, le istanze Amazon Elastic Compute Cloud (Amazon EC2) e i desktop virtuali Amazon WorkSpaces Personal. Il problema ha riguardato solo le istanze Windows di Amazon EC2 e i WorkSpace personali con CrowdStrike installato.

Per ulteriori informazioni, consulta Remediation and Guidance Hub: Channel File 291 Incident (Hub soluzioni e procedure: incidente Channel File 291) sul sito web CrowdStrike.

Spesso, un riavvio dell'istanza o del WorkSpace consente all'agente CrowdStrike Falcon di aggiornarsi correttamente.

Nota: se l'istanza utilizza volumi di archivio dell'istanza, i dati archiviati nei volumi non persistono quando arresti, iberni o termini l'istanza. Quando arresti, iberni o termini l'istanza, il volume di archivio dell'istanza viene cancellato crittograficamente. Per ulteriori informazioni, consulta Archivio dell'istanza: archiviazione a blocchi temporanea per istanze EC2.

Risoluzione

Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Se un riavvio non ripristina l’integrità dell'istanza, utilizza il runbook di Automazione AWS Systems Manager per ripristinarla. In alternativa, puoi ripristinarla manualmente.

Per utilizzare il runbook, verifica innanzitutto i seguenti prerequisiti:

  • Se il volume Amazon Elastic Block Store (Amazon EBS) root è crittografato, assicurati che la chiave di crittografia sia presente nell’account. Inoltre, assicurati di avere l'autorizzazione per utilizzarla.
  • Il runbook AWSSupport-StartEC2RescueWorkflow arresta l’istanza. Se l’istanza utilizza volumi di archivio dell’istanza, utilizza il metodo di ripristino manuale per evitare perdite di dati.
  • Prima di avviare il runbook AWSSupport-StartEC2RescueWorkflow, assicurati che l'utente o il ruolo AWS Identify and Access Management (AWS IAM) disponga delle autorizzazioni richieste. Per ulteriori informazioni, consulta la sezione Autorizzazioni IAM richieste in AWSSupport-StartEC2RescueWorkflow. Devi inoltre aggiungere l'autorizzazione kms:CreateGrant al ruolo IAM.

Identifica le istanze compromesse

Per identificare le istanze compromesse, esegui il comando AWS CLI describe-instance-status:

aws ec2 describe-instance-status --filters Name=instance-status.status,Values=impaired --query "InstanceStatuses[*].InstanceId" --region your-region

Nota: sostituisci your-region con la tua Regione AWS.

Utilizza il runbook di Automazione Systems Manager per ripristinare una singola istanza EC2

Per automatizzare il ripristino utilizzando AWSSupport-StartEC2RescueWorkflow, apri il runbook sulla console Systems Manager. Quindi seleziona la Regione e l'istanza che desideri ripristinare. Se il volume Amazon EBS root è crittografato, imposta AllowEncryptedVolume su True.

Il flusso di lavoro del runbook avvia un'istanza EC2 temporanea (istanza di supporto) in un cloud privato virtuale (VPC). Il flusso di lavoro associa automaticamente l'istanza di supporto al gruppo di sicurezza predefinito del VPC. L'istanza deve consentire la comunicazione HTTPS (porta TCP 443) in uscita con gli endpoint di Amazon Simple Storage Service (Amazon S3) e Systems Manager.

È necessario avviare l'istanza in una delle seguenti sottoreti in modo che l'istanza raggiunga i servizi AWS richiesti per completare le attività del flusso di lavoro:

  • Sottorete pubblica con il parametro AssociatePublicIpAddress impostato su True.
  • Sottorete privata con accesso a Internet tramite NAT.

L'istanza di supporto monta il volume root delle istanze selezionate, quindi esegue questo comando per eliminare il file interessato:

get-childitem -path "$env:EC2RESCUE_OFFLINE_DRIVE\Windows\System32\drivers\CrowdStrike\" -Include C-00000291*.sys -Recurse | foreach { $_.Delete()}

Per verificare il contenuto del payload OfflineScript in Base64 del comando precedente, esegui questo comando:

PS C:\Windows\system32> [System.Text.Encoding]::UTF8.GetString([System.Convert]::FromBase64String("REPLACE_WITH_BASE64_HERE"))

Utilizza il runbook di Automazione AWS Systems Manager per ripristinare più istanze EC2

Per utilizzare il runbook su più istanze EC2, utilizza gli ID delle istanze, i tag o i gruppi di risorse.

Il runbook avvia un'istanza di supporto per ogni istanza selezionata. Assicurati di avere un numero sufficiente di indirizzi IP nella sottorete selezionata per le istanze. Inoltre, assicurati di avere un numero sufficiente di quote di istanze e quote di volumi EBS.

Nota: il tempo impiegato dal runbook di automazione per il completamento dipende dal valore impostato per la concorrenza.

Utilizza gli ID delle istanze

Completa i seguenti passaggi:

  1. Apri il runbook AWSSupport-StartEC2RescueWorkflow sulla console Systems Manager.
  2. In Esegui il runbook di automazione, scegli Controllo velocità.
  3. Nella sezione Target, per Parametro, scegli InstanceId. Per Target, scegli Valori parametro.
  4. In Parametri di input, seleziona le istanze che desideri ripristinare.
  5. In Controllo velocità, scegli l'opzione di concorrenza per il numero di risorse che possono eseguire contemporaneamente l'automazione. Per ulteriori informazioni, consulta Controlla le automazioni su larga scala.
  6. Scegli Esegui.

Utilizza i tag

Completa i seguenti passaggi:

  1. Crea un nuovo tag univoco da utilizzare solo per le istanze che desideri ripristinare. Tutte le istanze con questo tag vengono incluse nel ripristino. Questo può causare una perdita accidentale di dati o influire sulla disponibilità delle istanze. Per ulteriori informazioni, consulta Etichetta le tue risorse Amazon EC2 e Che cos'è l'Editor di tag?
  2. Per verificare che solo le istanze interessate condividano il nuovo tag, utilizza l’Esploratore di risorse AWS o l'Editor di tag.
  3. Apri il runbook AWSSupport-StartEC2RescueWorkflow sulla console di Systems Manager.
  4. In Esegui il runbook di automazione, scegli Controllo velocità.
  5. Nella sezione Target, per Parametro, scegli InstanceId. Per Target, scegli Valori parametro.
  6. Per Tag, scegli Modifica. Inserisci la chiave e il valore del tag, quindi scegli Salva.
  7. In Parametri di input, seleziona le istanze che desideri ripristinare.
  8. In Controllo velocità, scegli l'opzione di concorrenza per il numero di risorse che possono eseguire contemporaneamente l'automazione. Per ulteriori informazioni, consulta Controlla le automazioni su larga scala.
  9. Scegli Esegui.

Utilizza i gruppi di risorse

Completa i seguenti passaggi:

  1. Crea un nuovo gruppo di risorse da utilizzare solo per le istanze da ripristinare. Tutte le istanze di questo gruppo di risorse vengono incluse nel ripristino. Questo può causare perdite accidentali di dati o influire sulla disponibilità delle istanze. Per ulteriori informazioni, consulta Creazione di gruppi basati su query in Gruppi di risorse AWS.
  2. Per verificare che solo le istanze interessate appartengano al nuovo gruppo di risorse, utilizza la console Gruppi di risorse AWS.
  3. Apri il runbook AWSSupport-StartEC2RescueWorkflow sulla console di Systems Manager.
  4. In Esegui il runbook di automazione, scegli Controllo velocità.
  5. Nella sezione Target, per Parametro, scegli InstanceId. Per Target, scegli Valori parametro.
  6. In Gruppi di risorse, seleziona il nuovo gruppo di risorse.
  7. In Parametri di input, seleziona le istanze che desideri ripristinare.
  8. In Controllo velocità, scegli l'opzione di concorrenza per il numero di risorse che possono eseguire contemporaneamente l'automazione. Per ulteriori informazioni, consulta Controlla le automazioni su larga scala.
  9. Scegli Esegui.

Ripristina manualmente le istanze

Completa i seguenti passaggi:

  1. Crea uno snapshot del volume EBS root dell'istanza.
  2. Crea un nuovo volume EBS dallo snapshot nella stessa zona di disponibilità.
  3. Avvia una nuova istanza Windows nella stessa zona di disponibilità.
  4. Collega il nuovo volume EBS alla nuova istanza come volume di dati.
  5. Scarica lo strumento EC2Rescue per Windows Server nell'istanza di supporto.
  6. Fai clic con il pulsante destro del mouse su EC2Rescue.exe, quindi scegli Run As Administrator (Esegui come amministratore).
    Seleziona I agree (Accetto) nel contratto di licenza.
    Nella schermata di benvenuto, scegli Next (Avanti).
    Nella schermata Select Mode (Seleziona modalità), scegli Offline Instance (Istanza offline).
    Seleziona il disco offline, quindi scegli Next (Avanti). Quando richiesto, scegli Yes (Sì) quindi scegli OK.
    Mantieni EC2Rescue in esecuzione.
    Nota: se l'istanza originale utilizza BitLocker per crittografare il volume EBS root, segui le istruzioni visualizzate per fornire la password o la chiave di ripristino di BitLocker. Oppure utilizza manage-bde unlock dalla riga di comando. Per ulteriori informazioni, consulta manage-bde unlock sul sito web Microsoft. Dopo aver sbloccato l'unità, ripeti il passaggio 6.
  7. Accedi alla cartella X:\Windows\System32\drivers\CrowdStrike\ nel volume collegato, quindi elimina C-00000291*.sys.
    Nota: in questo esempio, X: è la lettera dell’unità assegnata al volume EBS secondario dall'istanza interessata. Potrebbe essere una lettera diversa, a seconda dell’ambiente.
  8. Torna a EC2 Rescue.
    Scegli Diagnose and Rescue (Diagnosi e ripristino), quindi scegli Next (Avanti).
    Mantieni tutte le opzioni predefinite.
    Scegli Next (Avanti), quindi nuovamente Next (Avanti).
    Quando richiesto, scegli Rescue (Ripristina). Scegli OK, quindi scegli Next (Avanti).
    Scegli Finish (Fine).
    Nella finestra pop-up, scegli Fix disk signature (Correggi firma disco), quindi scegli OK.
    Se Fix disk signature (Correggi firma disco) è disattivato, scegli OK.
  9. Scollega il volume EBS dalla nuova istanza.
  10. Crea uno snapshot del volume EBS scollegato.
  11. Seleziona lo stesso tipo di volume (ad esempio, gp2 o gp3) dell'istanza interessata, quindi crea un'Amazon Machine Image (AMI) dallo snapshot.
  12. Sostituisci il volume root nell'istanza EC2 originale e specifica l'AMI.

WorkSpace

Se più riavvii non ripristinano l’integrità del WorkSpace, è possibile ripristinarlo da uno snapshot precedente. Se il ripristino del WorkSpace non lo riporta a uno stato integro, ricrealo.

Risoluzione dei problemi

Se i passaggi precedenti non risolvono i problemi di connettività, utilizza la procedura di seguito:

Utilizza il runbook di Automazione Systems Manager

Problema: l'istanza di supporto non può connettersi agli endpoint del servizio AWS. Questo problema può causare un errore nella fase del flusso di lavoro dell'automazione waitForEc2RescueInstanceToBeManaged.

Soluzione: verifica che il gruppo di sicurezza predefinito consenta al traffico in uscita (porta TCP 443) di raggiungere Systems Manager e gli endpoint di S3. Inoltre, assicurati che la sottorete selezionata possa connettersi agli endpoint. Per utilizzare un gruppo di sicurezza personalizzato, aggiorna il valore del parametro HelperInstanceSecurityGroupId con l'ID del gruppo di sicurezza. Se hai scelto una sottorete pubblica, imposta il parametro AssociatePublicIpAddress su True. In alternativa, imposta il parametro SubnetId come CreateNewVPC affinché l'automazione crei un nuovo VPC con la connettività richiesta.

Problema: lo snapshot interessato non si arresta perché è attivata la protezione da arresto.

Soluzione: disattiva la protezione da arresto per l'istanza interessata ed esegui nuovamente l'automazione.

Nota: se l'istanza utilizza volumi di archivio dell'istanza, i dati archiviati su tali volumi non persistono quando arresti l'istanza.

Problema: l’istanza di supporto non si avvia.

Soluzione: il tipo di istanza selezionato per l'istanza EC2Rescue potrebbe non essere disponibile nella zona di disponibilità della sottorete dell'istanza di supporto. Utilizza un tipo di istanza supportato nella stessa zona di disponibilità dell'istanza di supporto.

Problema: quando l'automazione verifica che la creazione dello stack AWS CloudFormation sia completa, l'automazione ha esito negativo e viene visualizzato l'errore "Stack AWSSupport-EC2Rescue-{UUID} entered unexpected state: DELETE_IN_PROGRESS".

Soluzione: per determinare cosa ha causato l’errore dello stack, ottieni l'ID UUID e utilizza la console CloudFormation. Questo errore può verificarsi se non hai le autorizzazioni per creare le risorse dello stack. Per ulteriori informazioni, consulta la sezione Autorizzazioni IAM richieste in AWSSupport-StartEC2RescueWorkflow e Come posso risolvere gli errori di accesso negato o di operazione non autorizzata con una policy IAM?

Problema: il runbook ha esito negativo nella fase del flusso di lavoro dell'automazione assertInstanceRootVolumeIsNotEncrypted a causa di un volume EBS crittografato.

Soluzione: se il volume utilizza la crittografia EBS, imposta il parametro AllowEncryptedVolume su True.

Problema: il VPC predefinito è stato eliminato.

Soluzione: imposta il parametroSubnetId su CreateNewVPC per creare un nuovo VPC che consenta il ripristino corretto dell'istanza.

Problema: la fase del flusso di lavoro dell'automazione detachInstanceRootVolume ha esito negativo e viene visualizzato il messaggio di errore "error occurred (IncorrectState) when calling the DetachVolume operation: Unable to detach root volume".

Soluzione: quando esegui l'automazione, mantieni l'istanza nello stato Arrestato.

Ripristino manuale dell'istanza

Problema: l'istanza non si avvia e viene visualizzato l'errore "The application or operating system couldn't be loaded because a registered file is missing or contains errors".

Soluzione: se non hai selezionato Fix disk signature (Correggi firma disco), potrebbe verificarsi una collisione tra le firme del disco. Per risolvere il problema, segui il passaggio 8 nella procedura di ripristino manuale. Se hai ripristinato l'istanza senza EC2Rescue Rescue, consulta Risolvi i problemi relativi alle istanze Windows di Amazon EC2.

Nota: se le soluzioni precedenti non risolvono il problema di connettività all’istanza EC2, contatta il Supporto AWS. Assicurati di acquisire uno snapshot dell'istanza irraggiungibile.

Informazioni correlate

Esegui lo strumento EC2 Rescue su istanze irraggiungibili