Installazione di Osquery in Ubuntu
Osquery I pacchetti non sono disponibili nel repository Ubuntu predefinito, quindi prima di installarlo dobbiamo aggiungere il Osquery Repository APT eseguendo il seguente comando nel terminale.
ubuntu@ubuntu: ~ $ echo "deb [arch = amd64] https: // pkg.Osquery.io/deb deb main "|
sudo tee/etc/apt/fonti.elenco.d/osquery.elenco
Ora importeremo la chiave di firma eseguendo il seguente comando nel terminale.
ubuntu@ubuntu: ~ $ sudo apt-key adv --Keyserver Keyserver.Ubuntu.com
--RECV-Keys 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B
Dopo aver importato la chiave di firma, ora aggiorna il sistema eseguendo il seguente comando nel terminale.
ubuntu@ubuntu: ~ $ sudo apt-get update
Ora installa Osquery eseguendo il seguente comando
ubuntu@ubuntu: ~ $ sudo apt-get Installa Osquery
Dopo l'installazione Osquery, Ora dobbiamo verificare se è stato installato correttamente eseguendo il comando seguente
ubuntu@ubuntu: ~ $ Osqueryi -Version
Se fornisce la seguente uscita, è installato correttamente
Usando Osquery
Ora dopo l'installazione, siamo pronti per l'uso Osquery. Esegui il comando seguente per andare al prompt della shell interattivo
ubuntu@ubuntu: ~ $ osqueryi
Ottenere aiuto
Ora possiamo eseguire query basate su SQL per ottenere dati dal sistema operativo. Possiamo chiedere aiuto Osquery eseguendo il seguente comando nella shell interattiva.
Osquery> .aiutoOttenere tutti i tavoli
Come menzionato prima, Osquery Espone i dati dal sistema operativo come database relazionale in modo da avere tutti i dati sotto forma di tabelle. Possiamo ottenere tutte le tabelle eseguendo il seguente comando nella shell interattiva
Osquery> .tavoliCome possiamo vedere che eseguendo il comando sopra possiamo ottenere un sacco di tavoli. Ora possiamo ottenere dati da queste tabelle eseguendo query basate su SQL.
Elencare informazioni su tutti gli utenti
Possiamo vedere tutte le informazioni sugli utenti eseguendo il seguente comando nella shell interattiva
Osquery> Seleziona * dagli utenti;Il comando sopra visualizzerà GID, UID, Descrizione ecc. di tutti gli utenti
Possiamo anche estrarre solo i dati pertinenti sugli utenti, ad esempio, vogliamo vedere solo gli utenti e non altre informazioni sugli utenti. Esegui il comando seguente nella shell interattiva per ottenere i nomi utente
Osquery> Seleziona nome utente dagli utenti;Il comando sopra mostrerà tutti gli utenti nel tuo sistema
Allo stesso modo possiamo ottenere nomi utente insieme alla directory in cui l'utente esiste eseguendo il comando seguente.
Osquery> Seleziona nome utente, directory dagli utenti;Allo stesso modo possiamo interrogare tutti i campi che vogliamo eseguendo i comandi simili.
Possiamo anche ottenere tutti i dati di utenti specifici. Ad esempio, vogliamo ottenere tutte le informazioni sull'utente root. Possiamo ottenere tutte le informazioni sull'utente root eseguendo il comando seguente.
Osquery> Seleziona * da utenti dove username = "root";Possiamo anche ottenere dati specifici da campi specifici (colonne). Ad esempio, vogliamo ottenere l'ID del gruppo e il nome utente dell'utente. Esegui il comando seguente per ottenere questi dati.
Osquery> Seleziona nome utente, GID da utenti dove username = "root"In questo modo possiamo interrogare tutto ciò che vogliamo da un tavolo.
Elencare tutti i processi
Possiamo elencare i primi cinque processi in esecuzione in Ubuntu eseguendo il seguente comando nella shell interattiva
Osquery> Seleziona * dal limite dei processi 5;Poiché ci sono molti processi in esecuzione nel sistema, quindi abbiamo visualizzato solo cinque processi utilizzando la parola chiave limite.
Possiamo trovare l'ID processo di un processo specifico, ad esempio, vogliamo trovare l'ID processo di MongoDB, quindi eseguiremo il seguente comando nella shell interattiva
Osquery> Seleziona PID da processi in cui Name = "Mongod";Trovare la versione di Ubuntu
Possiamo trovare la versione del nostro sistema Ubuntu eseguendo il seguente comando nella shell interattiva
Osquery> Seleziona * da OS_VERSION;Ci mostrerà la versione del nostro sistema operativo
Verifica delle interfacce di rete e degli indirizzi IP
Possiamo controllare l'indirizzo IP, la maschera di sottorete delle interfacce di rete eseguendo la seguente query nella shell interattiva.
Osquery> Seleziona interfaccia, indirizzo, maschera da interface_addressesVerifica dell'accesso agli utenti
Possiamo anche controllare gli utenti dell'accesso sul tuo sistema interrogando i dati dalla tabella "Logged_in_users". Esegui il seguente comando per trovare gli utenti dell'accesso.
OsQuery> Seleziona utente, host, tempo da logged_in_users dove tty non mi piace '-';Controllo della memoria del sistema
Possiamo anche controllare la memoria totale, la memoria della memoria libera, ecc. eseguendo alcuni comandi basati su SQL nella shell interattiva. Per controllare la memoria totale eseguire il comando seguente. Questo ci darà una memoria totale del sistema in byte.
Osquery> Seleziona Memory_Total da Memory_Info;Per controllare la memoria gratuita del sistema esegui la seguente query nella shell interattiva
Osquery> Seleziona Memory_Free da Memory_Info;Quando eseguiamo il comando sopra, ci fornirà memoria gratuita disponibile nel nostro sistema
Possiamo anche controllare la memoria memorizzata nella cache del sistema usando la tabella Memory_info eseguendo la seguente query.
Osquery> Seleziona memorizzato nella cache da Memory_info;Elencare i gruppi
Possiamo trovare tutti i gruppi nel tuo sistema eseguendo la seguente query nella shell interattiva
Osquery> Seleziona * dai gruppi;Visualizzazione delle porte di ascolto
Possiamo visualizzare tutte le porte di ascolto del nostro sistema eseguendo il seguente comando nella shell interattiva
Osquery> Seleziona * da ascolto_ports;Possiamo anche verificare se una porta sta ascoltando o meno eseguendo il seguente comando nella shell interattiva
Osquery> Seleziona porta, indirizzo da ascolto_port dove port = 27017;Questo ci darà output come mostrato nella figura seguente
Conclusione
Osquery è un'utilità software molto utile per trovare qualsiasi tipo di informazione sul tuo sistema. Se sei già a conoscenza delle query basate su SQL, è molto facile da usare per te o se non sei a conoscenza delle query basate su SQL, ho fatto del mio meglio per mostrarti alcune domande importanti che sono utili per trovare dati. Puoi trovare qualsiasi tipo di dati da qualsiasi tabella eseguendo query simili.