FreshRSS

🔒
❌ À propos de FreshRSS
Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierIT-Connect

Comment protéger son serveur Linux des attaques avec CrowdSec ?

7 juillet 2021 à 11:30

I. Présentation

Vous connaissez surement Fail2Ban, un outil qui permet d'analyser les journaux de votre machine Linux dans le but de bannir les adresses IP correspondantes à des hôtes qui ont des comportements malveillants ou suspects. Dans ce tutoriel, nous allons voir comment mettre en place CrowdSec pour protéger son serveur Linux des attaques.

Qu'est-ce que l'outil CrowdSec ?

CrowdSec est un outil open source, gratuit, français, qui s'inspire de Fail2ban et qui a pour objectif de protéger votre serveur, en détectant puis en bloquant les attaques.

Lorsque des adresses IP sont bloquées par une instance de CrowdSec, l'information est remontée dans une base centralisée au travers d'une API : ce qui permet d'avoir une liste d'adresses IP malveillantes communautaire et gérée par CrowdSec. Bien sûr, il y a un mécanisme de réputation qui entre en jeu : une adresse IP n'est pas bannie chez tout le monde dès le premier signalement, c'est un peu plus complexe que cela vous vous en doutez bien.

Actuellement, CrowdSec est disponible en version 1.0. Suite à la sortie de cette version, CrowdSec a fait évoluer l'architecture interne de sa solution puisque les composants (client, bouncers, processus) communiquent entre eux via une API REST locale. L'utilisation d'une API est particulièrement intéressante pour rendre indépendants les composants les uns des autres et éviter d'attaquer directement la base de données (c'est réservé au service de l'API REST locale).

Pour ce premier article au sujet de CrowdSec et en guise d'introduction, je vous propose de prendre un serveur Web Nginx comme cible et d'apprendre à le protéger avec CrowdSec.

Voici les prérequis pour suivre ce tutoriel :

  • Une machine Debian avec un serveur Web Nginx opérationnel et accessible depuis l'extérieur (pour l'attaque distante)
  •  Une machine avec l'outil Nikto installé (cela peut-être via WSL) pour réaliser l'attaque

II. Installation de CrowdSec sur Debian 10

Pour l'installation, il y a plusieurs façons de faire : simplement aller piocher dans les dépôts de Debian (sur Debian Bullseye pour le moment), utiliser le dépôt CrowdSec, installer soi-même le package .deb, l'installer en mode interactif à partir d'une archive et d'un script d'installation, ou alors à partir d'une image Docker.

Nous allons utiliser le dépôt CrowdSec. Il suffit de l'ajouter à notre machine et de mettre à jour la liste des paquets :

wget -qO - https://s3-eu-west-1.amazonaws.com/crowdsec.debian.pragmatic/crowdsec.asc |sudo apt-key add - && echo "deb https://s3-eu-west-1.amazonaws.com/crowdsec.debian.pragmatic/$(lsb_release -cs) $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/crowdsec.list > /dev/null sudo apt-get update
sudo apt-get update

Ensuite, on lance l'installation de crowdsec :

sudo apt-get install crowdsec

Lors de l'installation, Crowdsec va analyser votre machine à la recherche de services qu'il prend en charge. Dans cet exemple, il détecte bien le système Linux, mais également les fichiers journaux de Nginx : access.log et error.log.

Ce qui donne :

Grâce à cette analyse de notre machine locale, Crowdsec va installer les collections correspondantes aux services détectés et qui vont lui permettre de détecter les attaques.

Pour lister les collections CrowdSec, utilisez la commande suivante du CLI CrowdSec (cscli) :

cscli collections list

À la fin de l'installation, on redémarre Crowdsec :

sudo systemctl reload crowdsec

Passons à l'utilisation de Crowdsec en prenant une simulation d'attaque comme exemple.

III. Scan du serveur Nginx : comment Crowdsec va-t-il réagir ?

A. Première analyse de notre serveur Web avec Nikto

Nikto est un outil open source qui permet de scanner les serveurs Web. Il permet de rechercher des vulnérabilités, des fichiers dangereux, etc... À l'aide de cet outil, on va déclencher un scanner sur notre serveur Web Nginx pour voir comment réagit Crowdsec. Il s'agit simplement d'un scanne, et non d'une attaque.

Avant toute chose, manipulons quelques instants la ligne de commande CrowdSec : cscli. Pour lister les décisions actives, c'est-à-dire les adresses IP que CrowdSec a décidé de bloquer, il faut exécuter la commande suivante :

cscli decisions list

On peut voir que la liste est vide : No active decisions. Essayez maintenant avec un paramètre supplémentaire :

cscli decisions list --all

Là, nous avons d'autres adresses IP : il s'agit des adresses IP obtenues à partir de la liste centralisée et partagée par CrowdSec directement (construire à partir des instances CrowdSec et des remontées associées).

Passons à l'utilisation de Nikto.

Depuis une machine distante, située sur un autre réseau, je vais déclencher un scan à destination de mon site it-connect.tech. Pour cette attaque, je vais utiliser l'outil mentionné précédemment : Nikto. Voici la commande à utiliser pour déclencher l'analyse :

nikto -h it-connect.tech

Nikto va requêter le site it-connect.tech à la recherche de vulnérabilités et de défaut de configuration. Sur le serveur Web, relancez la commande précédente : il se passe des choses.

cscli decisions list

Mon adresse IP fait l'objet d'une surveillance et Crowdsec a envie de la bannir pour une durée de 4 heures ! On peut voir qu'il y a deux événements associés à cette adresse IP.

Je dis bien "qu'il a envie" de la bannir, car il ne l'a pas fait, en tout cas, pour le moment ! 😉 - Disons que pour le moment, CrowdSec a identifié l'adresse IP malveillante.

Pour en savoir un peu plus, listons les alertes :

cscli alerts list

Le champ "VALUE" nous donne l'adresse IP source : il s'agit de l'adresse IP publique de la machine qui exécute le scanner via Nikto. On peut voir qu'il y a de nombreuses alertes générées par CrowdSec suite au scan que j'ai déclenché.

B. L'intervention du Bouncer Nginx

Pour que CrowdSec puisse bloquer une adresse IP, autrement dit qu'il puisse mettre en pratique la décision, il s'appuie sur des Bouncers. Ces bouncers vont permettre de contrer les menaces grâce à différentes actions (bloquer, présentation d'un Captcha, etc.).

Un bouncer s'apparente à un module qui va appliquer la décision. Par exemple, si l'on installe le Bouncer Nginx (ce que nous allons faire juste après), CrowdSec va bloquer mon adresse IP directement dans Nginx (et pas sur le firewall de ma machine Linux, vraiment dans Nginx) pour appliquer l'action "bannir".

Voici un lien vers la liste des bouncers disponibles : CrowdSec - Bouncers

Note : il existe de nombreux bouncers et d'autres sont en cours de développement. Par exemple, il y a un bouncer CloudFlare, un bouncer WordPress, mais pas encore de bouncer Apache.

Pour protéger notre serveur Nginx, on va installer le Bouncer Nginx. Il faut que l'on télécharge le paquet pour l'installer manuellement. Par la suite, il sera possible d'installer encore plus simplement les Bouncers.

À partir de la ligne de commande, on télécharger le fichier "cs-nginx-bouncer.tgz" :

wget https://github.com/crowdsecurity/cs-nginx-bouncer/releases/download/v0.0.4/cs-nginx-bouncer.tgz

Ensuite, on décompresse l'archive obtenue :

tar -xzvf cs-nginx-bouncer.tgz

On se positionne dans le dossier "cs-nginx-bouncer-v0.0.4" :

cd cs-nginx-bouncer-v0.0.4/

On lance l'installation :

sudo ./install.sh

D'ailleurs, le script d'installation va en profiter pour installer quelques dépendances, si elles sont manquantes bien sûr. Voici la liste des dépendances installées sur ma machine par ce Bouncer : lua, lua-sec, libnginx-mod-http-lua, lua-logging. Pour information, LUA est un système qui permet de développer et d'intégrer des modules au sein de Nginx.

Pour vérifier que notre bouncer est opérationnel, on va lister les bouncers :

sudo cscli bouncers list

Il est bien là et il est valide : parfait !

Avant d'aller plus loin, on va redémarrer Nginx :

sudo systemctl restart nginx

C. Deuxième analyse avec Nikto : CrowdSec va-t-il me bannir ?

Désormais, CrowdSec dispose d'un bouncer capable de nous bannir si l'on effectue des actions suspectes. On va vérifier s'il fonctionne correctement.

Sur la machine Kali Linux, on va tenter de se connecter à notre site Web. On va effectuer une requête avec l'outil CURL :

curl -I it-connect.tech

On voit bien que le code retourné par la page est "HTTP/1.1 200 OK" : cela signifie que l'on a pu accéder à la page du site et qu'il n'y a pas eu d'erreur.

Maintenant, je relance mon scanne Nikto :

nikto -h it-connect.tech

Dans la foulée, je relance ma commande CURL : oups, j'ai un code différent cette fois-ci ! J'obtiens le code "HTTP/1.1 403 Forbidden",  ce qui correspond à un accès refusé. Il y a de fortes chances pour que je sois bloqué par CrowdSec !

Nous allons le vérifier facilement avec la commande suivante (que l'on a vue précédemment) :

cscli decisions list

Sans réelle surprise, mon adresse IP apparaît bien et je suis bannie pour une durée de 4 heures !

Puisqu'il s'agit d'un faux positif étant donné que je m'attaque moi-même, cela me donne l'occasion de vous montrer comment débannir manuellement une adresse IP (il faut remplacer X.X.X.X par l'adresse IP publique) :

cscli decisions delete --ip X.X.X.X

De la même façon, on peut aussi bannir manuellement une adresse IP :

cscli decisions add --ip X.X.X.X

Dans ce cas, la raison du bannissement sera "Manual ban from <login API>". Par défaut, une adresse IP est bannie pendant 4 heures, mais on peut être un peu plus méchant et partir sur 24 heures directement :

cscli decisions add --ip X.X.X.X --duration 24h

IV. Le tableau de bord CrowdSec via Metabase

CrowdSec propose un container Docker basé sur Metabase pour bénéficier d'un tableau de bord très sympathique qui va permettre d'analyser les attaques subies par sa machine. Au préalable, il faut penser à installer Docker (apt-get install docker.io -y) sur la machine. Ensuite, on peut créer le container de cette façon :

sudo cscli dashboard setup --listen 0.0.0.0

À la fin de la création, le nom d'utilisateur et le mot de passe s'affichent dans la console :

À partir de l'hôte local ou d'un hôte distant, on peut accéder à l'interface de Metabase et s'authentifier.

Une fois connecté, on obtient des statistiques précises et des graphiques : nombre de décisions actives, nombre d'alertes, répartition des attaques par adresses IP, etc... Je me suis amusé à attaquer ma propre machine, mais visiblement je ne suis pas le seul a avoir essayé ! 😉

Un peu plus bas dans la page, nous avons d'autres graphes. Cette interface est très pratique pour effectuer des analyses pendant ou après une attaque.

Note : la commande cscli metrics permet d'obtenir des informations sur les métriques à partir de la ligne de commande, mais bon, une fois que l'on a gouté à l'interface Metabase c'est difficile de s'en passer.

Il faut savoir que CrowdSec est capable d'intégrer à ce tableau de bord d'anciens logs générés par vos applications avant même que l'outil soit déployé sur votre serveur.

Lorsque vous avez terminé d'utiliser le dashboard, vous pouvez l'arrêter temporairement grâce à cette commande :

sudo cscli dashboard stop

Pour le relancer, il suffira d'exécuter :

sudo cscli dashboard start

V. Conclusion

Ce premier tutoriel au sujet de CrowdSec touche à sa fin : je dis bien "ce premier article", car je pense qu'il y en aura d'autres sur le sujet ! Nous avons vu le bouncer pour Nginx, mais il existe un bouncer nommé "cs-firewall-bouncer" et qui va permettre à CrowdSec d'interagir avec le firewall, notamment iptables et nftables.

Grâce à CrowdSec, nous avons pu mettre en place un outil efficace pour protéger notre serveur Web en détectant et bloquant les attaques.

Pour finir, voici la commande qui va vous permettre de voir s'il y a des mises à jour disponibles pour les différents bouncers, collections, etc... De votre installation :

sudo cscli hub update

Ensuite, pour déclencher la mise à jour :

sudo cscli hub upgrade

Quelques liens :

Voilà, c'est tout pour cette fois !

Que pensez-vous de CrowdSec ? Pensez-vous le tester pour protéger un ou plusieurs de vos serveurs ?

Merci à Thibault Koechlin d'avoir pris le temps de me présenter CrowdSec.

The post Comment protéger son serveur Linux des attaques avec CrowdSec ? first appeared on IT-Connect.

Windows 11 affichera le temps nécessaire à l’installation des mises à jour

7 juillet 2021 à 07:53

Microsoft travaille sur une nouvelle fonctionnalité au sein de Windows 11 qui permettra d'afficher le temps nécessaire à l'installation des mises à jour. Une information qui pourrait s'avérer utile, si elle est fiable bien entendu.

Il est vrai que suite à l'installation de mises à jour sur une machine Windows, il faut redémarrer pour finaliser l'installation (ce qui d'ailleurs amuse les utilisateurs de Linux 😉 ). On ne sait jamais combien de temps cela va prendre, donc si on est pressé, on préfère mettre le PC en veille et l'installation des mises à jour : on verra cela plus tard !

Avec Windows 11, Microsoft va tenter de nous éclairer. En effet, Microsoft a annoncé que Windows 11 indiquera une estimation sur le temps que prendrait un redémarrage pour installer les mises à jour. Pour obtenir cette information, il faudra accéder à Windows Update dans les paramètres de votre PC, ou alors accéder au menu Démarrer puisque ce sera indiqué à côté des boutons "Eteindre" et "Redémarrer".

Voici un aperçu (source des images : Reddit) :

On ne sait pas comment Microsoft réalise cette estimation, mais on peut imaginer que cela se base sur les performances du disque de la machine, et pourquoi pas sur les remontées liées à la télémétrie.

Reste à savoir si cette estimation sera fiable, car elle devra être assez précise et proche de la réalité pour qu'elle soit pertinente (et que l'on puisse avoir confiance en l'estimation). Pour le moment, la fonctionnalité est en test auprès de quelques utilisateurs du programme Windows Insiders. Il s'avère qu'elle indique toujours la même valeur pour le temps estimé, à savoir 5 minutes : on ne dira rien, ce n'est qu'une phase de test. 😉

Source

The post Windows 11 affichera le temps nécessaire à l’installation des mises à jour first appeared on IT-Connect.

Vulnérabilité PrintNightmare : le correctif de Microsoft est disponible !

7 juillet 2021 à 07:15

Microsoft vient de publier une mise à jour de sécurité pour protéger vos serveurs et vos machines contre la faille Zero Day nommée PrintNightmare et qui touche le service Spouleur d'impression de Windows.

Alors que certains d'entre vous ont peut-être cherché à appliquer les recommandations de l'ANSSI, que j'ai également détaillées dans mon article "Windows : comment se protéger de la vulnérabilité PrintNightmare ?", Microsoft a publié un correctif à installer directement sur vos machines.

En fonction des systèmes d'exploitation, le numéro de KB n'est pas le même. Voici la liste pour les différentes versions de Windows :

- Windows 10 version 21H1 (KB5004945)
- Windows 10 version 20H1 (KB5004945)
- Windows 10 version 2004 (KB5004945)
- Windows 10 version 1909 (KB5004946)
- Windows 10 version 1809 et Windows Server 2019 (KB5004947)
- Windows 10 version 1803 (KB5004949)
- Windows 10 version 1507 (KB5004950)
- Windows 8.1 et Windows Server 2012 R2 (patch mensuel : KB5004954 / mise à jour de sécurité seule : KB5004958)
- Windows 7 SP1 et Windows Server 2008 R2 SP1 (patch mensuel : KB5004953 / mise à jour de sécurité seule : KB5004951)
- Windows Server 2008 SP2 (patch mensuel : KB5004955 / mise à jour de sécurité seule : KB5004959)

On peut s'étonner de ne pas voir Windows Server 2016 dans la liste de correctifs : Microsoft a précisé que le correctif allait arriver rapidement pour cette version. Ce serait bien, car Windows Server 2016 est très utilisé en entreprise.

Les mises à jour sont dès à présent disponibles dans les canaux habituels : Windows Update, Microsoft Catalog et WSUS.

Malheureusement, ce correctif ne semble pas aussi efficace qu'il en a l'air ! Matthew Hickey, un chercheur en sécurité, a testé l'efficacité du correctif publié par Microsoft. Résultat : le correctif protège les machines contre la possibilité d'effectuer une exécution de code à distance, mais il ne semble pas efficace si l'attaquant cherche à effectuer une élévation de privilèges en local. Malgré l'installation du correctif, il a pu utiliser le PoC de @HackerFantastic.

The Microsoft fix released for recent #PrintNightmare vulnerability addresses the remote vector - however the LPE variations still function. These work out of the box on Windows 7, 8, 8.1, 2008 and 2012 but require Point&Print configured for Windows 2016,2019,10 & 11(?). 🤦‍♂️https://t.co/PRO3p99CFo

— Hacker Fantastic (@hackerfantastic) July 6, 2021

Dans tous les cas, il est recommandé d'installer le correctif dès à présent. Par ailleurs, pensez à désactiver le Spouleur d'impression sur vos contrôleurs de domaine : c'est une bonne pratique. 😉

Source

The post Vulnérabilité PrintNightmare : le correctif de Microsoft est disponible ! first appeared on IT-Connect.

Microsoft alerte les utilisateurs au sujet d’une faille critique dans PowerShell 7

6 juillet 2021 à 08:00

CVE-2021-26701 : Derrière ce nom se cache une vulnérabilité critique qui touche PowerShell 7 à cause d'un bug de sécurité dans .NET Core. Grâce à cette faille, il est possible d'exécuter du code à distance sur la machine cible.

Pour rappel, PowerShell 7 (appelé également PowerShell Core 7) est un langage de scripting développé par Microsoft, qui s'appuie sur .NET Core et qui est compatible avec Windows bien sûr, mais également Linux et macOS.

Pour protéger votre machine, il est recommandé d'installer une version patchée de PowerShell 7, à savoir : PowerShell 7.0.6 ou PowerShell 7.1.3. Il est à noter que Windows PowerShell 5.1 n'est pas concerné par cette faille de sécurité (il ne s'appuie pas sur le même framework .NET).

Ce qui pose problème, c'est le paquet "System.Text.Encodings.Web" et sa façon d'encoder le texte. Au niveau de .NET Core, voici les versions qui contiennent cette vulnérabilité :

- System.Text.Encodings.Web (version 4.0.0 à 4.5.0) - corrigé dans la version 4.5.1
- System.Text.Encodings.Web (version 4.6.0 à 4.7.1) - corrigé dans la version 4.7.2
- System.Text.Encodings.Web (version 5.0.0) : corrigé dans la version 5.0.1

En mettant à jour PowerShell, .NET Core est mis à jour également d'où l'intérêt de le faire dès que possible. Par contre, si vous utilisez .NET Core sans PowerShell, il faudra effectuer une mise à jour du framework sur votre machine. En complément, si vous avez Microsoft Visual Studio 2017 ou 2019, sur Windows ou MacOS, il y a une mise à jour à effectuer également.

La faille en question, elle n'est pas nouvelle : Microsoft l'a corrigée au sein de PowerShell à l'occasion du Patch Tuesday de février 2021. Néanmoins, ces derniers jours Microsoft en remet une couche quant à l'importance de se protéger de cette vulnérabilité. La mise à jour de PowerShell étant la seule solution, il est fortement recommandé d'effectuer la mise à jour vers les versions les plus récentes.

Source

The post Microsoft alerte les utilisateurs au sujet d’une faille critique dans PowerShell 7 first appeared on IT-Connect.

Audacity : racheté par une société russe, il collecte vos données personnelles !

5 juillet 2021 à 21:51

Voilà une mauvaise nouvelle ! Le logiciel Audacity, bien connu et reconnu des amateurs de musique, a pris une tournure inquiétante suite à son rachat en mai 2021 par Muse Groupe.

Pour rappel, Audacity est un logiciel gratuit et open source qui permet de créer des fichiers audio en s'appuyant sur plusieurs pistes. Très pratique pour les amateurs de musique et les personnes qui enregistrent des podcasts puisque l'on peut agir directement sur les pistes.

En mai 2021, il a été racheté par une société russe nommée Muse Groupe. Suite à ce rachat, les nouveaux propriétaires ont commencé à apporter des modifications au logiciel et cela n'annonce rien de bon pour la suite !

Tout d'abord, la société Muse Groupe a apportée des modifications aux conditions d'utilisation. Désormais, il est spécifié qu'Audacity pourra collecter des données au sujet des utilisateurs et les partager avec ses employés, un conseiller, ou un acheteur potentiel. Clairement, on sent que Muse Group cherche à se rémunérer grâce aux données de ses utilisateurs.

Pour le moment, la liste des données collectées est assez light (nom et version du système d'exploitation, le pays d'utilisation en se basant sur votre adresse IP et le processeur utilisé, rapport d'erreur), mais ce sera à surveiller de près ! Il est précisé que ces informations sont collectées pour améliorer Audacity et pour la partie statistique. Plus étonnant, le logiciel est désormais déconseillé aux moins de 13 ans. Pour un logiciel qui s'utilise en mode hors ligne, cela fait beaucoup.

Concernant le stockage des données, les données des utilisateurs européens seront stockées sur les serveurs en Europe. Cependant, Muse Groupe n'oublie pas de préciser qu'occasionnellement, les données pourront être envoyées vers la Russie et les États-Unis. 

Puisque Audacity est open source, son code source est accessible en libre accès. Reste à voir si un fork d'Audacity verra le jour par la suite ! Si vous connaissez une alternative à Audacity, n'hésitez pas à partager l'information en commentaire ! 😉

Il y a déjà eu une tentative de créer un fork, comme on peut le voir sur GitHub.

Source

The post Audacity : racheté par une société russe, il collecte vos données personnelles ! first appeared on IT-Connect.

Le ransomware REvil s’attaque à Kaseya et à ses nombreux clients

5 juillet 2021 à 15:36

L'éditeur américain Kaseya a été victime d'une attaque informatique vendredi 2 juillet 2021. Cette attaque cible son logiciel de gestion d'infrastructures informatiques : VSA, utilisé par des milliers d'entreprises et des MSP. Cette situation me fait penser à une autre attaque qui a fait beaucoup de bruits il y a plusieurs mois : celle de SolarWinds.

VSA est une solution de type Remote Monitoring Management proposée par Kaseya et particulièrement appréciée par les TPE et PME. Quelques grandes entreprises l'utilisent également et Kaseya compte des dizaines de milliers de clients.

Suite à cette attaque, pour limiter les dommages collatéraux, Kaseya a demandé à ses clients de mettre hors ligne leurs serveurs. Mettre hors ligne les serveurs n'est pas sans conséquence, par exemple, suite à cette attaque, la chaîne de supermarchés suédois Coop a été contrainte de fermer plus de 800 magasins sur la journée de samedi.

Au-delà de l'attaque en elle-même qui permet, par effet de rebond et le logiciel VSA, d'accéder à l'infrastructure de l'entreprise qui utilise ce logiciel, ce qui inquiète particulièrement c'est la présence du ransomware REvil. Qui dit ransomware, dit chiffrement des données. Il s'avère que nous avons le droit à une véritable attaque de type supply-chain.

Dans un premier temps, le serveur VSA est compromis, ce qui permet au pirate de diffuser une fausse mise à jour de l'agent VSA sur les machines associées à ce serveur. Cet agent contient une charge malveillante. Dans un second temps, cette charge malveillante va arriver sur le serveur cible par l'intermédiaire de la mise à jour de l'agent VSA. Là, différentes opérations vont s'enchaîner : désactiver de Microsoft Defender et remplacement par une version obsolète, chargement d'une DLL nommée "mpsvc.dll" sur l'hôte, etc... Pour au final, déclencher la charge utile : le ransomware REvil qui va venir chiffrer les données du serveur cible. 

On comprend mieux pourquoi Kaseya a demandé à ses clients de mettre hors ligne leurs serveurs. D'autant plus que l'agent VSA malveillant ne s'arrête pas là : il continue d'agir sur la machine pour tenter de découvrir d'autres machines sur le réseau, dans le but de chiffrer d'autres machines.

Derrière cette attaque, on retrouve le groupe de pirates REVil, lié à la Russie et qui est particulièrement actif ces derniers mois. D'ailleurs, sur le site de REvil, il y a un message clair : "contre 70 millions de dollars, nous déchiffrons tout...". Quant au timing, il n'est surement pas anodin. En effet, le choix du vendredi 2 juillet 2021 correspond à la vielle d'un week-end de trois jours, qui est prévu pour célébrer la fête nationale aux États-Unis, ce qui correspond à l'Independance Day.

Actuellement, le FBI et le CISA mènent une enquête pour en savoir plus sur l'origine de cette attaque. En fait, ce qui est surprenant c'est que les chercheurs en sécurité du DIVD ont remonté une faille de sécurité à Kaseya. L'éditeur était en phase de validation d'un correctif pour ensuite le déployer à ces clients. Étonnement, le groupe REvil est parvenu à obtenir des informations sur cette faille de sécurité et à l'exploiter avant que le correctif soit déployé.

De son côté, Kaseya relance ses serveurs en mode SaaS petit à petit et les serveurs sur site vont devoir être patchés pour être redémarré en tout sécurité.

Source

The post Le ransomware REvil s’attaque à Kaseya et à ses nombreux clients first appeared on IT-Connect.

Debian – comment installer Nginx en tant que serveur Web ?

5 juillet 2021 à 13:00

I. Présentation

Dans ce tutoriel, nous allons voir comment mettre en place un serveur Web Nginx sur Debian 10, dans le but d'héberger un site Web qui s'appuie sur PHP.

Nginx, que l'on prononce Engine-X, est un logiciel open source qui permet de monter un serveur web, mais également un reverse proxy pour mettre en cache des éléments et assurer la répartition de charge entre plusieurs serveurs Web.

À la différence d'Apache, Nginx est pensé pour les sites à très fort trafic : il est d'ailleurs connu et reconnu pour être un logiciel très performant. Dans de nombreux cas, il n'est pas utilisé en tant que serveur Web directement, mais plutôt en tant que reverse proxy pour gérer les connexions des clients en frontal.

Pour ma part, je vais utiliser une machine sous Debian 10 pour mettre en place le serveur Nginx.

🎥 Débutez avec Nginx grâce à ce tutoriel vidéo (installation, création d'un site, intégration de PHP, mise en place d'un certificat SSL, etc.).

II. Installer Nginx

Commençons par installer le paquet Nginx, mais avant cela mettons à jour le cache de paquets sur notre machine :

sudo apt update -y

Ensuite, on passe à l'installation du paquet Nginx, ce qui est très simple puisqu'il est disponible dans les dépôts officiels.

sudo apt install nginx -y

Lorsque l'installation est effectuée, on peut regarder quelle version est installée à l'aide de la commande suivante (similaire à celle d'Apache ou d'autres paquets) :

sudo nginx -v

Suite à l'installation, le serveur Nginx est déjà démarré, on peut le vérifier avec la commande ci-dessous. Cela permettra de voir qu'il est bien actif.

sudo systemctl status nginx

Pour que notre serveur Web Nginx démarre automatiquement lorsque la machine Linux démarre ou redémarre, on doit exécuter la commande suivante :

sudo systemctl enable nginx

Dès à présent, on peut accéder à la page par défaut du serveur Web à partir d'un navigateur. Si votre machine où est installé Nginx dispose d'une interface graphique, on peut y accéder en local :

http://127.0.0.1

À partir d'une machine distante, utilisez l'adresse IP de votre serveur Web plutôt que l'adresse de loopback (127.0.0.1). Voici la page qui doit s'afficher :

Le contenu de cette page Web correspond au fichier suivant :

/var/www/html/index.nginx-debian.html

En fait, le site par défaut de Nginx est déclaré dans le fichier de configuration suivant :

/etc/nginx/sites-enabled/default

La racine de ce site est :

/var/www/html

On peut le vérifier grâce à la directive suivante :

root /var/www/html;

Avant de continuer, prenez connaissance des informations suivantes :

  • Le fichier de configuration global de Nginx est :
 /etc/nginx/nginx.conf
  • Le dossier qui contient les fichiers de configuration des sites disponibles est :
/etc/nginx/sites-available/
  • Le dossier qui contient les fichiers de configuration des sites actifs est :
/etc/nginx/sites-enabled/

Lorsque l'on crée la configuration d'un nouveau site, on crée le fichier dans "sites-available" et ensuite lorsque le site est prêt à être activé, on crée un lien symbolique vers "sites-enabled". Cela tombe bien, nous allons créer notre premier site Web dans Nginx : l'occasion de voir ce mécanisme, identique à Apache.

III. Créer un premier site dans Nginx

Nous allons déclarer un nouveau site sur notre serveur Web Nginx. Pour ma part, ce sera le site "it-connect.tech", accessible également avec "www.it-connect.tech". Il sera stocké à l'emplacement suivant : /var/www/it-connect.tech.

Commençons par créer le dossier qui va accueillir notre site Web :

sudo mkdir /var/www/it-connect.tech

Ensuite, on va déclarer l'utilisateur www-data comme propriétaire de ce dossier. Il s'agit de l'utilisateur par défaut de Nginx (correspondant à la propriété "user www-data" du fichier nginx.conf).

sudo chown -R www-data:www-data /var/www/it-connect.tech/

On va définir les droits de ce dossier :

sudo chmod 755 /var/www/it-connect.tech/

Ensuite, c'est le moment de créer notre fichier "index.html" : cela correspond à la page d'accueil de notre site Web.

sudo nano /var/www/it-connect.tech/index.html

Dans ce fichier, insérez le code suivant :

<html>
<head></head>
<body>
<h1>Bienvenue sur IT-Connect !</h1>
</body>
</html>

Enregistrez et fermez le fichier. Il est temps maintenant de créer le fichier de configuration de notre site Internet. Dans le dossier "sites-available", on va créer le fichier "it-connect.tech" : grâce à ce nom, il sera facilement identifiable.

sudo nano /etc/nginx/sites-available/it-connect.tech

Dans ce fichier, intégrez la configuration suivante :

server {

    listen 80;
    listen [::]:80;

    root /var/www/it-connect.tech;

    index index.html;
    server_name it-connect.tech www.it-connect.tech;

    location / {
        try_files $uri $uri/ =404;
    }
}

Voici quelques consignes à appliquer quand vous éditez ce fichier, mais aussi pour bien le comprendre :

  • Respectez l'indentation (espace au début des lignes) pour avoir un fichier de configuration lisible facilement
  • Les lignes de type "commentaires" commencent par le caractère "#"
  • Les lignes qui se terminent par ";" correspondent à des directives, c'est-à-dire des options de configuration
  • Le bloc "Server" permet de déclarer un hôte virtuel et à l'intérieur on déclare sa configuration

Maintenant, je vais vous expliquer la signification des différentes directives de la configuration que l'on vient de créer.

listen 80; 
listen [::]:80;

La directive "listen" : la première ligne permet d'indiquer que le serveur Nginx écoute sur toutes ses adresses IPv4, sur le port 80, ce qui correspond au protocole HTTP. La seconde ligne est similaire, mais pour toutes les adresses IPv6 du serveur, toujours sur le port 80.

Pour que le serveur Web écoute seulement sur une adresse IP spécifique du serveur Linux, on pourrait utiliser :

listen 192.168.100.100:80;

En admettant que 192.168.100.100 soit l'adresse IP du serveur Linux.

root /var/www/it-connect.tech;

La directive "root" permet de déclarer la racine du site Internet : en toute logique, on précise la racine que l'on a créée précédemment et où se situe la page index.html.

index index.html;

D'ailleurs, c'est la directive "index" qui permet d'indiquer le nom (ou les noms) des pages par défaut du site. Si l'on définit "index.html", lorsque l'on accède à la racine du site, le serveur Web va chercher à nous présenter le contenu de la page index.html.

server_name it-connect.tech www.it-connect.tech;

La directive "server_name" sert à déclarer le nom de domaine, ou les noms de domaine, concerné par ce bloc "Server". On peut également utiliser une adresse IP. En l'occurrence dans cet exemple, on souhaite que Nginx traite les requêtes qui arrivent sur it-connect.tech et www.it-connect.tech.

location / { 
    try_files $uri $uri/ =404; 
}

Intéressons-nous au dernier bloc de notre fichier de configuration. La directive "location" permet d'indiquer un chemin relatif dans l'URL. En indiquant "/", on cible toutes les requêtes puisqu'une requête commence toujours par "/" après le nom de domaine pour spécifier le chemin vers une page.

Enfin, grâce à la directive "try_files" suivie de $uri et $uri/, nous allons chercher à vérifier l'existence du fichier ou du dossier (d'où le "/") passé en paramètre dans l'URL. La variable $uri reprend automatiquement l'URL saisie par le client qui accède au site. En fait, la règle "try_files $uri $uri/ =404;" permet de retourner une erreur 404 (page introuvable) au client s'il essaie d'accéder à un fichier ou un dossier qui n'existe pas.

Maintenant que vous en savez plus sur la configuration que nous venons de créer, vous pouvez passer à la suite ! 😉

Pour que notre site soit actif et la configuration chargée par Nginx, nous devons créer un lien symbolique : rappelez-vous de l'intérêt du dossier "sites-enabled". Pour créer un lien symbolique et renvoyer "/etc/nginx/sites-enabled/it-connect.tech" vers "/etc/nginx/sites-available/it-connect.tech", voici la commande :

ln -s /etc/nginx/sites-available/it-connect.tech /etc/nginx/sites-enabled/it-connect.tech

On pourrait copier-coller le fichier d'un dossier vers l'autre, mais cela ne serait pas pratique. Grâce à ce lien symbolique, on a qu'un seul fichier à gérer.

Avant de redémarrer le service Nginx, je vous invite à vérifier la syntaxe de la configuration :

sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

C'est tout bon, on peut redémarrer le service Nginx :

sudo systemctl restart nginx

On peut aussi arrêter Nginx et le démarrer, en deux temps :

sudo systemctl start nginx 
sudo systemctl stop nginx

Le site doit être accessible à deux adresses :

http://www.it-connect.tech
http://it-connect.tech

Je n'ai pas abordé la notion d'enregistrement DNS, mais on part du principe que c'est déjà fait de votre côté. Si vous souhaitez tester sans agir sur les enregistrements DNS, vous pouvez modifier le fichier hosts de votre machine Windows ou Linux.

Par exemple, si vous avez une interface graphique sur votre machine Nginx (ce qui sera peut-être le cas sur un lab), vous pouvez modifier le fichier "/etc/hosts" et ajouter la ligne suivante :

0.0.0.0 it-connect.tech www.it-connect.tech

Si vous utilisez une machine distante, remplacez "0.0.0.0" par l'adresse IP de votre machine Linux.

Les fichiers de logs, c'est-à-dire les journaux de Nginx, sont stockés à l'emplacement suivant :

# Log d'accès (toutes les requêtes)
/var/log/nginx/access.log
# Log d'erreurs
/var/log/nginx/error.log

Bien sûr, ils sont consultables avec la commande "tail" pour récupérer les dernières lignes ajoutées :

sudo tail -f /var/log/nginx/access.log 
sudo tail -f /var/log/nginx/error.log

Passons à l'étape suivante pour que Nginx prenne en charge les scripts PHP.

IV. Ajouter PHP à Nginx

Pour utiliser PHP avec un serveur web Nginx, il est obligatoire d'installer PHP-FPM (PHP FastCGI Process Manager) : Nginx lui transférera les requêtes PHP pour qu'elles soient traitées. 

Si l'on installe le paquet "php-fpm" de Debian 10, nous allons récupérer la version 7.3, ce qui n'est pas top. Il vaut mieux récupérer une version plus récente, par exemple PHP-FPM 7.4.X. Pour cela, nous devons agir sur les dépôts de notre machine. Exécutez les commandes suivantes pour ajouter notre nouveau dépôt PPA :

sudo apt-get update

On récupère la clé GPG du dépôt que l'on va ajouter :

sudo apt -y install lsb-release apt-transport-https ca-certificates 
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Enfin, on ajoute le dépôt :

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Il ne reste plus qu'à mettre à jour le cache de paquets et à installer PHP-FPM 7.4 :

sudo apt-get update
sudo apt-get install php7.4-fpm

En complément, et selon ce que vous souhaitez faire sur votre serveur Web Nginx, pensez à installer les extensions PHP qui vont bien (pour MySQL, par exemple).

Nous devons modifier la configuration de notre site :

sudo nano /etc/nginx/sites-available/it-connect.tech

Le bout de configuration suivant doit être ajouté au sein du groupe "Server", à la suite du bloc "location" déclaré précédemment :

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}

Ce qui donne :

Intégration de PHP à Nginx

Grâce à la directive "location ~ \.php$", on peut agir sur le traitement de tous les fichiers PHP. Ce qui est fort intéressant puisque l'on va pouvoir préciser le fichier de configuration (fastcgi-php.conf) et le chemin vers le socket lié à PHP-FPM, c'est-à-dire le chemin vers php7.4-fpm.sock. Si vous utilisez une version différente de PHP-FPM, le chemin devra être adapté.

Lorsque la configuration est prête, enregistrez le fichier et redémarrez le service Nginx. Avant cela, pensez à vérifier qu'il n'y a pas d'erreur de syntaxe :

sudo nginx -t
sudo systemctl restart nginx

V. Vérifier le bon fonctionnement de PHP avec Nginx

Notre serveur Nginx doit être en mesure de gérer l'exécution des scripts PHP. Nous allons le vérifier. Je vous invite à créer un fichier "info.php" à la racine de notre site Web :

sudo nano /var/www/it-connect.tech/info.php

Dans ce fichier, ajoutez le contenu ci-dessous. Pour rappel, la fonction phpinfo() permet d'obtenir un état détaillé de PHP sur un serveur Web.

<?php
phpinfo();
?>

Enregistrez le fichier et tentez d'accéder à la page info.php avec un navigateur. Normalement, vous devez obtenir une page similaire à celle ci-dessous. On peut voir que PHP fonctionne et que j'utilise bien PHP 7.4.

PHP sur un serveur web Nginx
PHP sur un serveur web Nginx

Voilà ! Votre serveur Web sous Nginx est prêt à être utilisé !

The post Debian – comment installer Nginx en tant que serveur Web ? first appeared on IT-Connect.

Windows : comment se protéger de la vulnérabilité PrintNightmare ?

2 juillet 2021 à 17:33

I. Présentation

Dans cet article, je vais vous expliquer comment vous protéger contre la vulnérabilité PrintNightmare, associée à la référence CVE-2021-34527 et qui cible le service "Spouleur d'impression" de Windows. Nous mettrons en place une GPO de protection.

PrintNightmare, c'est le nom de la nouvelle vulnérabilité critique qui touche le service "Spouleur d'impression" de Windows et qui inquiète particulièrement, car elle est activement exploitée. D'ailleurs, elle peut être exploitée à distance et lorsqu'une attaque est menée à bien, elle peut permettre à un attaquant de récupérer les droits SYSTEM sur un contrôleur de domaine.

Dans un premier temps, cette vulnérabilité a été associée à une nouvelle manière d'exploiter la faille CVE-2021-1675, corrigée le 8 juin dernier à l'occasion du Patch Tuesday. Mais in fine, il s'agit bien d'une nouvelle faille de sécurité de type Zero Day (qui a fuité un peu par erreur) et qui a sa propre référence CVE : CVE-2021-34527.

La faille de sécurité PrintNightmare concerne de nombreuses versions de Windows : Windows 7, Windows 8.1 et Windows 10, ainsi que toutes les versions de Windows Server depuis Windows Server 2008, y compris en Server Core (installation sans interface graphique).

L'ANSSI estime qu'il faut prendre cette vulnérabilité très au sérieux, tout comme l'agence américaine CISA (Cybersecurity and Infrastructure Security Agency).

Voici les recommandations à appliquer pour se protéger contre cette vulnérabilité.

II. PrintNightmare : les recommandations pour se protéger

Pour appliquer les recommandations ci-dessous, tenez compte des rôles de vos serveurs (contrôleurs de domaine, serveur d'impression, etc.), mais aussi des postes de travail. En fonction de votre infrastructure et des usages, tout n'est pas forcément applicable sur toutes les machines.

A. Désactiver le service "Spouleur d'impression"

Tout d'abord, il est recommandé de désactiver le service Spouleur d'impression sur les contrôleurs de domaine et sur tous les serveurs où le spouleur d'impression n'est pas utile (ce service gère les interactions entre votre machine et les imprimantes).

Attention : quand ce service est arrêté, il n'est plus possible d'imprimer à partir de l'hôte local. Cela n'est pas gênant sur la majorité des serveurs, mais à l'inverse cela peut être problématique sur les postes de travail.

Pour définir le type de démarrage "Désactivé" sur le service "Spouleur d'impression" ou "Print Spooler" en anglais. Voici la commande PowerShell qui permet d'effectuer cette configuration :

Set-Service -Name Spooler -StartupType Disabled

Une fois que le type de démarrage du service est modifié, il faut arrêter le service. En PowerShell, cela donne :

Stop-Service -Name Spooler

Une autre manière de faire consiste à créer une GPO. Grâce à cette GPO, on va pouvoir désactiver le service et l'arrêter. Parcourez les paramètres de cette façon :

Configuration ordinateur > Préférences > Paramètres du Panneau de configuration > Services

Créez une nouvelle configuration de service via un clic droit et configurez-le de cette façon :

Note : pour appliquer cette configuration de service à seulement certains hôtes, vous pouvez utiliser le ciblage avancé sur cet élément via l'onglet "Commun".

Sachez que de manière générale, sans parler de cette faille de sécurité, il est recommandé de désactiver le "Spouleur d'impression" sur les contrôleurs de domaine.

Passons à la seconde recommandation.

B. Bloquer les interactions distantes sur le Spouleur d'impression

Le paramètre "Autoriser le spouleur d'impression à accepter les connexions des clients" doit être désactivé pour bloquer les connexions en question.

Attention : quand ce paramètre est désactivé, les demandes d'impression distantes sont refusées. Concrètement, vous ne pouvez plus partager d'imprimantes sur l'hôte où s'applique cette stratégie. Par contre, il est toujours possible d'imprimer (sauf si le service Spouleur d'impression est arrêté) : ce qui est intéressant pour les postes clients. Il n'y a que le serveur d'impression que ça devrait gêner, finalement.

Toujours dans une GPO, ce paramètre est accessible à cet endroit :

Configuration ordinateur > Stratégies > Modèles d'administration > Imprimantes

C. Configurer le pare-feu Windows

L'ANSSI recommande "d'interdire les connexions entrantes sur les ports 445 et 139 (canaux nommés SMB) ainsi qu'interdire les connexions à destination du processus spoolsv.exe". Là encore, nous pouvons agir par GPO et ces règles sont là pour protéger les postes de travail puisqu'ils ont besoin du service d'impression.

Note : si vous utilisez le pare-feu de votre Endpoint, ce n'est pas utile de configurer le pare-feu de Windows par GPO : modifiez directement la politique de votre solution de sécurité pour créer des règles.

Suivez le chemin suivant :

Configuration ordinateur > Stratégies > Paramètres Windows > Paramètres de sécurité > Pare-feu Windows Defender avec fonctions avancées de sécurité (x2) > Règles de trafic entrant

Créer une nouvelle règle de trafic entrant via un clic droit : un assistant va démarrer.

Pour le type de règle, on ne va pas s'embêter à créer nos propres règles, car ce que l'on cherche à faire correspond à un modèle prédéfini. Choisissez "Partage de fichiers et d'imprimantes".

Cochez ensuite toutes les règles pour tout bloquer.

Concernant l'action à appliquer, choisissez "Bloquer la connexion". Bien sûr. 😉

Une fois la règle créée, vous obtenez le résultat ci-dessous. Ce qui pourrait vous gêner éventuellement, c'est le blocage du SMB pour l'accès distant aux fichiers des machines. Là encore, testez et surtout adaptez en fonction des rôles de la machine ciblée.

D. Détection d'une attaque sur le système

Lorsqu'une machine est victime de la faille de sécurité PrintNightmare, elle va générer des événements que l'on peut capturer et détecter à l'aide de l'Observateur d'événement de Windows, au sein du journal lié à la sécurité, mais aussi du journal de l'outil System Monitor (s'il est installé). Ces logs peuvent être collectés et analysés dans un outil adapté de type SIEM.

L'ANSSI indique qu'il faut prêter attention à l'événement avec un ID 4688 lorsqu'il est généré par le processus spoolsv.exe (Spouleur d'impression). Ce type d'événement n'est pas généré par défaut, voici comment l'activer.

Pour assurer un suivi des processus dans l'observateur d'événements, il faut activer le paramètre "Auditer le suivi des processus". Il se situe à cet emplacement :

Configuration ordinateur > Paramètres Windows > Paramètres de sécurité > Stratégies locales > Stratégie d'audit

Ensuite, pour générer les événements avec l'ID 4688, il faut activer le paramètre "Inclure une ligne de commande dans les événements de création de processus" qui se trouve sous :

Configuration ordinateur > Stratégies > Modèles d'administration > Système > Audit de création de processus

Sur les serveurs où l'application des règles de protection n'est pas possible, il est d'autant plus important de mettre en place cette génération des logs et d'en assurer la surveillance.

Quelques mots pour finir...

- Sur les postes de travail et les serveurs (autre que contrôleur de domaine et serveur d'impression), il sera possible dans la majorité des cas de désactiver le paramètre de GPO "Autoriser le spouleur d'impression à accepter les connexions des clients" et de configurer le pare-feu Windows, ce qui permettra de se protéger.

- Sur les contrôleurs de domaine, on pourra désactiver et arrêter le service Spouleur d'impression, et désactiver le paramètre de GPO "Autoriser le spouleur d'impression à accepter les connexions des clients" en complément. Si vous manipulez le pare-feu, attention avec les règles qui bloquent le SMB, vous allez avoir de mauvaises surprises : cela va bloquer l'accès au partage SYSVOL.

- Sur les serveurs d'impression, cela semble difficile d'appliquer ces recommandations sans remettre en cause le bon fonctionnement du service d'impression. Si vous utilisez une solution d'impression tierce avec son propre spouleur, alors ce sera surement une chance, car vous pourrez probablement appliquer une ou plusieurs de ces recommandations. Sinon, il faut mettre les serveurs d'impressions sous surveillance.

J'espère que cet article pourra vous aider à combattre la vulnérabilité PrintNightmare ! Bon courage !

The post Windows : comment se protéger de la vulnérabilité PrintNightmare ? first appeared on IT-Connect.

Android : Google va remplacer le format APK par le format AAB

2 juillet 2021 à 07:43

Pour les applications Android, Google a pris la décision de laisser tomber le format APK au profit d'un nouveau format : AAB, pour Android App Bundle. Précision importante : ce changement concerne uniquement le Play Store de Google.

Une page se tourne sur Android, car le format APK est historique et accompagne le système de Google depuis ses débuts. À partir du mois d'août 2021, les développeurs qui souhaitent publier une application sur le Play Store devront utiliser le format AAB, car ce ne sera plus possible au format APK.

Android va continuer de prendre en charge les deux formats. La transition vers le format AAB va se faire progressivement de toute façon, car les applications existantes peuvent rester au format APK. En tout cas, pour le moment.

Quel est l'intérêt du format AAB en comparaison du format APK ? 

D'après Google, ce format va faciliter l'utilisation du service Google Play Instant, qui permet d'essayer une application sans la télécharger. Mais ce format va permettre aussi de réduire le poids des applications d'environ 15% en moyenne. Il devrait permettre également de raccourcis les délais de développement. Concrètement, on peut dire qu'il devrait être plus pratique et plus modulable pour les développeurs.

L'arrivée du format AAB change la donne malgré tout ! Si un éditeur veut publier son application sur le Play Store, il devra utiliser le format AAB, mais s'il veut la publier également sur des magasins tiers comme le store d'Amazon, il devra utiliser le format APK. Quant à Windows 11, on sait qu'il supportera le format APK pour les applications Android, mais on ne sait pas s'il prendre en charge le format AAB également.

Nous verrons par la suite si les éditeurs de magasins d'applications tiers suivent Google et adoptent le format AAB, ou s'il reste sur le format APK. Enfin, s'ils ont le choix.

Source

The post Android : Google va remplacer le format APK par le format AAB first appeared on IT-Connect.

Windows 11 intègre une fonctionnalité optionnelle nommée TPM Diagnostics

1 juillet 2021 à 13:34

Le futur système d'exploitation de Microsoft a besoin d'une puce TPM 2.0 pour fonctionner. Même si l'on ne connaît pas encore tous les tenants et aboutissants de cette exigence, on sait que Windows 11 intègre une fonctionnalité optionnelle nommée TPM Diagnostics. Mais, à quoi sert-elle ?

Microsoft exige que toutes les machines sous Windows 11 disposent d'une puce TPM 2.0, dans le but de renforcer la sécurité sur la totalité des ordinateurs qui exécutent le système d'exploitation de la firme de Redmond. L'objectif étant de permettre aux entreprises d'appliquer le principe de Zero Trust en matière de sécurité. Cette exigence d'avoir une puce TPM fait couler beaucoup d'encre ces derniers jours...

Dans cet article, on va s'intéresser à la fonctionnalité optionnelle TPM Diagnostics : une nouveauté de Windows 11. Cette fonctionnalité permet de bénéficier d'un exécutable nommé TpmDiagnostics.exe et qui va permettre d'obtenir des informations sur la puce TPM de votre machine, mais aussi de lire les informations qu'elle contient.

Sur une version française de Windows 11, cette fonctionnalité facultative se nomme : Diagnostics de module de plateforme sécurisée.

Cet outil va permettre d'aller plus loin que la console TPM.MSC nommée "Gestion du module de plateforme sécurisée sur l'ordinateur local". Cette console fournit quelques informatiques basiques et la possibilité de remettre à zéro la puce TPM pour effacer son contenu.

Dans la foulée de l'installation de la fonctionnalité, on peut utiliser l'outil en ligne de commande. L'outil semble contenir énormément de commandes différentes.

TpmDiagnostics.exe

Par exemple, la commande "TpmDiagnostics.exe GetCapabilities" va permettre de récupérer la liste des fonctions prises en charge par la puce TPM de votre machine. On peut également utiliser cet outil pour récupérer le nombre de démarrages de la machine, mais aussi des informations sur les clés stockées. On peut aussi l'utiliser pour s'appuyer sur la puce TPM pour encoder et décoder des chaînes de caractères en Base64, par exemple. Bien sûr, cet outil doit être exécuté avec les droits administrateur afin d'avoir suffisamment d'autorisations pour accéder à la puce TPM.

Personnellement, je me demande quel est l'intérêt de pouvoir lire ces informations ? Justement, pour des raisons de sécurité, je pense que ce serait mieux qu'elles ne soient pas accessibles.

Source

The post Windows 11 intègre une fonctionnalité optionnelle nommée TPM Diagnostics first appeared on IT-Connect.

Microsoft Teams : comment planifier un message d’absence ?

1 juillet 2021 à 13:00

I. Présentation

C'est bientôt les vacances d'été, peut être même qu'elles ont commencé pour certains d'entre vous. C'est le moment de configurer Teams pour définir un message d'absence afin d'avertir vos contacts. Cela tombe bien, car je vais vous expliquer comment définir un message d'absence dans Teams !

Je vais manipuler depuis le client Desktop de Teams, sous Windows, mais cela fonctionne également depuis la version Web de Teams.

II. Configurer un message d'absence dans Teams

Au sein du client Teams, cliquez sur votre avatar en haut à droite pour afficher le menu. Cliquez ensuite sur le lien "Définir un message de statut".

Définir un message de statut dans Teams
Définir un message de statut dans Teams

La zone de saisie vous permet de rédiger votre message. Cela peut être un statut temporaire que vous pouvez définir pour indiquer une courte absence, même d'une heure ou deux. Ce n'est pas utile que pour les congés.

Néanmoins, lorsque vous partez en congé, pensez à cocher la case "Afficher lorsque des personnes m'envoient un message" : ce qui va permettre d'envoyer votre message prédéfini comme réponse automatique lorsqu'un utilisateur vous enverra un message Teams.

Il ne reste plus qu'à déterminer pendant combien de temps le message doit être configuré. Pour cela, il faut configurer le champ "Effacer le message de statut après..." et là vous choisissez la date et l'heure qui vous convient. Ce qui devrait correspondre à votre date de retour de congés. 🙁

Validez la création de votre statut en cliquant sur le bouton "Terminé". Ce message est visible dans votre statut Teams (pour les autres utilisateurs) et il s'affiche au sein du menu Teams :

D'après ce que j'ai constaté, lorsque l'on crée le message comme on vient de le faire, il n'est pas synchronisé sur Outlook. Pour avoir un message d'absence synchronisé entre Teams et Outlook, il faut utiliser une autre fonctionnalité nommée "Absent du bureau".

Peut-être que ce que l'on vient de voir conviendra à certains, mais pas à d'autres. Dans ce cas, lisez la suite de ce tutoriel... Pour accéder à cette fonctionnalité, accédez au menu comme toute à l'heure... et cliquez sur "Planifier les absences du bureau".

Un menu beaucoup plus complet que tout à l'heure va s'afficher. Voici ce que vous devez faire :

1 - Cochez l'option "Activer les réponses automatiques" et saisissez votre message.

2 - Cochez l'option "Envoyer des réponses en dehors de mon organisation" pour avertir toutes les personnes qui vous écriront que vous êtes absent.

3 - Cochez l'option "Envoyer des réponses uniquement pendant une période donnée" : ce qui vous permet de définir à partir de quand vous êtes absent, et jusqu'à quand. Là, il y a l'avantage de pouvoir définir la date de début de votre absence, ce qui n'était pas le cas avec la méthode précédente.

Le fait d'utiliser ce menu va synchroniser le statut entre Teams et Outlook. Validez.

Message d'absence synchronisé entre Teams et Outlook
Message d'absence synchronisé entre Teams et Outlook

Lorsque vous êtes en plein dans votre période d'absence, le message "Réponses automatiques" s'affichera dans Outlook. Si vous cliquez dessus, une fenêtre de configuration va s'afficher dans Outlook : les paramètres seront les mêmes que ceux définis dans Teams.

Voilà, je n'ai plus qu'une chose à dire : à vous les vacances....! ☀

The post Microsoft Teams : comment planifier un message d’absence ? first appeared on IT-Connect.

Créer des templates de VM avec VMware vCenter Server Appliance

1 juillet 2021 à 12:57

I. Présentation

Aujourd'hui, nous allons voir comment créer des modèles de VM sous VMware afin de créer des VMs de "référence" pour vos déploiements. Celles-ci vous permettent de pouvoir créer des machines virtuelles à la volée, sans passer par l'étape fastidieuse de création de VM classique.

Un modèle de machine virtuelle est une image d'une VM personnalisable afin de répondre à certaines exigences métier. Un template peut être utilisé plusieurs fois à des fins de déploiement en masse d'instances de VMs. Après avoir déployé une VM à partir d'un modèle, elle n'est plus liée à son modèle, et est donc indépendante.

Note : certaines informations non essentielles de ce tutoriel ont été masquées.

II. Modèle VS clone VS OVA/OVF

A. La différence entre un clone de VM et un modèle de VM

Un clone de VM "standard" est une copie exacte d'une VM à un instant T qui n'est pas personnalisable (au niveau de l'OS, et certaines ressources physiques). Si vous devez cloner périodiquement une machine virtuelle en cours d'exécution, les clones résultant de celle-ci seraient différents les uns des autres. Un modèle de machine virtuelle vous aide à éviter ces problèmes, car il ne peut pas être modifié* et ne peut jamais être en cours d'exécution. On évite alors les erreurs de manipulations...

VMware fournit des outils qui simplifient la personnalisation du système d'exploitation invité pour les clones de VM. Un point que nous aborderons dans le troisième chapitre de ce tutoriel.

*Vous ne pouvez pas la mettre sous tension et modifier une machine modèle dès lors qu'elle a été créée, afin que personne ne puisse accidentellement démarrer/modifier la machine virtuelle utilisée comme modèle. Si vous souhaitez modifier un modèle, vous devez convertir un modèle en machine virtuelle, modifier la machine virtuelle, puis convertir la machine virtuelle modifiée en un nouveau modèle. Cette approche offre une plus grande sécurité (et une méthode plus « infaillible ») que les clonages classiques de VM.

B. La différence entre un modèle de VM et un modèle OVA/OVF

Les modèles OVA et OVF sont utilisés pour distribuer des logiciels préconfigurés en tant qu'appliances virtuelles. Ils peuvent contenir plusieurs machines virtuelles, ce qui est utile dans les cas où une application se compose de plusieurs instances de VM qui doivent fonctionner indépendamment.

Pour rappel :

  • .OVF est un format de fichier qui contient des métadonnées, des disques virtuels et des éléments de fichier décrivant les machines virtuelles, ainsi que des informations supplémentaires importantes pour le déploiement et le fonctionnement de l'application.
  • .OVA est un package qui englobe les fichiers cités précédemment dans une archive de fichiers unique (plus pratique selon moi).

Les modèles de VM ne sont pas compressés. Ils sont accessibles uniquement à partir d'emplacements disponibles pour vCenter (datastore, etc.) et ne sont pas destinés à être partagés avec d'autres organisations.

III. Environnement de mise en place

Plantons le décor, voici ce que nous allons utiliser :

  • Un VCSA (VMware vCenter Server Appliance), avec un ou plusieurs hôtes ESXi connectés
  • Une machine virtuelle (Windows) fonctionnelle disposant des VMware tools installées. Dans mon cas, je vais utiliser une machine Windows 10 21H1 pour réaliser le didacticiel.

Option : personnaliser votre machine virtuelle en installant un ensemble de logiciels pour vos besoins,  les besoins d'une entité particulière, etc. Je vous recommande d'utiliser le logiciel Ninite afin de faire une seule installation groupée des logiciels les plus connus et les plus utiles, que vous pourriez avoir besoin. Par exemple : WinRar, Firefox, Chrome, Visual Studio Code, etc.

Aperçu de la VM qui doit devenir un modèle

IV. Création du modèle

Depuis une machine virtuelle, fraichement installée, cliquez sur : action, clone, clonez vers un modèle.

Choisissez un nom pour cette future VM de référence. Il doit être différent du nom de la machine originale (ici : Win-10-Pro-21H1-Desktop). Le nom pour cette machine de référence sera dans mon cas Windows-10-Pro-21H1-Desktop-Master.

VMware - Assistant "Cloner la machine virtuelle vers un modèle"

Il vous est demandé par la suite de choisir la ressource de calcul pour héberger votre futur VM template. Choisissez par défaut votre cluster d'hôtes ESXi, ou un hôte ESXi en particulier.

Puis, sélectionnez le datastore où vous souhaitez stocker le modèle de machine virtuelle.

Ensuite, un récapitulatif des actions effectuées s'affiche à l'écran. Dès que vous cliquez sur "Finish", le template va se créer. Patientez pendant la création.

V. Création d'une spécification de personnalisation d'invité VM

La personnalisation du système d'exploitation invité est une fonctionnalité de vSphere qui permet aux utilisateurs de modifier les paramètres du système d'exploitation invité Linux ou Windows d'une Template de VM. Pour rappel l'approche traditionnelle était de :

  • Démarrer manuellement une machine virtuelle,
  • Se connecter au système d'exploitation invité
  • Modifier la configuration dans différentes parties du système d'exploitation via une interface graphique ou l'invite de commande,
  • etc.

Cette méthode est lourde et fastidieuse. Avec la personnalisation du système d'exploitation invité de VMware, vous pouvez créer un fichier de personnalisation et utiliser celui-ci pour personnaliser chaque instance de VM générée à partir du modèle. Vous pouvez facilement modifier les paramètres du réseau, le nom d'hôte, le nom d'utilisateur, le mot de passe, le fuseau horaire, les paramètres de licence, le SID (identifiant de sécurité) et le domaine/workgroup.

Remarque : les paramètres de personnalisation pour Linux et Windows sont différents. La procédure aussi. Les problèmes de compatibilité sont malheureusement nombreux en fonction des distributions. Cette fonctionnalité sera plus utile et exploitable pour un environnement virtuel Windows. Je ne vais donc pas la développer ici. Pour plus d'informations, reportez-vous à la documentation officielle de VMware.

Pour créer votre "procédure d'instanciation de template", rendez-vous dans > Menu > Stratégies et profils 

Puis, créez une nouvelle "spécification de personnalisation d'une VM" (sacré charabia ^^). Renseignez les informations suivantes :

  • La famille de l'OS concernée (Windows dans mon cas)
  • Si vous souhaitez utiliser l'utilitaire SYSPREP. Personnellement, je n’y vois aucun intérêt sachant que VMware propose de générer automatiquement un nouveau SID et cela nous évite une tâche fastidieuse.

Définissez par la suite le nom du propriétaire. Par défaut, ici je vais mettre User. Le nom du compte que j'ai crée lors de l'installation de Windows 10.

Puis, nous pouvons personnaliser le hostname (nom NETBIOS) de l'hôte Windows qui sera généré. Dans mon cas, je vais préfixer le nom d'hôte de chaque machine avec "PC-itco-" suivi d'un numéro d'identification random fourni par VMware, mais vous pouvez choisir de préfixer le nom de la machine, lors du déploiement de la VM, ou via une extension X via VCSA.

VMWare vous laisse le choix d'activer ou non Windows 10 depuis son formulaire en précisant une clé d'activation. 🙂

Vous devez ensuite définir le mot de passe du compte administrateur du template.

Puis, sélectionnez ensuite le bon fuseau horaire en fonction de votre géolocalisation.

Si vous souhaitez injecter un script PowerShell/batch, cette section est faite pour vous :). Dans mon cas, je ne vais pas l'utiliser.

Choisissez ensuite vos paramètres réseau. Dans mon cas, je vais utiliser l'option par défaut DHCP (IP+DNS), mais la deuxième option vous permet d'entrer manuellement les paramètres IP/DNS lors du déploiement d'une nouvelle VM.

La 9e étape nous octroie la possibilité de joindre directement la nouvelle machine déployée à un domaine Active Directory. Dans le cadre du tutoriel, nous allons nous en passer. ^^

Enfin, un récapitulatif vous est présenté. Il suffit de cliquer sur "Finish".

Le profil sera stocké, dans le menu : Menu > Stratégies et profils. À tout moment vous pouvez l'éditer, sans en créer un nouveau.

VI. Déploiement d'une machine virtuelle à partir de notre modèle

Afin de tester notre template, créez une machine virtuelle, cochez l'option "Déployer depuis un modèle", puis cliquez sur "Next".

Je vais donc choisir de déployer une VM Windows 10, à l'aide du template que je viens de réaliser.

Je lui assigne le nom suivant : Win10-21H1-Test. Remarque : le nom de la machine virtuelle, ce n'est pas son hostname au sein de l'OS.

Par la suite, je choisis d'utiliser mon cluster d'ESXi, pour gérer la partie gestion des ressources de calcul.

Je sélectionne un emplacement pour le stockage de cette future VM.

Arrive une étape importante, où nous pouvons choisir de cocher les options suivantes :

  • Personnaliser l'OS de la future VM (via le fichier de personnalisation créé plus tôt)
  • Personnaliser le matériel de cette VM (CPU, RAM, stockage (agrandir le disque dur, choisir le type de provisionnement : thin/thick), etc.)
  • La mettre sous tension dès lors que celle-ci sera déployée.

Évidemment, je vais sélectionner mon profil personnalisé.

Ensuite, si vous le souhaitez, vous pouvez ajuster les ressources physiques. Ce qui est l'occasion d'agrandir la taille du disque dur virtuel, par exemple.

Enfin, VCSA nous présente un récapitulatif des informations que nous lui avons fournies. Après quoi il déploiera la machine virtuelle.

Le déploiement de celle-ci prend environ une bonne minute. Et voilà, notre machine Win10-21H1-Test, est déployée et opérationnelle !

Nous pouvons constater que le nom d'hôte de la machine déployée a bien été modifié automatiquement lors du déploiement de celle-ci, ce qui confirme que la customisation de l'OS a bien été réalisée par VCSA.

VII. Conclusion

J'espère que l'article vous aura plu ! Avant de vous laisser, voici deux rappels pour conclure :

- Un modèle de machine virtuelle est une image spécifique d'une VM qui peut être utilisée pour créer des instances de VM lors de déploiements en masse. Les templates ne peuvent pas être modifiés et activés comme les machines virtuelles ordinaires, ce qui améliore la sécurité.

- La spécification de personnalisation de l'OS du template vous aide à personnaliser les paramètres du système d'exploitation tels que la configuration réseau, le nom de l'ordinateur, le fuseau horaire, injecter un script Batch/Powershell, etc. Cela rend vos déploiements de VM plus rapide et plus pratique. Vous bénéficiez d'avantages importants tel que l'automatisation, la réduction du nombre d'erreurs, et la standardisation de vos machines.

The post Créer des templates de VM avec VMware vCenter Server Appliance first appeared on IT-Connect.

Windows 10 : la mise à jour KB5004760 corrige un bug d’ouverture des PDF

1 juillet 2021 à 08:44

Microsoft vient de publier une mise à jour optionnelle (KB5004760) pour Windows 10 dans le but de corriger un problème d'ouverture des fichiers PDF à partir de certaines applications.

Si vous utilisez Edge, Chrome ou Firefox comme lecteur de PDF, vous ne devriez pas être embêté par ce bug. D'après Microsoft, ce bug touche Internet Explorer 11 mais aussi les applications qui utilisent le contrôle WebBrowser. Il se produit lorsque l'option "Activer les processus 64 bits pour le mode protégé amélioré" est activée dans l'onglet "Avancé" des "Options Internet". Dans certains cas, la présence du plug-in Adobe Acrobat dans le navigateur peut poser des problèmes également.

Cette mise à jour s'applique à plusieurs versions de Windows :

  • Windows 10 2004
  • Windows 10 20H2
  • Windows 10 21H1
  • Windows Server version 2004 et 20H2

Comme elle est optionnelle, elle ne s'installera pas automatiquement : à vous de l'installer sur vos machines, si cela est utile. Pour l'obtenir, rendez-vous sur le catalogue de Microsoft Update ou dans Windows Update sur votre machine.

Même si l'on pourrait penser que ce bug affecte peu de personnes, pour que Microsoft publie une mise à jour sans attendre la sortie du prochain Patch Tuesday, cela doit être très impactant pour un nombre important d'utilisateurs. Avez-vous rencontré ce cas sur vos machines ?

Voir la publication de Microsoft

The post Windows 10 : la mise à jour KB5004760 corrige un bug d’ouverture des PDF first appeared on IT-Connect.

PrintNightmare : une faille critique qui touche le service « Spouleur d’impression »

1 juillet 2021 à 08:18

PrintNightmare, c'est le nom de la nouvelle vulnérabilité critique qui touche le service "Spouleur d'impression" de Windows. Exploitable à distance, elle peut permettre à un attaquant de récupérer les droits SYSTEM sur un contrôleur de domaine.

Le 8 juin dernier, à l'occasion de son Patch Tuesday mensuel, Microsoft a déployé un correctif pour combler la faille de sécurité CVE-2021-1675 et qui affectait le spouleur d'impression, un composant présent par défaut sur Windows. Cette vulnérabilité permettait d'effectuer une élévation de privilèges en local sur la machine cible. Elle touche aussi bien Windows 7, Windows 8.1 que Windows 10, ainsi que toutes les versions de Windows Server depuis Windows Server 2008, y compris en Server Core.

Deux chercheurs ont présenté une nouvelle manière d'exploiter cette faille, cette fois-ci à distance, ce qui change la donne ! D'autant plus que cette attaque à distance permet d'obtenir les privilèges SYSTEM sur la machine cible. L'ANSSI estime qu'il faut prendre la faille CVE-2021-1675 très au sérieux, car des codes d'exploitation sont déjà disponibles sur Internet, publiquement. On peut même considérer cette faille comme étant une Zero-Day au sein du spouleur d'impression de Windows.

Lors de l'ajout d'une imprimante, c'est au moment de téléverser le pilote qu'il est possible d'installer le programme malveillant. En fait, à partir d'une machine de votre domaine Active Directory, disons un poste de travail compromis, un attaquant pourrait compromettre votre contrôleur de domaine en exploitant cette vulnérabilité. Quand on sait que l'on peut acheter des identifiants RDP pour quelques dizaines de dollars sur le Darkweb, cela simplifie d'autant plus la première étape.

Vous allez me dire "si j'ai installé le correctif de Microsoft publié le 8 juin, je suis protégé", et bien, malheureusement non. Le correctif proposé par Microsoft ne vous protège pas contre cette nouvelle méthode d'exploitation. Par conséquent, il est recommandé d'effectuer les actions suivantes sur les serveurs contrôleurs de domaine et sur tous les serveurs où le spouleur d'impression n'est pas utile (ce service gère les interactions entre votre machine et les imprimantes) :

  • Définir le type de démarrage "Désactivé" sur le service "Spouleur d'impression" ou "Print Spooler" en anglais. Voici une commande PowerShell qui permet d'effectuer cette configuration :
Set-Service -Name Spooler -StartupType Disabled
  • Une fois que le type de démarrage du service est modifié, il faut arrêter le service. En PowerShell, cela donne :
Stop-Service -Name Spooler

De manière générale, sans parler de cette faille de sécurité, il est recommandé de désactiver le "Spouleur d'impression" sur les contrôleurs de domaine. Sur les serveurs où le service ne peut pas être désactivé, le CERT-FR recommande de mettre le processus "spoolsv.exe" sous surveillance.

Pour atténuer les risques et surveiller vos systèmes, vous pouvez consulter cette page sur GitHub qui regroupe des informations complémentaires. Les actions évoquées ci-dessus peuvent être effectuées par GPO également.

Chers admins système, si vous utilisez des machines sous Windows Server et plus particulièrement des contrôleurs de domaine, vous avez un peu de travail ! Bon courage !

Source

The post PrintNightmare : une faille critique qui touche le service « Spouleur d’impression » first appeared on IT-Connect.

WSLg : comment utiliser WSL pour ouvrir des applications GUI Linux ?

30 juin 2021 à 11:30

I. Présentation

Dans la continuité de mes précédents articles sur WSL, je vais vous parler aujourd'hui de WSLg. C'est le nom donné par Microsoft à la nouvelle fonctionnalité de WSL qui permet d'ouvrir des applications GUI Linux directement depuis Windows. En fait, il faut imaginer une distribution Linux installée via WSL, avec un paquet d'une application avec une interface graphique installé sur cette même distribution, et l'on va venir ouvrir cette application Linux directement à partir de Windows et du raccourci dans le menu Démarrer.

🎥 Episode disponible au format vidéo :

Pour le moment, cette fonctionnalité est disponible seulement sur les versions preview de Windows 10 (je n'ai pas testé sur la version preview de Windows 11), accessibles par l'intermédiaire du programme Windows Insiders. Plus précisément, la fonctionnalité est disponible depuis Windows 10 Build 21364. Elle devrait être intégrée à Windows 11 lors de la sortie de la prochaine version stable prévue pour fin 2021.

L'alternative consiste à installer une interface graphique comme XFCE sur la distribution Linux géré par WSL 2 et de venir se connecter sur la machine via RDP ou VNC. Ensuite, on peut utiliser les applications sur la machine Linux, localement.

WSLg Windows 10

Si l'on regarde de plus près le schéma ci-dessus, qui provient de la documentation de Microsoft, on remarque que Microsoft s'appuie sur trois composants pour l'affichage :

- XWayland qui permet de faire fonctionner des applications Xorg (X11) avec Wayland. D'ailleurs, Wayland est destiné à remplacer le protocole de serveur d'affichage X11.

- Weston qui est une implémentation du protocole d'affichage Wayland et qui servira à gérer l'affichage des applications, aussi bien celles compatibles Wayland, que celles compatibles X11 (grâce à XWayland).

- FreeRDP qui est une implémentation open source du protocole RDP. Grâce à lui, le client Bureau à distance de Windows va pouvoir afficher l'application Linux dans le même esprit qu'une Remote App.

En complément, il faut savoir que WSLg supporte le copier-coller entre Windows et l'application Linux, ainsi que le multi-écrans, et la gestion de l'audio grâce au composant Pulse Audio Server.

Note : la majorité des commandes wsl.exe de cet article ne fonctionne pas sur les versions stables actuelles de Windows 10. Ce sont des commandes qui seront intégrées sur la future version de Windows, prévue pour fin 2021.

II. Prérequis de WSLg sur Windows 10

Comme je le disais, il faut au minimum Windows 10 Build 21364 pour pouvoir tester WSLg et utiliser les applications GUI de Linux depuis Windows. Ensuite, il faudra procéder à l'installer de WSL au sein de la machine Windows 10.

Avant de parler installation, sachez que WSL 2 est installable au sein d'une machine virtuelle hébergée sur un serveur VMware ESXi ! Il suffit d'activer l'option "Exposer la virtualisation assistée du matériel au SE invité" au sein des paramètres de la VM.

Pour revenir sur l'installation, vous pouvez utiliser mon tutoriel qui explique la méthode classique pour installer WSL 2 sur Windows 10.

À l'avenir, l'installation de WSL sera plus simple, enfin disons que ce sera plus par les fonctionnalités optionnelles de Windows. Il ne sera plus nécessaire également d'installer le Kernel WSL 2 manuellement, ce sera inclus. On pourra faire l'installation de WSL 2 directement à l'aide d'une seule commande :

wsl.exe --install

Une fois que la fonctionnalité est installée, pour être sûre de bien avoir tous les composants à jour, une petite mise à jour s'impose. On commence par stopper la machine virtuelle WSL :

wsl.exe --shutdown

Puis, on effectue la mise à jour :

wsl.exe --update

Une nouvelle fois, nous devons arrêter la machine virtuelle :

wsl.exe --shutdown

Passons à la suite.

III. Installer un distribution Linux sous WSL

Si vous avez déjà une distribution Linux via WSL sur votre poste de travail, vous pouvez passer à la suite. Pour rappel, l'installation d'une distribution Linux s'effectue généralement à partir du Microsoft Store.

Néanmoins, j'en profite là encore pour vous parler d'une nouvelle commande qui va permettre d'installer une distribution Linux depuis une commande wsl.exe. Par exemple, pour installer Ubuntu :

wsl --install --distribution Ubuntu

Tout en sachant que les distributions disponibles peuvent être listées :

wsl.exe -l -o

Pour utiliser WSLg, nous devons avoir une distribution Linux en version 2. Si vous venez de l'installer, normalement elle est en version 2 par défaut. Dans le doute, on va forcer l'utilisation de cette version :

wsl.exe --set-version <Nom de la distribution> 2
wsl.exe --set-version Ubuntu 2

Il est fort possible que le message "La distribution présente déjà la version demandée." s'affiche.

IV. Installer une application GUI Linux sous WSL

Venons en maintenant à la question du jour : comment installer une application GUI Linux avec WSL ? La réponse se trouve ci-dessous... En fait, le plus gros est déjà fait : installer WSL et le mettre à jour. Ensuite, c'est classique finalement. On met à jour le cache des paquets (pour récupérer les dernières versions) :

sudo apt update

On met à jour les paquets sur la machine (tous les paquets installés ayant besoin d'être mis à jour) :

sudo apt upgrade

Enfin, on installe l'application graphique de son choix. Prenons par exemple l'éditeur de texte Gedit :

sudo apt install gedit -y

Dès qu'il est installé, si l'on ouvre le menu Démarrer de Windows 10, on voit un nouvel icône : Text Editor (Ubuntu). Intéressant.

Si on ouvre l'application, Gedit s'ouvre sur Windows 10 et permet d'accéder au contenu de la machine Linux, en l'occurrence ici Ubuntu.

V. Installer VSCode sous WSL

Pour finir cet article, je vous propose de voir comment installer Visual Studio Code alias VSCode, un éditeur de code gratuit disponible sous Windows, mais aussi Linux. De quoi coder sous Linux directement à partir de sa machine Windows.

Suivez ces quelques étapes. Les commandes sont à exécuter directement depuis la machine Linux.

Positionnez-vous dans le dossier /tmp (ou ailleurs) :

cd /tmp

Téléchargez les sources de VSCode pour Ubuntu / Debian (fichier .deb) :

wget https://go.microsoft.com/fwlink/?LinkID=760868

Vous allez obtenir un fichier avec un "nom bizarre". On va le renommer en "vscode.deb" :

mv 'index.html?LinkID=760868' vscode.deb

Via Aptitude, on va installer notre paquet à partir du fichier .deb :

sudo apt install ./vscode.deb

Ce qui donne :

Dès que c'est terminé, on retrouve le raccourci "Visual Studio Code (Ubuntu)" directement dans le menu Démarrer de Windows 10. Il ne reste plus qu'à l'ouvrir et à coder ! Si vous installez PowerShell sur Linux, vous pouvez coder un script depuis VSCode et l'exécuter sur la machine Linux directement ! 🙂

Vous voyez, c'est assez simple d'utiliser les applications graphiques de Linux sous Windows 10 ! Le plus chiant, c'est d'attendre que ce soit disponible au sein d'une version stable de Windows. En attendant, vous pouvez toujours tester en VM.

The post WSLg : comment utiliser WSL pour ouvrir des applications GUI Linux ? first appeared on IT-Connect.

Les pirates utilisent une faille Zero-Day pour réinitialiser les NAS WD My Book Live

30 juin 2021 à 10:56

La semaine dernière, de nombreux utilisateurs de NAS Western Digital My Book Live ont eu la mauvaise surprise de retrouver leur boîtier réinitialisé et sans aucune donnée. Nous en savons désormais un peu plus sur le sujet : les pirates utilisent une faille Zero-Day qui permet une réinitialisation à distance. 

En regardant les journaux du NAS, des utilisateurs ont pu trouver les traces de l'exécution d'un script nommé "factoryRestore.sh". Suite à la réinitialisation du NAS, la configuration est remise à zéro, les données sont effacées, et il n'est plus possible de se connecter au boîtier, car le mot de passe administrateur est modifié également.

Jun 23 15:14:05 My BookLive factoryRestore.sh: begin script:
Jun 23 15:14:05 My BookLive shutdown[24582]: shutting down for system reboot
Jun 23 16:02:26 My BookLive S15mountDataVolume.sh: begin script: start

Une zero-day et surtout une grosse erreur de développement

Dans un premier temps, Western Digital pensait que la faille de sécurité CVE-2018-18472 avait été exploitée pour mener ces attaques. Elle date de 2018 et n'est pas corrigée, car les boîtiers ne sont plus sous support depuis 2015.

En fait, les pirates ont peut-être utilisé cette vulnérabilité pour mener ces attaques contre les appareils My Book Live, mais c'est une autre vulnérabilité de type Zero-Day qui a permis d'effectuer une réinitialisation d'usine des NAS. Derek Abdine, CTO de Censys, affirme que le dernier firmware des appareils My Book Live contient une faille Zero Day qui permet une réinitialisation à distance sur tous les appareils connectés à Internet.

D'après les investigations menées par certains chercheurs en sécurité, il y aurait un gros loupé dans le dernier firmware des NAS My Book Live. En effet, dans le code source, les contrôles d'authentification ont été commentés, ce qui permet à toute personne ayant accès à l'appareil d'effectuer une réinitialisation d'usine, sans même s'authentifier sur l'interface d'administration. Surprenant de la part d'un développeur de chez Western Digital !

La faille CVE-2018-18472 exploitée par un Botnet

Il s'avère que la vulnérabilité CVE-2018-18472 est exploitée par les attaquants pour prendre le contrôle des NAS My Book Live. Cette fois-ci, il n'est pas question de réinitialiser le boîtier, mais de prendre le contrôle du NAS pour l'ajouter à un Botnet. Certains utilisateurs ont pu découvrir des traces d'une variante du malware Linux.Ngioweb.27, un Botnet Linux connu pour s'attaquer aux périphériques IoT.

Une fois que le malware est en place, les hackers peuvent récupérer les données sur le NAS, attaquer d'autres NAS à partir de celui-ci, mais aussi effectuer des attaques DDoS.

En résumé, si vous avez un boîtier Western Digital My Book Live chez vous : empêchez-le d'accéder à Internet (et cela pour toujours). Pour l'accès distant à votre boîtier, privilégier un accès VPN.

Source

The post Les pirates utilisent une faille Zero-Day pour réinitialiser les NAS WD My Book Live first appeared on IT-Connect.

Moteur de recherche : DuckDuckGo devient numéro 2 aux Etats-Unis

30 juin 2021 à 07:20

Où s'arrêtera DuckDuckGo ? Le moteur de recherche anti-Google continue sa progression et d'après les dernières estimations, il serait devenu le deuxième moteur de recherche le plus utilisé aux États-Unis, mais pas seulement.

Créé il y a 16 ans, DuckDuckGo est un moteur de recherche qui se veut respectueux de la vie privée et qui assure ne pas pister ses utilisateurs, contrairement à Google. À chaque fois qu'il y a une polémique au sujet de la vie privée des utilisateurs, on peut dire que cela lui profite, car il récupère toujours un peu plus d'utilisateurs.

Actuellement, le trafic du moteur de recherche DuckDuckGo est en hausse de 55%. Cette progression s'explique en partie par le nombre de téléchargements de l'application DuckDuckGo sur mobile : plus de 50 millions sur les 12 derniers mois. C'est un chiffre important pour DuckDuckGo, car c'est plus que le cumul de toutes les années précédentes.

Grâce à cette progression, DuckDuckGo serait le moteur de recherche numéro 2 aux États-Unis, mais aussi au Canada, aux Pays-Bas et en Australie. Autrement dit, il devance désormais Bing mais reste encore très loin de Google.

L'application mobile permet d'avoir un navigateur et d'effectuer des recherches sur DuckDuckGo. Elle devrait évoluer prochainement pour bloquer les traqueurs des applications. Sur ordinateur, on peut utiliser DuckDuckGo en tant que moteur de recherche dans les différents navigateurs : Firefox, Chrome, Edge, Brave, Opera, etc. En complément, d'ici la fin de l'année 2021, une version Desktop de DuckDuckGo devrait voir le jour ! De quoi bénéficier d'un navigateur DuckDuckGo dans le même esprit que sur mobile.

Contrairement à ce que l'on pourrait croire, DuckDuckGo est rentable depuis 2014 ! Il génère plus de 100 millions de dollars par an. Comme il ne collecte pas nos données pour les revendre, DuckDuckGo doit trouver un autre moyen de gagner de l'argent. Tout simplement, cela passe par les annonces publicitaires (résultats en tête de liste) qui s'affichent dans les résultats du moteur de recherche. Dernièrement, DuckDuckGo s'est même offert une campagne publicitaire à la radio, à la télévision et dans les rues américaines dans le but de se développer.

Personnellement, j'utilise principalement DuckDuckGo sur mobile grâce à l'application assez pratique.

Et vous, utilisez-vous DuckDuckGo ? Ou préférez-vous Qwant ?

Source

The post Moteur de recherche : DuckDuckGo devient numéro 2 aux Etats-Unis first appeared on IT-Connect.

L’IA dans les smartphones se développe à grands pas !

29 juin 2021 à 09:00

L'intégration de l’intelligence artificielle (IA) dans nos smartphones est l’une des innovations majeures de ces dernières années. Que ce soit pour les professionnels ou les particuliers, cette avancée technologique ouvre la porte à de nouveaux usages, à de nouvelles applications. Dernier exemple en date : l'application de Google pour détecter les maladies de la peau.

IA : Google veut détecter vos problèmes de peau

Google veut notre peau ! Permettez-moi ce jeu de mots, c'était facile. La firme américaine veut s'appuyer sur l'intelligence artificielle pour détecter rapidement les problèmes de peau. Pourquoi Google s'est intéressé à cette problématique ? Tout simplement, car il y a eu près de 10 milliards de recherches sur son moteur de recherche au sujet des problèmes de peau, d'ongle et de cheveux.

En prenant simplement trois photos de la zone concernée, votre smartphone pourra mettre un nom sur 288 pathologies reconnues. L'analyse passera par une application développée par Google et qui s'appuie sur l'intelligence artificielle. Il s'agit bien sûr d'un premier diagnostic et Google n'est pas là pour remplacer votre médecin ni votre dermatologue.

Étonnement, cette application qui touche à la médecine sera autorisée en Europe, mais pas aux États-Unis, en tout cas pour le moment. Elle devrait être disponible à la fin de l'année prochaine, il faut encore être patient.

À quoi sert l'intelligence artificielle dans les smartphones ?

Aujourd'hui, l'intelligence artificielle s'appuie sur le machine learning pour en apprendre plus sur l'utilisateur et ses habitudes, dans le but d'améliorer l'expérience utilisateur et de proposer des fonctions toujours plus précises. Lorsqu'il est question d'IA, certains traitements effectués auparavant dans le Cloud sont désormais réalisables par le smartphone en lui-même, en local. C'est intéressant d'un point de vue de la sécurité puisqu’on limite les échanges, et c'est aussi un moyen d'exploiter la puissance de nos smartphones qui sont de plus en plus puissants !

L'intelligence artificielle dans les smartphones sert à de nombreuses choses, voici quelques exemples :

  • Reconnaissance d'image : reconnaître les points communs entre plusieurs images, s'assurer qu'une image soit conforme dans le cadre d'un contrôle qualité, reconnaître le texte dans une image, etc.
  • Organiser les notifications sur le smartphone par ordre de priorité, en fonction des habitudes de l'utilisateur et de ses interactions avec les différentes applications
  • Suggestions basées sur les habitudes de l'utilisateur
  • Améliorer la qualité des photos : le smartphone peut prendre plusieurs photos et grâce à l'IA il fusionne ces photos en une seule photo optimisée,
  • Etc...

Apple, mais aussi Google, travaille activement sur le déploiement de fonctionnalités basées sur l'IA et un budget conséquent est consacré à cet axe de développement.

Le fabricant de puces pour mobiles, Qualcomm, mise également sur l'IA : sa nouvelle puce Snapdragon 888 Plus intègre un nouveau moteur d'IA capable de gérer une puissance de calcul de 32 TOPS. Par rapport au Snapdragon 888, cela représente une hausse de 20% et ce nouveau SoC devrait équiper les futurs smartphones haut de gamme.

Comment apprendre à développer une intelligence artificielle ?

L'intelligence artificielle se développe et son intégration au sein des smartphones est de plus en plus forte. Conscients de ce fait, certaines écoles proposent des programmes adaptés afin d’accompagner aux mieux les étudiants. Vous pouvez par exemple vous inscrire à l’IA School, pour suivre un cursus qui vous permettra de devenir un acteur de la révolution digitale. 😉

Grâce à l'utilisation de l'IA dans la programmation, on peut espérer développer des applications pour travailler plus efficacement et plus rapidement. Pour développer son propre algorithme d'intelligence artificielle, il existe de nombreux langages de programmation adaptés. Certains noms ne sont pas du tout méconnus, car nous pouvons citer le Python et le Java, tandis qu'il y a d'autres langages comme le R ou le langage Prolog.

Est-ce qu'il y en a parmi vous qui ont déjà travaillé sur le développement d'une intelligence artificielle ?

The post L’IA dans les smartphones se développe à grands pas ! first appeared on IT-Connect.

Test OnePlus Nord CE 5G, un smartphone convaincant !

29 juin 2021 à 15:00

I. Présentation

Le 10 juin 2021, OnePlus a dévoilé son nouveau smartphone de la gamme Nord : le OnePlus Nord CE 5G. J'ai eu l'occasion de le tester, c'est pour cette raison que l'on se retrouve aujourd'hui ! Ce modèle se montre ambitieux et nous verrons si cela se confirme au travers de ce test. Commençons par les caractéristiques techniques :

  • Ecran : AMOLED Full HD+ de 6.43 pouces / taux de rafraîchissement de 90 Hz / HDR 10+
  • CPU : Snapdragon 750 (5G)
  • GPU : Adreno 619
  • RAM : 6 Go, 8 Go ou 12 Go
  • Stockage : 128 Go ou 256 Go
  • Batterie : 4 500 mAh (non amovible) - Warp Charge 30T Plus
  • Bluetooth 5.1 (support aptX & aptX HD & LDAC & AAC)
  • Wi-Fi AC (2,4 GHz et 5 GHz)
  • NFC
  • Dual-SIM
  • Port Jack 3.5mm
  • Pas de certification d'étanchéité
  • OxygenOS 11.0 (surcouche Android 11 de OnePlus)
  • Épaisseur : 7,9 mm
  • Poids : 170 grammes
  • Coloris : Charcoal Ink, Blue Void, Silver Ray

D'après OnePlus, par rapport à la génération précédente, le gain en performances serait de 20% pour le CPU et 10% pour le GPU.

Test OnePlus Nord CE 5G

II. Package et design

La boîte du OnePlus Nord contient le smartphone, un guide de démarrage rapide, un petit outil pour accéder au slot des cartes SIM, ainsi qu'une coque en plastique assez souple et transparente, et le chargeur Warp Charge de 30 Watts aux couleurs habituelles de la marque.

Le OnePlus Nord CE quant à lui est un très bel appareil ! J'ai pu obtenir le modèle Blue Void, et les reflets de la façade arrière sont vraiment superbes ! Le dos de l'appareil est en plastique et la bonne nouvelle c'est qu'il n'est pas sensible aux traces de doigts.

A l'arrière de l'appareil, nous retrouvons aussi le logo OnePlus et les trois capteurs photos alignés à la verticale. A l'avant, le capteur photo est positionné en haut à gauche et intégré directement dans l'écran, ce qui correspond à la tendance actuelle.

L'appareil est équipé avec une prise Jack 3,5mm, ce qui est idéal pour connecter un casque ou une enceinte externe. Deux micros sont intégrés, il y en a un sur la gauche du port USB-C et à l'opposé, sur la tranche supérieure. Sur le côté droit, se situe le bouton on/off de l'appareil, tandis que sur le côté gauche il y a un peu plus de choses : le slot pour les cartes SIM et deux boutons différents, l'un pour augmenter le volume et l'autre pour baisser le volume.

Le lecteur d'empreintes quant à lui se situe sous l'écran et la caméra frontale sera exploitée pour la reconnaissance faciale.

Pour accompagner le OnePlus Nord CE, vous avez le choix entre 4 coloris différents pour les coques Bumper officielles. Ces coques rigides sont de bonnes qualités, et cet effet pailleté joue aussi le rôle de grip, ce qui est appréciable pour bien tenir en main l'appareil. La coque Bumper officielle est vendue 19,99 euros.

Terminons la présentation de ce smartphone par ces deux photos où il est accompagné par la coque de protection intégrée à la boîte. J'en profite également pour insister sur le fait que ce smartphone est léger : seulement 170 grammes pour 7,9 mm d'épaisseur.

III. Qualité des photos / vidéos

Passons à la partie photos du smartphone. Commençons par un rappel sur les capteurs : le  OnePlus Nord CE 5G est doté d'un triple capteurs à l'arrière, avec un capteur principal de 64 mégapixels, un capteur de profondeur de champ de 2 mégapixels, et un capteur ultra grand angle de 8 mégapixels.

À l'avant, OnePlus nous propose un capteur de 16 mégapixels pour réaliser nos selfies. Une configuration qui n'est pas sans rappeler le OnePlus Nord N10 5G.

Pour tester la qualité des photos, direction Arromanches-les-bains où l'on peut retrouver les vestiges du port de Mulberry, construit lors de la Seconde Guerre mondiale.

Que ce soit en mode 16 mégapixels ou 64 mégapixels, la qualité des photos en plein jour, sans zoomer, est bonne.

Maintenant, prenons une même scène pour réaliser trois prises de vues : en mode ultra grand angle, en mode normal, et une dernière avec le zoom X10 (max). On constate qu'il y a un lissage importante et une perte de qualité avec le zoom X10, sans trop de surprise. Ce qui me surprend un peu plus, c'est le faible niveau de détails et la qualité du cliché en ultra grand angle, qui est vraiment médiocre.

D'autres clichés, là encore avec les trois angles évoqués précédemment. J'ai profité de cette balade pour réaliser quelques vidéos, à la fois en 1080p et en 4K. Les résultats sont bons, avec un petit plus pour le mode 1080p.

Cela n'est pas liée à la photo directement, mais cette session en plein air m'a permis de me rendre compte que la luminosité de l'écran était trop juste, même lorsqu'elle est réglée au maximum.

Lorsque la luminosité est faible, l'appareil va profiter du mode Nightscape pour améliorer les prises de vue . Avec cette fonctionnalité, l'appareil va prendre jusqu'à 8 photos d'une même scène, pour ensuite les combiner et générer une photo plus lumineuse. De nuit ou lorsque la luminosité est faible, la prise de vue est un peu plus longue, mais le résultat est vraiment bon ! C'est même étonnant car la photo reste lumineuse !

IV. Autonomie

La batterie intégrée au OnePlus Nord CE 5G est de 4 500 mAh, ce qui représente une augmentation de la capacité de près de 10% par rapport au premier modèle Nord.

Côté chargeur, OnePlus continue de miser sur sa technologie Warp, puisqu'ici nous avons le droit à un chargeur Warp Charge 30T Plus.

En théorie, le smartphone devrait se recharger de 0 à 70% en seulement 30 minutes : est-ce bien le cas ?

Alors oui, cette information est correcte. Pour être plus précis, pour passer de 0 à 100%, il faut compter une heure environ. C'est une performance correcte même si l'on est loin des performances affichées par certains smartphones.

Concernant son autonomie en elle-même, si on l'utilise activement : naviguer sur Internet, appels téléphoniques, faire un peu de jeux, regarder quelques vidéos, etc... On peut tenir facilement une journée et demie. En étant un peu moins actif, on peut viser deux jours avant de passer par la case recharge.

Même s'il n'est pas très rapide à la recharge, l'autonomie du OnePlus Nord CE en elle-même est un atout de ce modèle !

V. Performances et Oxygen OS

Sans surprise, le OnePlus Nord CE 5G tourne sous Oxygen OS 11, une version basée sur Android 11. Comme je le disais dans mes précédents tests de smartphones OnePlus, la surcouche de OnePlus est très bonne : c'est un plaisir au quotidien, d'autant plus qu'elle est fluide.

Cela se confirme avec ce nouveau modèle, il faut dire qu'il est bien accompagné : un Snapdragon 750G et une belle quantité de RAM, de 6 à 12 Go selon la version.

J'ai testé différents jeux (dont Fifa sur mobile, Euro 2020 oblige) pour voir comment réagissait l'appareil quand on le sollicite. Résultat : il devient tiède mais on ne peut pas dire qu'il chauffe et surtout cela semble maîtrisé car la température reste stable !

Je dirais que d'un point de vue des performances, le OnePlus Nord CE répond présent lorsqu'on le sollicite, que ce soit pour du multi-tâches ou pour jouer à des jeux gourmands.

VI. Conclusion

Qu'il est beau ce OnePlus Nord CE 5G ! Personnellement, j'adore son design et les reflets au dos de l'appareil ! A côté de ça, OnePlus nous propose un appareil avec un rapport qualité/prix intéressant. Polyvalent et avec une très bonne autonomie, c'est un bon compagnon au quotidien d'autant plus que la surcouche Oxygen OS est appréciable.

Si la photo n'est pas un critère très important lorsque vous choisissez votre smartphone, le OnePlus Nord CE 5G ne va pas vous décevra pas ! A part sur ce point où il est assez rapidement en difficulté, le reste de la copie est très satisfaisant. Petit bémol sur l'écran où la luminosité me semble trop juste.

Il existe en plusieurs versions, que voici :

  • OnePlus Nord CE 5G (6 Go + 128 Go) : 299 euros
  • OnePlus Nord CE 5G (8 Go + 128 Go) : 329 euros
  • OnePlus Nord CE 5G (12 Go + 256 Go) : 399 euros

Le OnePlus Nord CE 5G aura le droit à 2 ans de mises à jour du logiciel, ainsi qu'un suivi sur 3 ans pour les mises à jour de sécurité.

The post Test OnePlus Nord CE 5G, un smartphone convaincant ! first appeared on IT-Connect.
❌