Osquery per i Blue Teamer

Dec 22 2022
Osquery è una piattaforma di sicurezza degli endpoint open source che ti consente di monitorare e interrogare i tuoi sistemi utilizzando una sintassi simile a SQL. È stato sviluppato da Facebook ed è utilizzato da aziende e organizzazioni di tutto il mondo per proteggere le proprie reti e sistemi.

Osquery è una piattaforma di sicurezza degli endpoint open source che ti consente di monitorare e interrogare i tuoi sistemi utilizzando una sintassi simile a SQL. È stato sviluppato da Facebook ed è utilizzato da aziende e organizzazioni di tutto il mondo per proteggere le proprie reti e sistemi.

Una delle caratteristiche principali di Osquery è la sua capacità di eseguire il monitoraggio e l'analisi in tempo reale dei tuoi sistemi. Fornisce una visione unificata dell'intera infrastruttura e consente di identificare e rispondere rapidamente a minacce e anomalie alla sicurezza.

Osquery può essere utilizzato per monitorare vari aspetti dei tuoi sistemi, tra cui:

  • Integrità dei file: Osquery è in grado di rilevare modifiche a file di sistema importanti, avvisandoti di potenziali manomissioni o infezioni da malware.
  • Attività di rete: Osquery può monitorare le connessioni di rete in entrata e in uscita, consentendo di rilevare e rispondere a potenziali attacchi o accessi non autorizzati.
  • Attività di processo: Osquery può tenere traccia dei processi in esecuzione sui tuoi sistemi, avvisandoti di qualsiasi attività sospetta o dannosa.
  • Configurazione del sistema: Osquery può raccogliere e riferire sulle configurazioni del sistema, aiutandoti a garantire che i tuoi sistemi siano configurati in modo sicuro e coerente.

Installazione:

Osquery può essere utilizzato per esplorare vari sistemi operativi come Windows, Linux e Mac. Scarica la versione che preferisci da qui , nel mio caso l'ho scaricata e installata per Windows.

Dopo l'installazione, avvia PowerShell come amministratore> Passa al percorso di download di Osquery> Avvia osquery con .\osqueryi.exe

Dato che abbiamo appena iniziato, digitiamo .help e controlliamo quali funzionalità ha Osquery:

Esplorare le tabelle su Windows:

Esploriamo la tabella digitando .tables che ci fornirà l'elenco delle funzioni del sistema operativo e successivamente ne interrogheremo alcune per recuperare possibili dati dalla macchina interessata.

Come visto sopra, osquery ha interrogato l'elenco delle tabelle sul sistema operativo. Prendiamo alcuni dettagli intricati da alcune tabelle interessanti per interrogare ulteriormente:

Elenco degli utenti attivi:

Il comando select * from users; consentirà l'enumerazione di tutti gli utenti presenti sulla macchina. Possiamo cercare ulteriormente possibili UID e GID per i diritti degli utenti e verificare la presenza di utenti con diritti di amministratore.

Il comando select Count(*) from users ci fornirà il conteggio delle statistiche degli account utente creati su questa macchina.

Per recuperare gli UID usiamo il comando select UID from users;

Elenco dei processi:

Per arruolare tutti i processi in esecuzione sul sistema usiamo il comando select * dai processi;

Si noti che ho utilizzato il limite 5 per limitare i risultati per visualizzare i primi 5 processi poiché numerosi processi sono in esecuzione sulla mia macchina.

Possiamo filtrare i risultati di conseguenza per trovare il cattivo attore.

Costruiamo una query per ottenere i nomi utente e il processo corrispondente che vengono eseguiti da loro:

Si prega di notare che se si desidera eseguire tali query è necessario avere familiarità con le basi di SQL

Connessioni di rete dei processi attivi:

Possiamo verificare la presenza di socket di rete sospetti e cercare connessioni stabilite da indirizzi IP locali a quelli remoti. Esploriamo prima le tabelle dei processi di Windows:

Ora interroghiamo la tabella process_open_sockets e controlliamo:

Filtriamo i risultati per visualizzare solo tutte le connessioni stabilite.

Ora possiamo eseguire un controllo sugli indirizzi IP esterni tramite Threat Intelligence Tools per vedere se esiste un indirizzo IP dannoso a cui sono state effettuate o meno connessioni in uscita.

Monitoraggio file:

Per monitorare eventuali file sospetti presenti sul sistema possiamo utilizzare il seguente comando:

Si prega di notare le seguenti regole sui caratteri jolly quando si tratta di costruire query:

Corrispondenza regole jolly

  • %: Abbina tutti i file e le cartelle per un livello.
  • %%: Abbina tutti i file e le cartelle in modo ricorsivo.
  • %abc: Corrisponde a tutti i livelli che terminano in "abc".
  • abc%: Abbina tutti i livelli che iniziano con "abc".

Possiamo verificare la presenza di modifiche sospette del valore della chiave di registro e trovare artefatti interessanti. La preparazione di una query farà risparmiare tempo di risposta agli incidenti e conoscerai la persistenza del malware nel registro.

La query utilizzata sopra è Seleziona dati, percorso dal registro dove key = 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders';

Avvio di malware all'avvio

Possiamo controllare i processi di Windows che si avviano all'avvio come comportamenti di persistenza del malware. Rilevando tali attività dannose possiamo compiere ulteriori passi come isolare la macchina dalla rete ed eseguire un'ulteriore possibile analisi forense per la causa principale.

L'istruzione OSquery usata sopra è select * from services where start_type='DEMAND_START' limit 2;

Nel complesso, Osquery è uno strumento prezioso per chiunque sia responsabile della sicurezza dei propri sistemi. Il monitoraggio in tempo reale e le potenti funzionalità di query lo rendono una piattaforma versatile ed efficace per rilevare e rispondere a minacce e anomalie alla sicurezza.

Riferimenti:

https://osquery.io/schema/5.6.0