PathScope

PathScope

Un outil d'analyse des voies d'élévation de privilèges

Sur cet appareil, PathScope recense les voies par lesquelles un utilisateur ordinaire peut atteindre root (les privilèges d'administrateur) ou des données sensibles, et indique par où corriger pour obtenir le meilleur effet, avec une priorité pour chaque point. L'analyse est en lecture seule : PathScope ne modifie aucun réglage et n'applique aucune correction automatiquement.

Analyse des voies

À partir de l'appartenance au groupe docker, des exécutables qui s'exécutent avec les privilèges de root (SUID), des exécutables modifiables de services exécutés en tant que root, de sudo sans mot de passe, de cron, des autorisations de confidentialité de macOS (TCC), etc., il présente les voies menant à root ou à des données sensibles, sous forme de schéma et de liste.

Points de correction et corrections suggérées

Il indique, avec une priorité, les points à corriger en premier pour obtenir le meilleur effet (points de correction), accompagnés d'exemples de commandes de correction et de la correspondance MITRE ATT&CK. Il n'exécute pas les commandes automatiquement. « Et si je corrige ceci ? » permet de simuler les voies obtenues après une correction (cet appareil n'est pas modifié).

Historique et comparaison

Les résultats de l'analyse sont conservés sous forme d'historique sur cet appareil et peuvent être comparés au précédent. Il prend aussi en charge l'exportation des réglages d'exécution planifiée et la synthèse des résultats de plusieurs appareils.

Explication et lecture de la configuration par un LLM (facultatif, désactivé par défaut)

Lorsque cette fonction est activée, un LLM peut rédiger une explication des résultats de l'analyse, ou lire des fichiers de configuration dont la syntaxe varie et qui se prêtent mal à une lecture automatique (sudoers, cron, scripts, etc.) afin d'y rechercher les passages liés aux privilèges root. PathScope n'utilise dans l'analyse ce que le LLM a trouvé qu'après avoir vérifié que la ligne existe bien dans le fichier d'origine.

10 langues

L'interface est disponible en japonais, anglais, coréen, chinois simplifié, chinois traditionnel, allemand, français, espagnol, italien et portugais. Elle suit automatiquement la langue du système et peut être modifiée dans les réglages. La ligne de commande est disponible en japonais et en anglais.

Ligne de commande

La commande pathscope permet de réaliser la même analyse que l'interface. Elle peut par exemple signaler par le code de sortie 1 que le nombre de voies a augmenté par rapport à l'analyse précédente, ce qui convient aux exécutions planifiées et à l'automatisation.

Exemples d'écrans

PathScope results: a diagram of the paths from a user to root and to sensitive data, and the fix points in priority order
PathScope: the result of "If I fix them all?", showing which paths disappear after applying every suggested fix
PathScope LLM assist: items found in config files, items that could not be confirmed, files read and files that could not be read

Toutes les données affichées dans ces écrans (noms d'utilisateur, chemins de fichiers, etc.) sont fictives. Les réponses du LLM viennent d'une commande de remplacement qui renvoie des réponses fixes.

Comment le lancer

Mac : ouvrez PathScope dans le dossier Applications (il a sa propre icône, distincte de RoamSwitch), puis cliquez sur « Analyser ».

Ligne de commande : PathScope.app/Contents/MacOS/pathscope effectue la même analyse. Vous pouvez ajouter des options comme --what-if-fix=all (que se passerait-il si tout était corrigé) et --baseline=precedent.json --fail-on=new (code de sortie 1 si le nombre de voies a augmenté depuis la dernière analyse).

Confidentialité et périmètre

PathScope effectue toute son analyse sur cet appareil. Il est en lecture seule et ne modifie ni les réglages ni les fichiers. Il n'ouvre aucun port en écoute et sa fenêtre ne charge aucun site externe. L'historique des résultats et les réglages ne sont enregistrés que sur cet appareil. Les résultats d'analyse contiennent des informations sensibles sur la configuration de cet appareil (noms d'utilisateur, chemins de fichiers, permissions) ; limitez donc l'étendue de leur conservation et de leur partage.

Le « Zero Telemetry » de RoamSwitch (il n'envoie à l'extérieur ni le contenu des communications ni les journaux) décrit RoamSwitch lui-même. Les communications qui ont lieu lorsque vous activez l'intégration LLM de PathScope n'en font pas partie. Tant que l'intégration LLM reste désactivée, PathScope n'envoie jamais le contenu de son analyse hors de l'appareil.

Licence

PathScope est sous licence Apache License 2.0 et n'est pas couvert par le contrat de licence (EULA) de RoamSwitch. Le texte de la licence, le fichier NOTICE et la liste des logiciels tiers inclus se trouvent dans l'application (PathScope.app/Contents/Resources).

Configuration requise et mises à jour

macOS 12 ou version ultérieure. L'application ne se connecte à lafine.net pour obtenir les informations sur la dernière version que lorsque vous appuyez sur « Rechercher des mises à jour » dans « Mise à jour » (rien concernant l'appareil ou les résultats de l'analyse n'est envoyé). Une mise à jour téléchargée n'est installée que si la vérification de sa signature réussit.