Comment installer et utiliser Osquery dans Ubuntu

Comment installer et utiliser Osquery dans Ubuntu
Osquery est un utilitaire logiciel open source et transformat. Nous pouvons obtenir des données du système d'exploitation en exécutant des requêtes basées sur SQL. Dans ce blog, nous verrons comment installer Osquery dans Ubuntu et comment l'utiliser pour obtenir des données du système d'exploitation.

Installation d'Osquery à Ubuntu

Osquery Les packages ne sont pas disponibles dans le référentiel Ubuntu par défaut, donc avant de l'installer, nous devons ajouter le Osquery Référentiel apt en exécutant la commande suivante dans le terminal.

ubuntu @ ubuntu: ~ $ echo "deb [arch = amd64] https: // pkg.osquery.io / deb deb Main "|
TEE SUDO / ETC / APT / SOURCES.liste.d / osquery.liste

Nous allons maintenant importer la clé de signature en exécutant la commande suivante dans le terminal.

Ubuntu @ Ubuntu: ~ $ sudo apt-key adv - Keyserver KeyServer.ubuntu.com
--Recv-Keys 1484120AC4E9F8A1A577AEEE97A80C63C9D8B80B

Après avoir importé la clé de signature, mettez maintenant à jour votre système en exécutant la commande suivante dans le terminal.

ubuntu @ ubuntu: ~ $ sudo apt-get update

Installer maintenant Osquery En exécutant la commande suivante

ubuntu @ ubuntu: ~ $ sudo apt-get installer osquery

Après installation Osquery, Nous devons maintenant vérifier s'il a été installé correctement en exécutant la commande suivante

ubuntu @ ubuntu: ~ $ osqueryi --version

S'il donne la sortie suivante, il est installé correctement

Utilisation d'Osquery

Maintenant, après l'installation, nous sommes prêts à l'emploi Osquery. Exécutez la commande suivante pour accéder à l'invite de shell interactif

ubuntu @ ubuntu: ~ $ osqueryi

Obtenir de l'aide

Nous pouvons maintenant exécuter des requêtes basées sur SQL pour obtenir des données du système d'exploitation. Nous pouvons obtenir de l'aide sur Osquery En exécutant la commande suivante dans le shell interactif.

OSQuery> .aider

Obtenir toutes les tables

Comme mentionné précédemment, Osquery Expose les données du système d'exploitation en tant que base de données relationnelle afin qu'elle ait toutes les données sous forme de tables. Nous pouvons obtenir toutes les tables en exécutant la commande suivante dans le shell interactif

OSQuery> .les tables

Comme nous pouvons le voir en exécutant la commande ci-dessus, nous pouvons obtenir un tas de tables. Maintenant, nous pouvons obtenir des données de ces tables en exécutant des requêtes basées sur SQL.

Listing des informations sur tous les utilisateurs

Nous pouvons voir toutes les informations sur les utilisateurs en exécutant la commande suivante dans le shell interactif

OSQuery> Sélectionner * chez les utilisateurs;

La commande ci-dessus affichera GID, UID, Description, etc. de tous les utilisateurs

Nous ne pouvons également extraire que les données pertinentes sur les utilisateurs, par exemple, nous voulons voir uniquement les utilisateurs et non d'autres informations sur les utilisateurs. Exécutez la commande suivante dans le shell interactif pour obtenir les noms d'utilisateur

OSQuery> Sélectionnez le nom d'utilisateur des utilisateurs;

La commande ci-dessus affichera tous les utilisateurs de votre système

De même, nous pouvons obtenir des noms d'utilisateur avec le répertoire dans lequel l'utilisateur existe en exécutant la commande suivante.

OSQuery> Sélectionnez Nom d'utilisateur, répertoire des utilisateurs;

De même, nous pouvons interroger autant de champs que nous le souhaitons en exécutant les commandes similaires.

Nous pouvons également obtenir toutes les données d'utilisateurs spécifiques. Par exemple, nous voulons obtenir toutes les informations sur l'utilisateur racine. Nous pouvons obtenir toutes les informations sur l'utilisateur racine en exécutant la commande suivante.

OSQuery> SELECT * FROM Users Where username = "root";

Nous pouvons également obtenir des données spécifiques à partir de champs spécifiques (colonnes). Par exemple, nous voulons obtenir l'ID de groupe et le nom d'utilisateur de l'utilisateur racine. Exécutez la commande suivante pour obtenir ces données.

OSQuery> Sélectionnez Nom d'utilisateur, GID From Users Where Username = ”root”

De cette façon, nous pouvons interroger tout ce que nous voulons d'une table.

Énumérer tous les processus

Nous pouvons répertorier les cinq premiers processus en cours d'exécution dans Ubuntu en exécutant la commande suivante dans le shell interactif

OSQuery> SELECT * From Processes Limit 5;

Comme il existe de nombreux processus qui s'exécutent dans le système, nous n'avons donc affiché que cinq processus en utilisant le mot-clé limite.

Nous pouvons trouver l'ID de processus d'un processus spécifique par exemple, nous voulons trouver l'ID de processus de MongoDB afin que nous exécuterons la commande suivante dans le shell interactif

OSQuery> Sélectionnez PID dans les processus où name = "Mongod";

Trouver la version d'Ubuntu

Nous pouvons trouver la version de notre système Ubuntu en exécutant la commande suivante dans le shell interactif

OSQuery> SELECT * FROM OS_VERION;

Il nous montrera la version de notre système d'exploitation

Vérification des interfaces réseau et des adresses IP

Nous pouvons vérifier l'adresse IP, le masque de sous-réseau des interfaces réseau en exécutant la requête suivante dans le shell interactif.

OSQuery> Sélectionnez l'interface, l'adresse, le masque à Interface_Address
Où l'interface n'aime pas «% lo%»;

Vérification connectée aux utilisateurs

Nous pouvons également consulter les utilisateurs connectés sur votre système en interrogeant les données du tableau 'logged_in_users'. Exécutez la commande suivante pour trouver les utilisateurs connectés.

OSQuery> Sélectionnez l'utilisateur, l'hôte, le temps de LOGGED_IN_USERS où tty n'aime pas '-';

Vérification de la mémoire du système

Nous pouvons également vérifier la mémoire totale, la mémoire en cache de mémoire libre, etc. En exécutant une commande basée sur SQL dans le shell interactif. Pour vérifier la mémoire totale, exécutez la commande suivante. Cela nous donnera une mémoire totale du système en octets.

OSQuery> Sélectionnez Memory_Total dans Memory_info;

Pour vérifier la mémoire gratuite de votre système, exécutez la requête suivante dans le shell interactif

OSQuery> Sélectionnez Memory_Free dans Memory_info;

Lorsque nous exécutons la commande ci-dessus, cela nous donnera une mémoire gratuite disponible dans notre système

Nous pouvons également vérifier la mémoire en cache du système à l'aide de la table Memory_info en exécutant la requête suivante.

OSQuery> Sélectionnez Cached dans Memory_info;

Énumérer les groupes

Nous pouvons trouver tous les groupes de votre système en exécutant la requête suivante dans le shell interactif

OSQuery> SELECT * dans les groupes;

Affichage des ports d'écoute

Nous pouvons afficher tous les ports d'écoute de notre système en exécutant la commande suivante dans le shell interactif

OSQuery> SELECT * FROM LEKED_PORTS;

Nous pouvons également vérifier si un port écoute ou non en exécutant la commande suivante dans le shell interactif

OSQuery> Sélectionnez le port, adresse à LisseylAr_ports où port = 27017;

Cela nous donnera la sortie comme indiqué dans la figure suivante

Conclusion

Osquery est un utilitaire logiciel très utile pour trouver tout type d'informations sur votre système. Si vous êtes déjà au courant des requêtes basées sur SQL, il est très facile à utiliser pour vous ou si vous n'êtes pas au courant des requêtes basées sur SQL, j'ai fait de mon mieux pour vous montrer des requêtes majeures qui sont utiles pour trouver des données. Vous pouvez trouver n'importe quel type de données de n'importe quelle table en exécutant des requêtes similaires.