VPN enregistré sur Android : quel secret pouvez-vous récupérer ?
Un téléphone qui se reconnecte sans demander de mot de passe n’en stocke pas un que vous pouvez copier. Comparez les quatre identifiants et la récupération dont chacun a besoin.
Le téléphone se reconnecte au VPN chaque matin sans rien demander. Cela implique que l’identifiant se trouve quelque part à l’intérieur. En général, ce n’est pas le cas, du moins pas sous une forme que vous pouvez lire et saisir sur un nouvel appareil.
Ce que le téléphone possède, c’est l’autorisation de se connecter. Ce que vous voulez, c’est un secret que vous pouvez emporter, et ce sont des propriétés différentes qui produisent fortuitement le même comportement à l’écran.
Avant de réinitialiser quoi que ce soit, déterminez lequel des quatre types de secret manque réellement, car chacun a un propriétaire différent et une récupération différente.
Une connexion qui fonctionne n’est pas un mot de passe enregistré
Une application qui se reconnecte silencieusement peut détenir un mot de passe, un jeton de session, une référence à un certificat ou rien de plus qu’une clé liée à l’appareil qu’elle ne peut pas exporter. Les quatre produisent la même expérience utilisateur et aucune n’est interchangeable.
Une rangée de points dans un champ de réglages est une décision d’affichage, pas une preuve. Certaines applications stockent réellement un mot de passe récupérable et proposent de le révéler ou de l’exporter ; d’autres prennent un jeton dans un flux d’authentification unique et ne voient jamais le mot de passe.
La première question n’est donc pas où se trouve le fichier. C’est quel type d’autorisation l’application a reçu, et cette réponse vient du fournisseur, pas de l’appareil.
Quatre secrets, quatre récupérations
Faites correspondre votre situation à une ligne avant de contacter qui que ce soit, car la demande change complètement selon le cas.
| What is missing | Who can restore it |
|---|---|
| Account password used with a username | The identity provider, through a reset |
| Password protecting a private key or PKCS#12 package | Nobody, if it is forgotten; a fresh profile and key are issued instead |
| Session token or SSO session | Nobody; sign in again to obtain a new session |
| Reference to a certificate or key held on the device | The administrator, by enrolling the new device |
La deuxième ligne piège le plus souvent les gens. Un mot de passe d’importation PKCS#12 protège du matériel de clé et n’a aucun rapport avec la connexion au compte, donc réinitialiser le mot de passe du compte ne récupère rien. Si le mot de passe du paquet est réellement perdu, la solution est une réémission.
La quatrième ligne explique beaucoup de fils d’assistance confus. Le profil peut référencer un identifiant dans le magasin de clés de la plateforme plutôt que contenir une copie portable, et dans ce cas il n’y a rien à extraire du profil, même en principe.
Pourquoi la copie des données d’application échoue généralement
L’ancienne recette consiste à extraire le répertoire de données de l’application et à y lire la configuration. Sur Android actuel, la recette a deux problèmes indépendants.
Le premier est la politique de sauvegarde. Android 12 a restreint les données d’application exportées par l’ancien chemin adb backup pour les applications ciblant l’API 31 ou ultérieure, et les applications peuvent exclure entièrement leurs données de la sauvegarde. Une procédure écrite pour un appareil plus ancien n’est pas une méthode de récupération universelle pour un appareil actuel.
Le second est le magasin de clés. Les clés qui y sont générées peuvent être non exportables et liées au matériel, comme le décrit la documentation Android Keystore. Copier un blob chiffré ne copie pas la clé qui le déchiffre, donc un répertoire restauré peut contenir un identifiant que le nouvel appareil ne pourra jamais utiliser.
Aucun des deux problèmes n’est un bug à contourner. Les deux sont la plateforme qui fait ce pour quoi elle a été conçue, et les traiter comme des obstacles finit généralement par un téléphone rooté et sans mot de passe.
Passez délibérément à un téléphone de remplacement
Faites d’abord ce qui est pris en charge. Si le fournisseur propose une exportation qui inclut explicitement les identifiants dont vous avez besoin, utilisez-la et vérifiez le résultat sur le nouvel appareil avant d’effacer l’ancien. Sinon, demandez un nouveau profil ou un nouvel enrôlement, ce qui est la voie normale pour les services basés sur certificats et prend généralement moins de temps que le contournement.
L’ordre compte. Enrôlez le remplacement, connectez-le, faites passer une requête de test par le tunnel, et seulement ensuite mettez l’original hors service. Garder le téléphone qui fonctionne jusqu’à ce que le nouveau soit prouvé est l’assurance la moins chère qui existe, et elle ne coûte que de la patience.
Prévoyez aussi les effets secondaires d’une réinitialisation. Si le mot de passe du compte est réinitialisé ou si l’identité de l’appareil est révoquée, d’autres sessions peuvent être invalidées, y compris un client portable et une tablette dont personne ne se souvenait. Traitez-les dans la même fenêtre au lieu de les découvrir un par un.
Ce qu’il ne faut pas faire
Ne rootez pas le seul appareil qui fonctionne pour chercher un fichier en clair. Vous transformez un problème de récupération d’accès en problème d’intégrité de l’appareil, vous pouvez casser les contrôles d’intégrité de l’application elle-même, et vous n’avez toujours aucune garantie que la valeur recherchée existe sous forme lisible.
Ne collez pas de clés privées, de profils exportés ou de mots de passe dans un ticket d’assistance pour prouver que le problème est réel. Le fournisseur a besoin du nom du profil, de la version de l’application, de l’identifiant du compte et de l’erreur, dont aucun n’est secret.
Et ne désactivez pas la vérification des certificats pour obtenir une connexion pendant que vous attendez. Cela échange une gêne temporaire contre un affaiblissement permanent du seul contrôle qui vous dit à quel serveur vous parlez. Notez les quatre faits, posez la question précise et utilisez la voie prévue.