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> .aiderObtenir 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 tablesComme 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_AddressVé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.