PROJET AUTOBLOG


IT-Connect

Site original : IT-Connect

⇐ retour index

Windows 10 : modifier l’emplacement par défaut des apps

vendredi 31 juillet 2020 à 08:30

I. Présentation

Sous Windows 10, lorsqu'une application est installée à partir du Microsoft Store, elle s'installe directement sur le disque système sans demander à l'utilisateur où il souhaite l'installer. Cela est contraire aux logiciels avec un installeur classique où généralement on laisse le contrôle à l'utilisateur, ce qui permet d'installer des logiciels sur un disque différent du disque système.

Dans ce tutoriel, je vais vous expliquer comment déplacer une application Microsoft Store déjà installée sur votre système vers un autre disque, et aussi comment modifier l'emplacement par défaut des applications du Microsoft Store.

II. Modifier emplacement par défaut apps Microsoft Store

Sur votre PC Windows 10, ouvrez le menu Démarrer et accédez aux Paramètres. Ensuite, cliquez sur "Système".

À gauche, cliquez sur "Stockage" et sur la page qui s'ouvre, descendez, afin de trouver "Modifier l'emplacement d'enregistrement du nouveau contenu".

Dans cette partie de la configuration, on peut définir le nouvel emplacement pour les photos, les films, etc... Et les applications : une bonne nouvelle. Par défaut, "Local Disk C:" est sélectionné, vous pouvez modifier et sélectionner un autre lecteur. Cela va créer un dossier WindowsApps sur ce nouveau volume pour stocker les futures applications.

Le tour est joué concernant les futures applications installées sur votre système. Maintenant, voyons comment faire pour les applications déjà installées.

III. Déplacer une application déjà installée sous Windows 10

Prenons le cas de l'application Netflix, disponible sur le Microsoft Store, au même titre que des milliers d'autres. Voyons comment déplacer l'application Netflix sur une autre partition, notamment parce que la mise en cache des téléchargements peut s'avérer gourmande.

Toujours dans le panneau des paramètres, cette fois-ci, accédez au menu "Applications".

Dans la liste des applications, recherchez "Netflix" (ou une autre application) et cliquez sur le bouton "Déplacer" propre aux applications du Microsoft Store.

Un autre menu va s'afficher, sélectionner le lecteur vers lequel déplacer cette application et cliquez sur le bouton "Déplacer" pour valider l'opération.

Voilà, vous êtes désormais capable de gérer le stockage pour les applications modernes déjà installées et pour les applications qui seront installées par la suite 🙂

BootHole : une vulnérabilité qui touche Linux et Windows

jeudi 30 juillet 2020 à 17:26

Les systèmes Linux et Windows sont affectés par une attaque commune. Cela s'explique par le fait que cette attaque cible directement le GRUB2 et qu'elle affecte aussi le Secure Boot.

Cette vulnérabilité baptisée BootHole (CVE-2020-10713) permet aux hackers d'altérer directement le processus de démarrage qui précède le boot de l'OS. Nous parlerons alors de bootkit.

Ce sont des chercheurs en sécurité d'Eclypsium qui ont découvert cette vulnérabilité au sein du fichier grub.cfg et celle-ci permettrait à l'attaquant d'injecter du code malveillant pendant le processus de démarrage : de quoi cibler le système d'exploitation qui va démarrer.

Le schéma ci-dessous explique de façon synthétique le fonctionnement de l'attaque BootHole. Le fichier grub.cfg va être utilisé pour exécuter des commandes malveillantes au sein de GRUB2 lorsque celui-ci va charger le fichier de configuration.

D'après les chercheurs en sécurité, l'exécution du malware pourrait permettre de remplacer complètement le bootloader pour utiliser une version malveillante.

Au début de l'article, je mentionnais également le Secure Boot car cette attaque fonctionne aussi lorsque cette fonctionnalité est activée puisqu'elle va permettre de contourner cette protection. Pour rappel, le Secure Boot sert à sécuriser le démarrage du système en vérifiant que les composants de firmware chargés sont bien signés.

Pour réaliser cette attaque, il est nécessaire d'avoir un accès administrateur sur la machine afin de modifier le fichier grub.cfg. Cette barrière n'est pas incontournable puisque le système et ses composants systèmes, notamment lorsqu'ils ne sont pas patchés, contiennent de nombreuses failles permettant l'élévation de privilèges.

D'après les experts en sécurité, plus de 80 shims sont affectés par cette vulnérabilité. Le shim est un composant qui intègre un certificat et qui va être utilisé pour vérifier le bootloader GRUB2 : s'il est affecté par la faille BootHole, alors le GRUB2 de la machine peut être altéré. D'ailleurs, quand je parle de machine, il faut savoir que cette faille touche aussi bien les postes de travail que les serveurs.

Désormais, Eclypsium attend à une réaction de la part des éditeurs afin d'obtenir des correctifs de sécurité, notamment du côté de chez Microsoft, Debian, VMware, Oracle, Citrix, HP ou encore Red Hat.

Cette faille est critique puisqu'elle a reçu un score CVSS de 8.2, ce qui signifie qu'elle permet d'obtenir un accès quasi total sur la machine ciblée. Cette faille touche aussi bien Linux que Windows puisque sur une machine, le bootloader GRUB2 peut-être utilisé pour charger ces deux systèmes, notamment dans le cadre d'un dual-boot. Autrement dit, des millions de systèmes sont concernés par cette vulnérabilité.

📌 Lire le rapport complet d'Eclypsium

Voici le top 20 des langages de programmation

jeudi 30 juillet 2020 à 11:39

Plusieurs fois par an, la société RedMonk réalise un classement des langages de programmation les plus populaires. Un nouveau classement est sorti récemment, faisons le point sur ce classement ainsi que ceux de l'IEEE Spectrum et Tiobe.

Le langage Python est désormais le deuxième langage le plus populaire, ce qui n'est pas anodin ! En effet, depuis 2012, le langage Java occupait soit la première, soit la deuxième place. Une tendance qui se confirme puisque lors du précédent classement publié en mars 2020, Java et Python étaient déjà au coude à coude pour la deuxième place, alors que JavaScript était déjà en tête de ce classement.

Les classements de popularité publiés par RedMonk s'appuient sur les données de StackOverFlow et de GitHub. Par ailleurs, le dernier classement de popularité publié par l'IEEE Spectrum donne un résultat différent. Le langage Python est positionné en première position, ce qui confirme sa popularité auprès des développeurs, et derrière nous avons dans l'ordre : Java - C - C++ - Java. Un troisième classement est à prendre en compte, c'est celui de Tiobe publié ce mois-ci. Celui de Tiobe place C en tête, suivi par Java, Python, C++ et C#.

Avec ces trois classements, nous avons une idée des langages les plus populaires, et pour le reste, avons-nous des progressions intéressantes ? La réponse est "Oui" ! En effet, deux langages montrent une belle progression : Rust et Kotlin alors que TypeScript continue d'être à la mode.

- Rust :

Ce langage de programmation créé par Mozilla il y a 5 ans, a franchi une nouvelle étape. Pourquoi ? Parce que pour la première fois il se positionne à la 20ème position du classement de RedMonk et entre donc dans le top 20. Au niveau du classement de Tiobe, il est positionné à la 18ème place. En 5 ans, Rust est passé de la 48ème place à la 20ème.

Rust est notamment utilisé par les géants d'Internet tels qu'Amazon, Dropbox, Google, Facebook ou encore Microsoft pour la création de leurs plateformes. Microsoft l'utilise pour ses fonctions liées à la sécurité de la mémoire.

- Kotlin :

Kotlin est un langage de programmation Open Source supporté par Google pour les applications Android. Il a réalisé une très belle progression également sur les cinq dernières années puisqu'il est passé de la 68ème position à la 19ème chez RedMonk.

- TypeScript

Développé par Microsoft, le langage TypeScript montre une belle stabilité puisqu'il a conservé sa 9ème place dans le classement. Certains experts estiment que TypeScript pourrait avoir le potentiel pour se hisser dans le top 5 car il s'agit d'un langage en plein essor.

Le langage TypeScript agit comme une surcouche de JavaScript puisqu'il a pour objectif d'améliorer et de sécuriser du code JavaScript.

- PowerShell

Le graphique ci-dessous montre le classement de RedMonk entre 2012 et 2020, avec les changements de position année par année. Il montre notamment que PowerShell est à la 17ème position depuis 2018. Il a fait son entrée dans le classement en 2017, à la 18ème position.

Il est à noter que PowerShell n'est pas dans le top 20 chez Tiobe et l'IEEE Spectrum.

- Classement RedMonk - Juin 2020

1. JavaScript
2. Python
3. Java
4. PHP
5. C++
5. C#
7. Ruby
7. CSS
9. TypeScript
10. C
11. Swift
11. Objective-C
13. R
14. Scala
15. Go
15. Shell
17. PowerShell
18. Perl
19. Kotlin
20. Rust

📌 Voir le classement de Tiobe

📌 Voir le classement de l'IEEE Spectrum

Gestion de projet : qu’est-ce qu’un PMO ?

mercredi 29 juillet 2020 à 13:00

Tout d'abord, il faut savoir que PMO signifie "Project Management Office" que l'on pourrait traduire en français par "bureau de gestion de projets". Mais, cela ne nous dit pas trop à quoi ça sert ? Un logiciel ? Un endroit ? Une personne ? C'est plutôt vers la troisième réponse qu'il faut s'orienter.

En effet, un PMO, c'est une personne qui va pouvoir superviser l'ensemble des projets afin d'assurer la direction des projets stratégiques, mais aussi intervenir auprès des chefs de projets de l'entreprise voire même directement auprès de certains services. Cette personne doit être polyvalente et surtout être capable de prendre de la hauteur par rapport aux projets à analyser afin de détecter les alertes éventuelles à partir des informations remontées. Par conséquent, cela nécessite également d'être rigoureux.

Le PMO va s'assurer que les projets en cours répondent bien aux objectifs de l'entreprise et surtout il va essayer de normaliser la gestion de projet grâce à des processus dans le but de gagner en efficacité. Il a la vision transversale (et stratégique) des projets en cours dans l'entreprise mais aussi des projets à venir. En complément, il doit réaliser la mise à jour de la documentation, le reporting et toute la partie statistiques liée à la gestion de projet. En bref, le PMO a un rôle crucial dans l'entreprise puisque c'est un véritable chef d'orchestre !

L'infographie ci-dessous, bien qu'elle ait quelques années, synthétise cette notion de PMO. Bonne lecture.

Bases de la gestion de projets: Qu’est-ce qu’un PMO?

Infographie offerte par Wrike - projet comparaison des outils de gestion

PowerShell : compresser et décompresser une archive ZIP

mercredi 29 juillet 2020 à 09:30

I. Présentation

Dans ce nouvel article, nous allons apprendre à compresser des données dans une archive ZIP et nous verrons comment décompresser une archive ZIP. Le format ZIP est très intéressant puisqu'il permet, dans la majorité des cas, de réduire considérablement la taille des fichiers, ce qui va permettre d'optimiser les transferts de données.

Les commandes utilisées dans ce tutoriel sont intégrées au module Microsoft.PowerShell.Archive disponible nativement sous Windows 10 puisqu'il bénéficie de PowerShell v5 en natif.

Ce tutoriel est disponible au format vidéo :

II. Compresser des fichiers avec PowerShell

A. Créer le ZIP d'un dossier

Commençons par compresser des fichiers au sein d'une archive ZIP à l'aide du cmdlet Compress-Archive. Pour ma part, je me trouve sur Windows 10.

Pour créer simplement l'archive ZIP d'un dossier complet, on va spécifier le dossier à compresser et le chemin vers le fichier ZIP à créer.

Compress-Archive -Path <chemin-vers-dossier-a-compresser> -DestinationPath <chemin-vers-ZIP>

Par exemple pour compresser le dossier "C:\TEMP\ZIP" :

Compress-Archive -Path C:\TEMP\ZIP -DestinationPath C:\TEMP\ZIP\powershell.zip

Le ZIP se crée en quelques secondes, mais cela dépend de la quantité de données à zipper.

B. Comment créer une archive ZIP avec une liste de fichiers et non un dossier complet ?

Il faudra remplacer le paramètre -Path par -LiteralPath et indiquer la liste des fichiers, séparés par une virgule. Par exemple, voici une commande qui va créer une archive ZIP avec deux fichiers : "C:\TEMP\ZIP\rollback.mkv" et "C:\TEMP\ZIP\intro.mkv"

Compress-Archive -LiteralPath "C:\TEMP\ZIP\rollback.mkv", "C:\TEMP\ZIP\intro.mkv" -DestinationPath C:\TEMP\ZIP\2.zip

💡 Si l'on ajoute le paramètre -Force à la fin de la commande, cela permettrait d'écraser l'archive ZIP si elle existait déjà.

C. Créer un ZIP avec le contenu d'un dossier

Lorsque l'on ZIP un dossier complet, cela crée un dossier dans le ZIP et au sein du dossier on retrouve toutes les données contenues dans le dossier. Si l'on veut éviter d'avoir ce dossier racine dans le ZIP et obtenir seulement son contenu, il faut utiliser le wildcard "*".

Si je reprends le premier exemple, cela donne :

Compress-Archive -Path C:\TEMP\ZIP\* -DestinationPath C:\TEMP\ZIP\powershell-files.zip

Cette petite astuce est à connaître et je tiens à préciser que cela prendre toutes les données de façon récursive. Si vous souhaitez prendre seulement les fichiers du dossier racine, sans aller rechercher les données des éventuels sous-dossiers, il faudra utiliser ce filtre :

Compress-Archive -Path C:\TEMP\ZIP\*.* -DestinationPath C:\TEMP\ZIP\powershell-root.zip

De la même façon on peut utiliser le wildcard pour ajouter au ZIP seulement les fichiers "*.mkv" par exemple :

Compress-Archive -Path C:\TEMP\ZIP\*.mkv -DestinationPath C:\TEMP\ZIP\powershell-mkv.zip

D. Comment ajouter des fichiers à une archive ZIP existante ?

Le cmdlet Compress-Archive intègre un paramètre nommé -Update qui permet d'ajouter des données à une archive ZIP existante. Pour ajouter le fichier "C:\TEMP\ZIP\video.mkv" à l'archive "C:\TEMP\ZIP\powershell.zip", il suffit d'exécuter cette commande :

Compress-Archive -LiteralPath "C:\TEMP\ZIP\video.mkv" -DestinationPath "C:\TEMP\ZIP\powershell.zip" -Update

Le paramètre -Update est indispensable, sinon, une erreur va s'afficher pour vous informer que le fichier ZIP existe déjà sauf si vous indiquez -Force où le ZIP sera écrasé. Vous l'aurez compris -Update et -Force ne sont pas compatibles.

E. Ajuster le niveau de compression

Lorsque l'on crée une archive ZIP, on peut jouer sur le niveau de compression : le cmdlet Compress-Archive intègre cette possibilité avec le paramètre -CompressionLevel. Il dispose de trois valeurs :

Il suffira de l'utiliser comme ceci :

Compress-Archive -Path C:\TEMP\ZIP\*.* -DestinationPath C:\TEMP\ZIP\powershell-files.zip -CompressionLevel Fastest

III. Décompresser un ZIP avec PowerShell

Le cmdlet pour décompresser une archive ZIP en PowerShell est différent, il se nomme "Expand-Archive". Pour l'utiliser, c'est relativement basique, il faut spécifier le ZIP à décompresser et le chemin vers le dossier dans lequel extraire le contenu :

Expand-Archive -LiteralPath <chemin-vers-zip> -DestinationPath <chemin-vers-destination>

Le fait d'ajouter le paramètre -Force permettra d'écraser les fichiers existants dans le dossier cible.

Voici un exemple pour décompresser le ZIP "C:\TEMP\ZIP\powershell-files.zip" dans le dossier ""C:\TEMP\UNZIP"" :

Expand-Archive -LiteralPath C:\TEMP\ZIP\powershell-files.zip -DestinationPath "C:\TEMP\UNZIP" -Force

Il est à noter que la commande Expand-Archive créera automatiquement le dossier de destination s'il n'existe pas.

Maintenant, à toi de jouer et d'implémenter ces commandes dans tes scripts ! 😉