Passer au contenu
Point of Fail: Hacking a POS Device with WHIDBOARD

Point d'échec : piratage d'un terminal de point de vente avec WHIDBOARD

Note de la rédaction : Deuxième article de notre série sur le piratage matériel avec la légende du piratage matériel en personne... Luca Bongiorni. Cette fois-ci, Luca s'intéresse à un terminal de paiement (POS) qu'il a repéré dans la nature – et, en partant de rien d'autre qu'une photo, il suit une chaîne d'attaque OSINT-to-root qui aboutit à un accès root non authentifié à la fois via UART et via le réseau.
Si le piratage matériel vous intéresse, découvrez le kit WHIDBoard Pro et apprenez comment devenir un hacker matériel certifié.

DE LA CAISSE À UN SHELL ROOT

Il y a quelque temps, je faisais des courses en ville lorsque je suis tombé sur un terminal de point de vente (POS) intéressant. Pendant que la caissière préparait mon sac, j’ai rapidement sorti mon téléphone et pris quelques photos pour m’en souvenir plus tard…

Worldline payment terminal sitting on a shop counter
Le terminal de point de vente qui a attiré mon attention pendant mes achats
Underside of the Worldline POS showing the regulatory label
En le retournant rapidement, j’ai découvert l’étiquette réglementaire sur la face inférieure

Une fois rentré chez moi, j’ai commencé à examiner de plus près les étiquettes situées sous le terminal de point de vente et j’ai immédiatement remarqué un détail intéressant… un numéro d’identification FCC était clairement visible (c’est-à-dire SEKMA512)! 😎

Close-up of the POS label with the FCC ID visible
L'identifiant FCC sur l'étiquette – la seule information dont j'avais besoin pour me lancer

RECON passive – C'est l'heure de l'OSINT !

Grâce à cette information, j’ai pu rapidement obtenir plus de détails sur ce nouveau DUT (Device Under Test) même sans en posséder un (pour l’instant).

FCC ID database exhibits listing for the device
La liste des éléments présentés dans la base de données de la FCC : photos internes, manuels, schémas et diagrammes fonctionnels, tous accessibles au public

Dans la base de données de la FCC, j’ai pu obtenir plus de détails sur les circuits imprimés internes, le fonctionnement de l’appareil et l’existence éventuelle de fonctions anti-falsification destinées à empêcher les tentatives de piratage matériel.

Bill of materials from FCC filing with tamper-related parts highlighted
La liste des composants issue du dossier FCC, avec les composants de détection de manipulation mise en évidence
Exploded view diagram pointing to the anti-tamper switches
Une vue éclatée indiquant les interrupteurs anti-falsification autour du boîtier sécurisé
Front and back photos of the YOMANI card reader PCB
Photos internes de la FCC du circuit imprimé du lecteur de cartes YOMANI Touch (face avant et arrière)

En particulier, en parcourant son manuel, j’ai pu confirmer que ce terminal de paiement (à l’instar de tout autre appareil similaire traitant des données de cartes de crédit) dispose effectivement de certaines contre-mesures visant à empêcher les acteurs malveillants de manipuler physiquement le circuit imprimé, comme le montrent les images ci-dessus.

Cependant, je n’ai pas baissé les bras et j’ai continué à parcourir les documents de la base de données de la FCC afin de mieux comprendre l’ensemble du dispositif testé et de compléter mon modèle de menace initial, à la recherche de points d’entrée potentiels.

FCC internal pictures of the YOMANI mainboard and keyboard PCBs
Photos internes de la FCC montrant la carte mère et les circuits imprimés du clavier du YOMANI ML/XR

Comme vous pouvez le voir sur l'image ci-dessus, la carte mère principale comporte un certain nombre de points de test. Certains d'entre eux ont retenu mon attention, notamment parce qu'ils semblaient accessibles de l'extérieur sans ouvrir le boîtier du TPV — ce qui signifie qu'ils pouvaient être sondés sans déclencher les mécanismes anti-falsification qui effaceraient la mémoire de l'appareil.

Close-up of the Touch Main XR board highlighting accessible test points
Un groupe de points de test sur la carte Touch Main XR – accessible depuis l’extérieur de la zone sécurisée

Maintenant que j’avais identifié quelques points d’entrée potentiels, il était temps d’acheter quelques échantillons en ligne…

Online marketplace listing for a used YOMANI XR payment terminal
Un terminal YOMANI XR bon marché « pour pièces détachées ou défectueux », commandé en ligne

RECON active – Énumération des broches avec WHIDBOARD

Quelques jours plus tard, les échantillons DUT sont arrivés, et la première étape a consisté à tester les points de test à l’aide d’un multimètre afin d’identifier ceux qui étaient électriquement pertinents. Après avoir réduit la liste, j’ai ensuite utilisé la fonctionnalité d’analyseur logique intégrée à WHIDBOARD pour vérifier si des données étaient émises par le TPV.

WHIDBOARD wired to the opened POS for logic analysis
WHIDBOARD connecté aux points de test du POS ouvert

Après avoir essayé différentes broches, comme vous pouvez le voir sur la capture d'écran ci-dessous, j'ai finalement trouvé la ligne TX d'une interface de débogage UART. 😎

PulseView decoding UART data captured from the TX line
PulseView décodant la sortie de démarrage UART capturée sur la ligne TX

Il est maintenant temps de lancer la fonctionnalité Pin Enumerator de WHIDBOARD afin de trouver également la broche RX !

WHIDBOARD Pin Enumerator wired to the POS test points
Câblage du Pin Enumerator de WHIDBOARD pour rechercher par force brute les broches UART restantes
Pin Enumerator output reporting the discovered UART pins and baud rate
Le Pin Enumerator se verrouille sur l'UART : TXD, RXD et un débit en bauds de 115200
UART passthrough session showing the device boot log
Passage en mode de transfert UART et observation du démarrage de l'appareil

Laisser le DUT terminer le processus de démarrage a conduit à quelque chose de vraiment inattendu

UART console dropping into a BusyBox root shell
Le démarrage s'est terminé directement dans un shell root BusyBox - uid=0(root) gid=0(root)

Non seulement ce terminal de point de vente a exposé une interface UART pleinement fonctionnelle en dehors de sa zone de sécurité anti-falsification — ce qui indique un échec tant dans la modélisation des menaces pendant la R&D que dans la validation de la sécurité avant la production — mais cette interface de débogage a directement abouti à un shell root. 💥🤯

Mettons la main à la pâte – Interagir avec le DUT en tant que root

À ce stade, les choses se sont rapidement enchaînées. À l’aide de WHIDBOARD, j’avais identifié un UART exposé qui menait à un ACCÈS ROOT COMPLET ET NON AUTHENTIFIÉ…

J'ai ensuite exploré le système de fichiers de l'appareil, inspecté les processus en cours d'exécution et compris l'architecture interne du DUT.

Finalement, j’ai exfiltré l’intégralité du micrologiciel via une clé USB à l’aide des commandes suivantes…

cat /proc/mtd
dd if=/dev/mtd0 of=/mnt/usb/mtd0.bin
dd if=/dev/mtdblk0 of=/mnt/usb/mtdblk0.bin
tar -cvf /mnt/usb/root.tar /root
dmesg output showing the USB flash drive being attached
Une clé USB branchée sur le terminal de point de vente en fonctionnement et détectée par le noyau
Terminal dumping the NAND partitions with dd to the USB drive
Copie des partitions NAND brutes sur la clé USB à l'aide de dd
tar archiving the root filesystem, listing payment application files
Archivage de l'intégralité du /root système de fichiers — y compris l'application de paiement et ses clés

Et pour prouver que j’étais capable non seulement de lire le système de fichiers, mais aussi de le modifier… j’ai effectivement apporté quelques modifications… 😎

POS screen displaying a custom hacked message
Une petite preuve de manipulation sur l'écran même du terminal

RECON active – Analyse du réseau

À ce stade, par curiosité, j’ai également vérifié s’il y avait des services du réseau ouverts sur l’interface Ethernet de l’appareil testé. Les résultats étaient alarmants : le port Telnet 23/TCP était OUVERT… 🤯💥

nmap -n -sS 192.168.19.100
Nmap scan reporting port 23/tcp telnet open on the POS
Nmap le confirme : 23/tcp open telnet sur le terminal de paiement

Et oui… on pouvait s'y connecter (en tant qu'administrateur) SANS mot de passe !

Telnet session logging in as root without a password
Une connexion root sans mot de passe via Telnet – directement vers uid=0(root)
Shodan search results showing exposed POS terminals on port 23
Shodan révèle qu'au moins 61 de ces terminaux sont directement exposés à Internet

À ce stade, j’ai décidé de vérifier sur Shodan si l’un de ces terminaux de point de vente était connecté à Internet. Résultat : au moins 61 d’entre eux étaient exposés sur Internet… 🙊🙉🙈

Conclusions

Ce dispositif testé (DUT) a été une véritable surprise : en plus de dix ans de recherche sur la sécurité des TPV, je n’avais jamais rencontré un appareil présentant autant de failles cumulées. Analysons ce qui n’a pas fonctionné et pourquoi cela est important.

Échec de plusieurs couches de défense en profondeur. Cet appareil présentait au moins quatre vulnérabilités distinctes, exploitables indépendamment les unes des autres :

  1. Des points de test de débogage accessibles de l'extérieur qui contournent les protections physiques anti-falsification ;
  2. Une console UART active et non authentifiée permettant d'accéder au shell root ;
  3. Telnet sur le port 23/TCP avec connexion root sans mot de passe sur l'interface du réseau ;
  4. Au moins 61 instances détectables via Shodan, exposées directement à Internet.

Chacune de ces failles constituerait à elle seule une découverte critique. Ensemble, elles représentent une défaillance systémique dans le cycle de vie de la sécurité du produit — depuis la modélisation des menaces et la conception sécurisée jusqu’à la mise en œuvre et aux tests de pré-production.

Implications pour l'infrastructure de paiement. Un terminal de point de vente (POS) disposant d'un accès en lecture/écriture au niveau root au système de fichiers — accessible à la fois physiquement et via le réseau — ouvre la voie à l'installation de portes dérobées dans le micrologiciel, à l'interception de données de paiement et au déploiement d'implants persistants. Dans les environnements où la conformité à la norme PCI DSS est attendue, ce type de vulnérabilité ne constitue pas une lacune marginale : il sape l’ensemble du modèle de confiance. Le fait que ces appareils soient connectés à Internet amplifie le risque, le faisant passer d’une attaque physique locale à une attaque à distance évolutive.

Le contexte réglementaire : la CRA et au-delà. Avec l’entrée en vigueur de la loi européenne sur la cyber-résilience (CRA), les produits comportant des éléments numériques mis sur le marché européen devront satisfaire à des exigences essentielles en matière de cybersécurité tout au long de leur cycle de vie — notamment une configuration sécurisée par défaut, des surfaces d’attaque minimisées et des obligations en matière de gestion des vulnérabilités. Un appareil livré avec un accès root non authentifié via UART et Telnet constituerait un scénario de non-conformité typique. Les fabricants et les importateurs devraient considérer de telles découvertes comme un aperçu de ce que les régulateurs rechercheront.

Points clés à retenir pour les professionnels. Ne sous-estimez jamais les informations OSINT accessibles au public. La base de données de la FCC a à elle seule fourni suffisamment d’informations pour établir un modèle de menace préliminaire, identifier les limites anti-falsification et localiser les points d’entrée potentiels, le tout avant même d’acheter un seul appareil. Pour les membres des équipes rouges et les chercheurs en sécurité, cela rappelle que la reconnaissance passive des documents réglementaires peut considérablement accélérer les évaluations matérielles. Pour les fabricants et les membres des équipes bleues, cela rappelle que vos soumissions à la FCC, vos démontages et vos manuels d'entretien font partie de votre surface d'attaque.

VOUS SOUHAITEZ VOUS LANCER DANS LE PIRATAGE MATÉRIEL ?

L'outil utilisé par Luca pour cet audit matériel est le WHIDBoard Pro. Le WHIDBoard est un outil tout-en-un pour le piratage matériel, fruit de dizaines de prototypes et d'itérations au fil des ans. Il est conçu pour fournir tous les outils nécessaires — matériels et logiciels — dans un kit bien documenté, fiable, professionnel et prêt à l'emploi. Le kit WHIDBoard Pro est produit par Lab401, ce qui vous garantit une qualité et une assistance irréprochables. Consultez la page dédiée au produit pour plus d'informations.

VOUS SOUHAITEZ DEVENIR UN HACKER MATÉRIEL CERTIFIÉ ?

La formation « Offensive Hardware Hacking Training » est une formation à votre rythme comprenant des vidéos, un manuel imprimé et un superbe kit de piratage matériel. Et… tout vous est livré à domicile partout dans le monde ! Pour plus d'informations : https://www.whid.ninja ou regardez la vidéo de présentation ici.

Articles suivant Hacker's Cookbook : Exploiter les appareils électroménagers connectés à l'IoT avec WHIDBOARD

Laisser un commentaire

Les commentaires doivent être approuvés avant d'apparaître

* Champs obligatoires