Aller au contenu
Automic Vault
GitHub Télécharger pour macOS

Max Howell

macOS protège vos apps. Nous protégeons votre ligne de commande.

Depuis que j’ai créé Homebrew, Apple a transformé la sécurité des apps Mac. J’apporte le même soin à la ligne de commande.

Automic Vault complète la sécurité de macOS pour les outils CLI pris en charge : identifiants protégés, autorisation de chaque opération et commandes habituelles.

Gratuit et open source. Gardez vos commandes habituelles. Aucun plugin pour agent requis.

Vue d’ensemble d’Automic Vault avec les outils renforcés et les éléments nécessitant une intervention

15 000+ paquets examinés pour détecter l’exposition d’identifiants

Construit sur la sécurité de macOS

Protéger les identifiants de votre terminal.

Apple renforce depuis des années la sécurité des apps Mac avec Gatekeeper, la notarisation, les contrôles contre les logiciels malveillants et les permissions d’accès aux données sensibles.

Les outils CLI conservent encore souvent leurs identifiants dans des fichiers ou des auxiliaires accessibles à d’autres programmes exécutés avec vos droits. Un agent ou une dépendance peut ainsi publier une version ou modifier votre infrastructure cloud sans vous demander votre accord.

Automic Vault s’appuie sur la signature de code de macOS, Hardened Runtime et le Trousseau pour protéger les identifiants de développement et autoriser les opérations CLI prises en charge.

Pour GitHub, av harden gh installe notre CLI signée et modifiée, puis transfère ses identifiants sous la garde d’Automic Vault. Vous utilisez toujours gh. Les opérations authentifiées passent désormais par son Authorization Gate.

Comment nous durcissons vos outils

Votre gestionnaire de secrets devrait savoir à quoi ils servent.

Lire une issue, publier une version et révéler un jeton nécessitent des droits différents. AV vérifie l’opération complète avant d’appliquer l’identifiant.

Un jeton. Trois décisions.
GitHub · Verified Launcher avec la policy Read Only
CommandeDécision
gh issue listLire les ticketsAutoriséRead Only
gh issue createCréer un ticketApprobation requiseRemote Write
gh auth tokenRévéler le jetonApprobation requiseSecret Disclosure

Révéler un identifiant nécessite une décision distincte, même sans modification à distance.

Homebrew

Actualisez l’index. Approuvez les installations.

Le durcissement de Homebrew protège /opt/homebrew contre les modifications par d’autres programmes exécutés avec vos droits. Read & Update autorise les commandes d’inspection reconnues et brew update ; les installations et mises à niveau nécessitent votre Approval. Ce mécanisme vise Homebrew sur Apple Silicon. Les services et la complétion du shell sont incompatibles avec ce mode.

Le durcissement de Homebrew

AWS

Des identifiants temporaires à chaque appel.

Les commandes AWS ordinaires reçoivent des identifiants de session temporaires. Les clés durables sont retirées du fichier d’identifiants partagé. AV obtient des identifiants de session distincts pour chaque processus AWS.

Le durcissement d’AWS

Docker

Le processus et le registre comptent.

Avant de fournir un identifiant de registre, AV vérifie le processus Docker Desktop en cours, sa signature, ses protections d’exécution, sa filiation, ses arguments et le registre demandé.

Le durcissement de Docker
LA POLICY GÈRE LA ROUTINE. VOUS DÉCIDEZ DU RESTE.

Protégez votre ligne de commande

Commencez par les identifiants présents sur votre Mac.

Repérez les identifiants que les outils, dépendances et agents peuvent lire dans vos fichiers ou assistants d’identification. Chaque Finding explique l’exposition et les mesures possibles.

Choisissez un Hardener pris en charge pour un Finding, puis vérifiez la protection installée avec av doctor.

Trouver vos outils
Scanner sans installation
curl -fsSL https://www.automicvault.com/scanner.sh | bash

Télécharge un petit scanner autonome compilé à partir des sources de la dernière version, vérifie sa signature et l’exécute dans un bac à sable en lecture seule, sans accès réseau.

Un Scan sans Finding couvre seulement les vérifications prises en charge. Il ne certifie pas la sécurité de tout votre Mac.

Les Detectors indiquent les vérifications et les Hardeners disponibles.
Les Detectors indiquent les vérifications et les Hardeners disponibles.

Décidez ce que vos outils et agents peuvent faire

Laissez votre agent lire GitHub. Faites-lui demander pour écrire.

Choisissez Read Only pour le gate GitHub de votre agent et une autre politique pour votre terminal. AV vérifie l’identité du logiciel en cours d’exécution pour chaque Launcher avant d’appliquer sa politique.

AV ne place pas votre agent dans une sandbox et n’empêche pas les modifications arbitraires de fichiers locaux.

Avec Write Access, la divulgation et l’utilisation d’identifiants plus puissants nécessitent toujours une Approval. Les opérations Unknown exigent toujours une décision humaine.

Pour une tâche d’agent éligible, accordez dix minutes actives de Write Access sur un gate. Les commandes visibles permettent de prolonger, suspendre ou terminer cet accès.

Choisir les autorisations

La signature du code établit l’identité et l’intégrité, pas l’intention. L’identifiant de tâche limite un accès temporaire sans constituer une identité.

Un outil, avec une règle pour chaque Verified Launcher.
Un outil, avec une règle pour chaque Verified Launcher.

Donnez aux agents les capacités nécessaires

Vérifiez le script de publication une fois.

Un agent prépare les notes de version ; un script vérifié publie sur GitHub et actualise votre CDN. Un Blessed Script lie votre revue au contenu exact et aux capacités déclarées. Un script réentrant attend une contribution de l’agent et expose des points d’entrée fixes. AV autorise chaque invocation. Toute modification invalide la Blessing.

Créer un workflow vérifié

Validez les résultats de l’agent avant de les utiliser. Gardez les Secret Values dans l’exécution du script. Une Blessing ne rend pas le code digne de confiance.

ChatGPT lance le script de publication. Avant l’Approval, AV affiche les capacités déclarées et identifie ChatGPT comme Verified Launcher.
ChatGPT lance le script de publication. Avant l’Approval, AV affiche les capacités déclarées et identifie ChatGPT comme Verified Launcher.

Gardez les secrets des projets hors des fichiers en clair

Utilisez le même Secret Name dans plusieurs projets avec un Project Value différent pour chacun. AV choisit le dossier physique correspondant le plus proche, ou le Global Value si aucun Project Value ne correspond. Pour les clients HTTP compatibles, le Secret Proxy fournit une référence temporaire à l’application et applique l’identifiant réel uniquement aux destinations approuvées.

Comprendre les Project Values Découvrir le proxy d’identifiants

Les dossiers sélectionnent les Values sans accorder d’autorité. La même policy couvre toutes les Values d’un Secret Name. Les références du proxy sont des valeurs au porteur permettant l’accès déjà accordé à la session.

Un Secret Name avec un Global Value et deux Project Values. Les Secret Values restent masquées.
Un Secret Name avec un Global Value et deux Project Values. Les Secret Values restent masquées.

Approuvez les opérations de vos Macs

Examinez les demandes de vos Macs inscrits sur les iPhones éligibles du même compte de trousseau iCloud. Chaque Mac conserve ses Secrets, sa policy et son Authorization History, et applique la décision localement. Vous pouvez aussi activer Touch ID Approval sur un Mac pour autoriser uniquement par biométrie.

Configurer iPhone et Touch ID Approval Rejoindre la bêta publique iPhone sur TestFlight

iPhone Approval retire les actions d’autorisation par souris et clavier sur le Mac. Désactivez iPhone Mirroring et Show on Mac, ou exigez Face ID ou Touch ID sur chaque iPhone éligible. Une panne du relais n’active aucun mode de secours.

Deux demandes en attente, de Maliwan et Pangolin, sur un seul iPhone.
Deux demandes en attente, de Maliwan et Pangolin, sur un seul iPhone.

Les limites de la protection

AV protège les identifiants pris en charge et contrôle les opérations prises en charge face au code exécuté avec vos droits. Les wrappers n’interceptent pas toutes les commandes, et installer un paquet ne le rend pas sûr. Une compromission de root ou du noyau, les destructions locales arbitraires et le comportement d’un Target après réception d’un Secret restent hors de cette limite.

Lire le modèle de sécurité

Consultez l’utilisation de vos identifiants

Authorization History conserve localement les demandes autorisées et refusées. AV enregistre et vérifie le Record d’un Secret Use autorisé avant de transmettre le Secret. Cet historique est limité, sans garantie de résistance aux altérations ni d’exhaustivité forensique.

Définitions canoniques

Gratuit. Open source. macOS.

L’app Mac est gratuite sous Apache-2.0. L’option iPhone Approval nécessite un abonnement actif pour envoyer une réponse d’autorisation. Refuser ne nécessite aucun abonnement.