PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

Lenovo corrige 5 failles dans le BIOS de ses ordinateurs et de ses serveurs !

jeudi 15 septembre 2022 à 09:16

Lenovo a publié une mise à jour BIOS pour de nombreux modèles de PC de bureau, de PC portables, mais aussi des serveurs, dans le but de corriger plusieurs vulnérabilités critiques. Faisons le point.

Dans un bulletin de sécurité, Lenovo évoque 5 vulnérabilités importantes qui affectent le BIOS de certains de ses modèles. Si l'on regarde la liste des gammes de PC touchées, on peut voir qu'il y a plusieurs centaines de modèles, dont des ordinateurs de bureau, des ordinateurs portables, des serveurs, mais aussi du All In One : IdeaCentre, Legion, ThinkCentre, ThinkPad, ThinkAgile, ThinkStation, ThinkSystem, IdeaPad, Yoga, ThinkBook, etc.

Voici la liste des vulnérabilités faisant l'objet de ce nouveau bulletin de sécurité :

L'exploitation de ces failles peut conduire à la divulgation d'informations, à l'élévation de privilèges, au déni de service et, dans certains cas, à l'exécution de code arbitraire sur la machine vulnérable.

Comment se protéger contre ces vulnérabilités ?

La bonne nouvelle, c'est que Lenovo a corrigé les vulnérabilités dans les dernières mises à jour BIOS pour la majorité des produits concernés. Certaines mises à jour sont disponibles depuis juillet et août 2022, tandis que d'autres vont arriver en septembre et octobre.

Pour vérifier si une mise à jour est disponible pour un modèle spécifique, il faut se référer au bulletin de sécurité de Lenovo où il y a une liste complète, avec les liens adéquats.

Source

The post Lenovo corrige 5 failles dans le BIOS de ses ordinateurs et de ses serveurs ! first appeared on IT-Connect.

L’application Microsoft Teams stocke les jetons d’authentification en clair sur Windows, Linux et macOS !

jeudi 15 septembre 2022 à 08:28

Une vulnérabilité importante affecte l'application desktop de Microsoft Teams et elle permet à un attaquant d'accéder aux jetons d'authentification des utilisateurs ! Avec ce jeton, il peut se réauthentifier avec le même compte sur une autre machine.

En quelques années, Microsoft Teams est devenu une solution collaborative incontournable, et aujourd'hui elle compte plus de 270 millions d'utilisateurs !

La nouvelle faille de sécurité affecte l'application Microsoft Teams que l'on installe sur son ordinateur afin d'éviter d'utiliser la version Web, et elle concerne les applications pour Windows, Linux et macOS ! Il s'avère que Teams stocke le jeton d'authentification de l'utilisateur en clair sur le disque (un fichier ldb) et sans protéger l'accès à cette information sensible. Un attaquant ayant un accès à une machine où Teams est installé et connecté à un compte utilisateur peut dérober le jeton d'authentification afin de réauthentifier avec le compte de l'utilisateur, y compris s'il est protégé par du MFA !

Comme le précise Connor Peoples de chez Vectra : "Cette attaque ne nécessite pas d'autorisations spéciales ou de logiciels malveillants avancés pour effectuer des dommages importants". En effet, on peut imaginer que si l'attaquant récupère le jeton d'authentification du compte du Directeur Général de l'entreprise, il peut effectuer des actions préjudiciables pour l'entreprise, voire même convaincre les utilisateurs d'effectuer certaines actions au nom du Grand Patron.

Microsoft Teams est une application basée sur le framework Electron (comme beaucoup d'autres versions desktop d'applications populaires) et cette application supporte les mêmes fonctions que lors de l'utilisation en mode navigateur : cookies, sessions, logs, etc. Le problème, c'est que Electron ne prend pas en charge le chiffrement ou la protection de fichiers par défaut, et que cela implique des travaux importants pour corriger ces deux lacunes. Sur des applications aussi populaires, et donc critiques, on aimerait pourtant que ce soit fait.

En analysant le fonctionnement de Teams, les chercheurs de chez Vecta ont découvert que le dossier "Cookies" contenait des jetons d'authentification valides, ainsi que des informations sur les comptes, des données de session et des balises marketing. C'est particulièrement dangereux, car les logiciels malveillants qui volent des informations, notamment dans les navigateurs, sont de plus en plus fréquents. Comme je le disais précédemment, en volant ces données, un attaquant peut se réauthentifier avec le compte de l'utilisateur sur une autre machine.

Comment se protéger contre le vol de jeton d'authentification ?

Les chercheurs de Vectra ont découvert ce problème de sécurité en août 2022 et l'ont signalé à Microsoft. Toutefois, Microsoft ne semble pas d'accord sur le niveau de gravité de cette faille de sécurité, et pour le moment cette vulnérabilité n'est pas corrigée, mais ce serait au programme dans une prochaine version de Teams. L'entreprise américaine estime que ce n'est pas urgent, car pour exploiter cette vulnérabilité, l'attaquant doit déjà accéder à la machine cible d'une autre manière. Cette réponse de Microsoft me rappelle une autre technique d'attaque nommée GIFShell, évoquée la semaine dernière.

Vectra recommande aux utilisateurs de ne plus utiliser l'application desktop de Teams, mais d'utiliser la version Web de Teams, par exemple avec Microsoft Edge. C'est suffisant pour se protéger contre le vol de jeton d'authentification. Sinon, il convient de surveiller les processus qui accèdent à ces éléments :

Affaire à suivre...

Source

The post L’application Microsoft Teams stocke les jetons d’authentification en clair sur Windows, Linux et macOS ! first appeared on IT-Connect.

La commande mv sous Linux : exemples d’utilisation

jeudi 15 septembre 2022 à 07:45

I. Présentation

Sous Linux, la commande "mv" qui signifie "move" sert à déplacer des éléments (fichiers et dossiers) d'une source vers une destination. Cette commande sert aussi à renommer un élément. Pour faire une copie d'un fichier ou d'un dossier, on utilisera plutôt la commande cp.

C'est une commande très pratique et je dirais même qu'elle fait partie des commandes incontournables sous Linux ! C'est une commande native sur toutes les distributions, que ce soit sur Debian, Ubuntu, Rocky Linux, etc.... D'où l'intérêt de vous la présenter dans cet article à travers divers exemples. Pour ma part, je manipule sur une machine sous Debian 11.

Version initiale de l'article : 11 juillet 2012

II. Utilisation de la commande mv

A. Déplacer un fichier vers un autre dossier

Puisque la commande mv sert à déplacer des éléments, commençons par déplacer un fichier vers un autre dossier. Autrement dit, c'est comme si on faisait un "couper-coller". On commence par créer un fichier nommé "it-connect.txt" dans "/home/flo" et qui va servir de cobaye.

cd /home/flo
touch it-connect.txt

Pour déplacer le fichier it-connect.txt vers le répertoire "/tmp", on exécute :

mv it-connect.txt /tmp/

Nous pouvons aussi préciser le chemin complet :

mv /home/flo/it-connect.txt /tmp/

Commande mv - déplacer des dossiers et fichiers sous Linux

On peut voir que ça fonctionne parfaitement :

Linux - Commande mv

B. Déplacer un dossier vers un autre dossier

La commande mv peut aussi déplacer des dossiers complets, c'est-à-dire le dossier avec son contenu. Toujours dans "/home/flo", on crée un répertoire nommé "data", puis un fichier "it-connect.txt" à l'intérieur.

mkdir data
touch data/it-connect.txt

Ensuite, on déplace ce répertoire vers /tmp/ :

mv /home/flo/data/ /tmp/

Vous voyez, la syntaxe n'est pas plus compliquée. Puisqu'il s'agit d'un dossier, il y a un "/" à la fin du chemin de la source.

C. Déplacer plusieurs fichiers vers un dossier

Plutôt que d'enchaîner plusieurs fois la commande mv, on peut déplacer plusieurs fichiers en une seule fois. Commençons par créer 3 fichiers :

touch it-connect1.txt it-connect2.txt it-connect3.txt

Ensuite, on peut déplacer ces trois fichiers vers "/tmp/" comme ceci :

mv it-connect1.txt it-connect2.txt it-connect3.txt /tmp/

Pour que ce soit plus rapide à saisir, on peut utiliser le caractère wildcard ("*") pour prendre tous les fichiers correspondants à ce filtre. Ainsi, grâce à la commande ci-dessous, on cible tous les éléments dont le nom commence par "it-connect".

mv it-connect1.txt it-connect2.txt it-connect3.txt /tmp/

D. Déplacer plusieurs dossiers vers un autre dossier

Dans le même esprit, on peut déplacer plusieurs dossiers vers un autre dossier. On peut créer deux dossiers avec mkdir :

mkdir data1 data2

Puis, on déplace ces deux dossiers vers le répertoire "/tmp/" :

mv data1/ data2/ /tmp/

E. Déplacer tout le contenu d'un dossier

Parfois, on veut déplacer tout le contenu d'un dossier, c'est-à-dire tous les fichiers qu'il contient, ainsi que tous les sous-dossiers et leurs fichiers, sans pour autant toucher au répertoire source.

Dans cet exemple, on crée un dossier nommé "data1", qui contient un fichier et un sous-dossier, qui contient lui même un fichier. L'objectif est de déplacer le contenu de "data1" vers "/tmp/".

mkdir data1
mkdir data1/photos
touch data1/it-connect.txt
touch data1/photos/logo.png

Au moment de déplacer le contenu avec la commande mv, on ne précise pas simplement "data1/", sinon on va déplacer le dossier en lui-même. Ici, on précise un astérisque après le "/" pour spécifier que c'est le contenu que l'on souhaite déplacer, puis on indique le répertoire cible.

mv data1/* /tmp/

Dans ce cas présent, le nouveau chemin d'accès du répertoire "photos" sera "/tmp/photos".

F. Déplacer un fichier si la source est plus récente

La commande mv contient différentes commandes plutôt cool... Nous allons en utiliser quelques-unes. Par exemple, l'option "-u" permet de déplacer un fichier uniquement si le fichier source est plus récent que le fichier de destination. Bien sûr, cela s'applique dans le cas où le fichier de destination existe déjà.

Voici un exemple :

mv -u /home/flo/it-connect.txt /tmp/it-connect.txt

G. Déplacer tous les fichiers d'un dossiers sauf un fichier spécifique

Avant de voir d'autres options, regardons un cas très particulier : nous souhaitons déplacer tout le contenu d'un répertoire, à l'exception d'un seul fichier. La commande mv ne dispose pas d'options pour faire une exclusion, mais on peut ruser en utilisant une autre commande... Plusieurs solutions sont possibles. Voici un exemple basé sur la commande ls.

On crée trois fichiers :

touch it-connect1.txt it-connect2.txt it-connect3.txt

Maintenant, on va tout déplacer sauf le fichier "it-connect2.txt" ! Ce qui donne :

mv $(ls --ignore=it-connect2.txt)

Ainsi, tout le contenu sera copié sauf ce fichier ! On peut ajouter d'autres exclusions les unes à la suite des autres :

mv $(ls --ignore=it-connect2.txt --ignore=it-connect1.txt) /tmp/

Commande mv avec exclusion sur un fichier

H. Renommer un fichier ou un dossier

Voyons comment renommer un élément avec la commande mv, que ce soit un fichier ou un dossier. Commençons par créer un fichier :

touch it-connect.txt

On décide de renommer le fichier "it-connect.txt" en "it-connect.txt.old". C'est comme si on déplaçait le fichier au même endroit, en changeant son nom.

mv it-connect.txt it-connect.txt.old

Exemple en image :

Renommer avec la commande mv

Pour un dossier, c'est le même principe si ce n'est que l'on retrouve le "/" à la fin du nom comme pour les cas précédents.

mkdir data2021
mv data2021/ data2022/

I. Demande de confirmation avec la commande mv

Dans le cas où il y a un conflit, c'est-à-dire que le fichier de destination existe déjà, la commande mv ne se pose pas de question : elle écrase le fichier de destination. Néanmoins, on peut ajouter l'option "-i" pour qu'une demande de confirmation soit affichée en cas de conflit.

On crée le même fichier à deux emplacements différents :

touch /tmp/it-connect.txt
touch /home/flo/it-connect.txt

Ensuite, on déplace le fichier d'un emplacement vers l'autre, en ajoutant l'option "-i".

mv -i /home/flo/it-connect.txt /tmp/it-connect.txt

La commande mv indique un message et nous demande de faire un choix :

mv : voulez-vous écraser '/tmp/it-connect.txt' ?

Ouf ! Je n'étais pas loin d'effacer un fichier critique...! Le fait d'écraser automatiquement peut être pratique, dans un script par exemple, mais cela peut aussi être dangereux donc cette option est à connaître.

Commande mv - demande de confirmation

J. Commande mv : ne pas écraser les fichiers existants

En cas de conflit, on peut faire en sorte de ne pas écraser le fichier de destination, sans avoir à le préciser manuellement. Ainsi, on inverse le mode de fonctionnement par défaut. Il suffit d'ajouter l'option "-n" :

mv -n /home/flo/it-connect.txt /tmp/it-connect.txt

Dans le cas d'un conflit, l'opération sera annulée. Aucune information ne sera précisée dans la console.

III. Conclusion

Grâce à ce tutoriel, vous avez suffisamment d'exemples pour maîtriser la commande mv sous Linux et déplacer vos fichiers et dossiers !

The post La commande mv sous Linux : exemples d’utilisation first appeared on IT-Connect.

Bash : comment stocker le résultat d’une commande dans une variable ?

jeudi 15 septembre 2022 à 07:15

I. Présentation

Dans ce tutoriel, nous allons apprendre à stocker le résultat d'une commande Linux dans une variable. Cette manipulation simple est très utile lors d'écriture de scripts Bash (avec l'extension.sh) car il peut arriver que l'on ait besoin de manipuler le résultat d'une commande. Dans ce cas, on affecte le résultat de la commande à une variable, ce qui permet de l'exploiter par la suite.

Version initiale de l'article : 11 février 2012.

II. La syntaxe : affecter le résultat d'une commande à une variable

Pour stocker le résultat d'une commande dans une variable, on utilisera la syntaxe suivante :

variable=$(commande);

Ainsi, le résultat de n'importe quelle commande se retrouve dans une variable que l'on peut découper, modifier, afficher... Libre à vous de choisir le nom que vous souhaitez pour cette variable.

III. Exemple

Prenons un exemple concret. La première chose à faire, c'est déterminer la commande et vérifier sa syntaxe. Ensuite, quand la syntaxe de la commande est valide, nous pouvons faire en sorte de stocker son résultat dans une variable.

Imaginons que l'on souhaite récupérer la date d'hier sous la forme "<jour><mois>.<année>". On va pouvoir utiliser la commande date pour obtenir cette information :

date -d "1 day ago" +%d%b%Y

Ce qui retourne :

14sept.2022

C'est correct. Autre format possible : "<Année><Mois><Jour>", ce qui donne :

date -d "1 day ago" +%Y%m%d

Comme résultat :

20220914

Gardons à l'esprit que c'est le résultat de la commande "date -d "1 day ago" +%d%b%Y" que nous souhaitons stocker dans une variable. On commence par créer un fichier avec l'extension .sh et on ajoute le Shebang :

#/bin/bash

Ensuite, nous allons créer une variable nommée "Yesterday" qui contiendra le résultat de la commande évoquée précédemment.

#/bin/bash 
Yesterday=$(date -d "1 day ago" +%d%b%Y);

Il est important d'encadre la commande dans un bloc "$()", comme dans l'exemple ci-dessus.

Ensuite, nous pouvons réutiliser cette variable comme bon nous semble... Par exemple, on peut créer un dossier qui prend comme nom le contenu de cette variable :

#/bin/bash 
Yesterday=$(date -d "1 day ago" +%d%b%Y);
mkdir /home/$Yesterday

Quand on appelle la variable, il est impératif de préfixer son nom par le symbole "$" afin que le nom de la variable soit remplacé par sa valeur. Grâce à ce script, on crée un dossier dans "/home/" qui sera nommé avec la date d'hier. Ceci n'est bien sûr qu'un exemple ! A vous de jouer !

The post Bash : comment stocker le résultat d’une commande dans une variable ? first appeared on IT-Connect.

Comment configurer la date et l’heure sous Linux ?

jeudi 15 septembre 2022 à 07:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à configurer la date et l'heure sur une machine Linux, en utilisant la commande date. Cette commande native est intégrée aux différentes distributions Linux : Ubuntu, Debian, etc... Elle sert principalement à afficher la date et l'heure actuelle, ainsi qu'à effectuer la configuration de sa machine pour modifier la date et l'heure. Nous verrons que l'on peut faire aussi d'autres choses. Nous verrons également comment utiliser la commande timedatectl.

Si vous souhaitez savoir depuis combien de temps votre système Linux tourne, regardez ce tutoriel :

Version initiale de l'article : 11 janvier 2012

II. Syntaxe de la commande date

Si vous exécutez la commande "date" dans un terminal Linux sans préciser d'options, c'est la date et l'heure actuelle qui sera retournée, avec le fuseau horaire en complément. Par exemple :

date
jeu. 15 sept. 2022 11:53:56 CEST

C'est pratique lorsque l'on cherche à voir la date et l'heure locale d'une machine Linux.

Pour la suite, il va falloir utiliser plutôt ce format :

date <option> <format>

Avant de passer aux exemples, je souhaitais vous montrer comment récupérer la date selon le format "Année Mois Jour", sans espace. C'est pratique pour nommer un fichier ou une sauvegarde avec la date du jour, au format compact.

date +%Y%m%d

Cette commande retourne bien la date actuelle, dans un format réduit :

Linux date

III. Exemples d'utilisation de la commande date

A. Modifier la date et l'heure du système

Commençons par l'exemple qui fait l'objet de cet article : modifier la date et l'heure du système. L'option "--set" que l'on peut raccourcir par "-s" doit être utilisée. Pour définir le 15 septembre 2022 à 12:00:00 comme date et heure, cela donne :

date --set "15 SEP 2022 12:00:00"
ou
date -s "15 SEP 2022 12:00:00"

On peut considérer la syntaxe suivante :

date --set "<jour> <mois> <année> <heure>:<minutes>:<secondes>"

Pour le mois, il faut l'indiquer sur trois lettres, mais en se basant sur les noms anglais. Ainsi, si l'on prend l'exemple du mois de février, ce sera "FEB" pour "February", et non "FEV". En exécutant la commande "date", on peut voir que le système a bien pris en compte la modification.

Nous pouvons aussi modifier uniquement la date, ou uniquement l'heure, en précisant le format que l'on veut utiliser.

date +%Y%m%d -s "20220915"
date +%T -s "10:13:13"

B. Obtenir une date précise

La commande date sert aussi à effectuer des calculs sur les dates, de manière à obtenir une date antérieure. Non pas pour altérer l'heure du système, mais pour récupérer une autre date, ce qui peut être utile dans un script.

On peut déterminer une date spécifique en précisant l'option "-d", comme dans l'exemple ci-dessous avec le "15/09/2022" à minuit :

date -d "2022-09-15 00:00:00"
jeu. 15 sept. 2022 00:00:00 CEST

Récupérer la date d'hier :

date --date="yesterday"

Bien sûr, nous pouvons stocker cette information dans une variable pour la réutiliser. L'exemple ci-dessous stocke l'information dans une variable nommée "DateHier".

DateHier=$(date --date="yesterday")

Récupérer la date 7 jours avant :

date --date="7 day ago"

Récupérer la date actuelle - 1 an :

date --date="1 year ago"

Récupérer la date de demain :

date --date="tomorrow"

Récupérer la date actuelle + 7 jours :

date --date="7 day"

Récupérer la date actuelle + 1 an :

date --date="1 year"

C. Date de dernière modification d'un fichier

Il y a plusieurs manières d'obtenir la date de dernière modification d'un fichier, et la commande date fait partie des commandes qui permettent d'obtenir cette information. Prenons l'exemple du fichier système "/etc/hostname" qui contient le nom d'hôte :

date -r /etc/hostname

IV. L'alternative : la commande timedatectl

La commande timedatectl permet aussi de modifier la date et l'heure du système, à l'instar de la commande date. Lorsque l'on exécute cette commande, elle affiche des informations complémentaires vis-à-vis de la commande date :

timedatectl
Local time: jeu. 2022-09-15 13:41:18 CEST
Universal time: jeu. 2022-09-15 11:41:18 UTC
RTC time: jeu. 2022-09-15 11:41:18
Time zone: Europe/Paris (CEST, +0200)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no

Il y a l'heure locale, l'heure universelle, mais aussi le fuseau horaire (Time zone), l'état du service NTP pour la synchronisation de l'heure (NTP service), etc.

Linux timedatectl

A. Changer la date et l'heure avec timedatectl

Pour définir une nouvelle date, on utilise la syntaxe suivante :

timedatectl set-time YYYY-MM-DD

Où "YYYY" correspond à l'année, "MM" au mois et "DD" au jour. Pour le 15 septembre 2022, cela donne :

timedatectl set-time 2022-09-15

On peut aussi modifier l'heure en même temps :

timedatectl set-time YYYY-MM-DD HH:MM:SS

Où "HH" correspond à l'heure, "MM" aux minutes et "SS" aux secondes. Au moment de changer la date et l'heure, si vous obtenez le message "Failed to set time: Automatic time synchronization is enabled", cela signifie que la synchronisation NTP est activée. Pour gérer la synchronisation NTP :

# Désactiver la synchronisation NTP
timedatectl set-ntp 0
# Activer la synchronisation NTP
timedatectl set-ntp 1

Dans le cas où la synchronisation NTP est activée, il faut veiller à configurer un serveur NTP que l'on va utiliser comme source de temps pour se synchroniser. Sinon, cela n'a pas réellement d'intérêt... La configuration s'effectue dans le fichier "/etc/systemd/timesyncd.conf".

B. Changer de fuseau horaire avec timedatectl

Si le fuseau horaire de votre machine ne vous convient pas, vous pouvez le changer. Tout d'abord, vous pouvez lister les différents fuseaux horaires disponibles :

timedatectl list-timezones

Ensuite, il faut repérer la valeur dans la - longue - liste. Une fois que c'est fait, on peut changer le fuseau horaire. Voici un exemple pour utiliser le fuseau horaire "Europe/Paris" :

timedatectl set-timezone "Europe/Paris"

V. Conclusion

Grâce à ce tutoriel, vous êtes capable de gérer la date et l'heure sous Linux, avec les commandes date et timedatectl !

The post Comment configurer la date et l’heure sous Linux ? first appeared on IT-Connect.