Journal Sécurisation du port USB-C sur smartphone pour moules barbares

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
5
14
oct.
2024

Chers bricoleurs et bricoleuses de l'extrême,

Je sollicite votre expertise pour trouver la méthode la plus efficace pour sécuriser le port USB-C de nos smartphones.

L'objectif est qu'un attaquant soit obligé de changer complètement le port USB-C, ce qui le forcerait à ouvrir le smartphone et à retirer la batterie. Cette contrainte ajouterait une barrière supplémentaire à toute tentative d’accès non autorisé pour dumper la RAM.

Habituellement, je désactive le port USB-C via l'OS Android pour prévenir les attaques. C’est efficace, mais il existe toujours une faille théorique : en mode FASTBOOT, un attaquant pourrait exploiter une vulnérabilité au niveau du firmware pour tenter de récupérer des données de la RAM. L'idée serait d'éteindre le téléphone, de le rallumer, et d’essayer de récupérer des informations sensibles.

Actuellement, il est impossible de désactiver le port USB-C en mode FASTBOOT. Certes, verrouiller le bootloader limite les risques, mais il reste une faille théorique que nous ne contrôlons pas totalement.

C'est pourquoi j'ai eu l'idée de bloquer le port USB-C de manière définitive et d'opter pour la recharge sans fil. Voici les options envisagées :

A) Dessouder le port USB-C
C'est la solution la plus fiable, mais difficilement reproductible pour plusieurs smartphones. Cela obligerait un attaquant à ouvrir le téléphone, à retirer la batterie et à remplacer complètement le port USB-C. Ainsi, la récupération des données serait impossible, car les éventuelles traces résiduelles en RAM auraient disparu depuis longtemps.

B) Utiliser un cache USB-C en silicone, fixé avec de la super glue
Une fois la glue sèche, le port est bloqué. Mais je me demande : un électronicien pourrait-il nettoyer le port en moins de 18 heures ? Ce délai est crucial, car après 18 heures sans connexion, le téléphone redémarre en mode BFU (Before First Unlock), rendant la récupération des données impossible.

C) Bloquer le port avec de la colle époxy
Je n’ai pas d’expérience avec l’époxy, mais mes recherches suggèrent qu’elle est presque impossible à retirer. Cela pourrait être la meilleure solution pour forcer un attaquant à devoir remplacer complètement le port USB-C, ce qui nécessiterait d'ouvrir le téléphone et de retirer la batterie.

Alors, chers moules barbares, quelle méthode barbare recommanderiez-vous pour rendre un port USB-C inutilisable sans endommager le smartphone et sans l’ouvrir, pour que la technique puisse être facilement reproduite en série ?

  • # Colles

    Posté par  (site web personnel) . Évalué à 3 (+1/-0).

    Les colles, l’epoxy en particulier, c’est super chouette. Mais la plupart sont sensibles à des solvants qui les rendent probablement assez aisée à retirer sans abîmer le matériel. Par ailleurs, un attaquant décidé ne pourrait-il pas aisément forer mécaniquement pour restaurer un contact électrique vers chaque conducteur du port ? Est-ce que fondre ensemble les connecteurs de données du port ne serait pas plus radical ? Voire si une protection anti court-circuit existe, l’ensemble des connecteurs ?

    « IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace

    • [^] # Re: Colles

      Posté par  . Évalué à 1 (+0/-0). Dernière modification le 14 octobre 2024 à 08:48.

      Oui, les solvants, c’est justement ce qui m'embête avec les colles. C’est pour ça que j'ai pensé à l'époxy, mais je ne sais pas si c’est vraiment facile à enlever ou pas.

      C'est pour ça que je me demandais si coller un cache USB-C en silicone à l’intérieur du port ne serait pas plus pratique.

      Pour l’idée de forer les contacts, c’est vrai qu'un attaquant motivé pourrait tenter le coup. Mais bon, c’est risqué et il pourrait abîmer des trucs au passage, donc ça reste dissuasif même pour les plus téméraires.

      Fondre ensemble les connecteurs de données, ou même tous les connecteurs s’il y a une protection anti court-circuit, ça pourrait être une vraie galère pour quelqu’un qui essaie de les réactiver. Même si le gars réussit à retirer ce qui bloque, il se retrouve avec un port inutilisable.

      Merci pour les idées ! Je vais creuser un peu l’option du court-circuit permanent sans cramer la carte mère. Si t’as des astuces pour faire ça proprement, je suis preneur !

      Et d’ailleurs, tu aurais une idée de comment faire ça sans ouvrir le téléphone ? Peut-être avec un fer à souder ?

      Car avec mes gros doigts boudinés, bousiller le port USB-C, ça va être chaud :)

  • # attaquant

    Posté par  (Mastodon) . Évalué à 9 (+6/-0).

    je crois que si l'attaquant est prêt à exploiter une faille de fastboot, démonter le smartphone pour accéder à l'usb sans passer par le port externe ne lui fera pas peur.

    • [^] # Re: attaquant

      Posté par  . Évalué à 2 (+1/-0).

      Effectivement, si un attaquant veut accéder directement à la carte mère pour contourner le port USB-C externe, il devra de toute façon démonter le smartphone et retirer la batterie. Cette étape complique sa tâche, car dès qu'on enlève la batterie, on se retrouve en mode BFU (Before First Unlock) et non en AFU (After First Unlock).

      En mode BFU, les protections sont bien plus fortes et les données sont encore mieux sécurisées, car elles ne sont pas déchiffrées comme elles peuvent l’être en AFU. Donc, même s’il parvient à accéder physiquement à l’USB interne, il sera confronté à un niveau de sécurité supplémentaire qui rend l'attaque beaucoup moins faisable. L’objectif est vraiment de rendre le processus suffisamment complexe pour décourager ou ralentir toute tentative de ce genre.

      • [^] # Re: attaquant

        Posté par  (site web personnel) . Évalué à 3 (+0/-0). Dernière modification le 14 octobre 2024 à 09:17.

        Dans ce cas, il va démonter le téléphone sans débrancher la batterie, quitte à faire des trous dans la coque.

        Je pense que tu ne peux que retarder le moment. Avec la bonne résines, tu peux en trouver une qui se dissout mais bousille le smartphone en même temps. Tu peux souder un truc dans l'usb-C pour empécher son usage aussi (même avec des troues dans la coque).

        "La première sécurité est la liberté"

  • # Le bricolage, c'est un métier

    Posté par  . Évalué à 1 (+1/-2).

    Le téléphone, tu le recharges comment ?

  • # pourquoi la ram uniquement?

    Posté par  . Évalué à 3 (+1/-0).

    J'ai l'impression que tu parles de la cold-boot attack. On redémarre sur un système qui va dumper toute la RAM et à l'intérieur du dump on cherche des données comme les clés de chiffrement du disque. On déchiffre le disque, on accède à tes données.

    Sur tes points:

    A)
    Pour le port USB, pourquoi pas l'enlever, mais qu'est ce qui empêche un attaquant de s'en prendre directement au disque? Il peut démonter le téléphone, ressouder un port USB (why not) et lancer des attaques sur le TEE (https://connect.ed-diamond.com/MISC/misc-099/android-tee) pour aller chercher à extraire tes clés de chiffrement de disque.

    B)
    ces 18h c'est pour grapheneOS? Après, cf point A, même après 18h.

    C)
    je pense que c'est la pire des solutions. Ca se décape très bien l'epoxy.

    • [^] # Re: pourquoi la ram uniquement?

      Posté par  . Évalué à 2 (+1/-0).

      A) Oui, effectivement, enlever le port USB-C est probablement la meilleure solution, mais difficile à réaliser en série.

      B) Oui, je fais référence à une attaque de type cold boot, mais cela ne me dérange pas. Pour ressouder le port USB-C, il faudrait de toute façon retirer la batterie. Donc, on passe l'appareil de l'état AFU (After First Unlock) à l'état BFU (Before First Unlock).

      Avec une phrase de passe suffisamment solide, il faudrait alors passer par une attaque par brute force.

      Je travaille effectivement avec GrapheneOS, et le délai de 18h est pratique pour ne pas gêner les utilisateurs.

      C) Bon, eh bien, tu viens de doucher mes espoirs de trouver une solution facile :) Je cherche une idée un peu folle, mais simple, sans avoir à retirer une tonne de ports USB-C :)

  • # La réponse D

    Posté par  . Évalué à 2 (+1/-0).

    Si on a ce genre de préoccupation, mieux vaut ne pas utiliser de smartphone, tout du moins pour faire des choses illégales confidentielles.

    • [^] # Re: La réponse D

      Posté par  . Évalué à 1 (+0/-0).

      Le chiffrement est robuste et, de toute façon, les gens ont besoin de communiquer. On peut quand même se prémunir contre certaines attaques en prenant quelques précautions. L'objectif est de faire en sorte qu'un attaquant se retrouve face à un appareil en état BFU plutôt qu'en AFU. Dans cet état, les données ne sont pas du tout accessibles, surtout avec une véritable passphrase comme un diceware. Cela rend les tentatives de déchiffrement bien plus difficiles, voire impossibles en termes de temps.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.