Your SlideShare is downloading. ×
0
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

ASFWS 2013 - Rump Session - Sécurité d’un token OTP Nicolas ruff

449

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
449
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Sécurité d'un token hardware Nicolas RUFF EADS Innovation Works nicolas.ruff(à)eads.net
  • 2. Une cible bien connue de l'ASFWS
  • 3. Démontage • 4 pins évidentes: VCC, GND, DATA, CLK • Des pastilles • Pas de référence visible
  • 4. Décapsulation
  • 5. Décapsulation • HT49R50A-1 – Un microcontrôleur Holtek, 8 bits, spécialisé pour le pilotage LCD • http://www.holtek.com.tw/english/docum/uc/49x50.htm • http://www.holtek.com.tw/pdf/uc/ht49x50v240.pdf – Coût unitaire: probablement quelques centimes 
  • 6. Description du composant • Les pastilles correspondent probablement à pins de programmation "in-circuit" • Le protocole de programmation est référencé "ICP-1A" chez Holtek – http://www.holtek.com.tw/Chinese/tech/tool/MainPage2.aspx • … mais apparemment non documenté  • Il utilise 11 broches – – – – – PA0 – PA6 OSC (OSC1 ou OSC3 ?) VSS (câblé à OSC) VDD VPP (alias RESB ou RESET)
  • 7. Documentation officielle
  • 8. Connect the dots A5 A2 A6 CLK A3 GND VSS VCC VDD DATA A1 A0 A4 (A3) RES OSC1 OSC3
  • 9. Connect the dots
  • 10. Lecture du composant • Le programmateur Elnec supporte les microcontrôleurs Holtek 
  • 11. Lecture du composant • … mais le "code protection bit" est à 1 – Seule une zone de données semble lisible
  • 12. Extraction du code • Pour extraire le code, il est nécessaire de comprendre le protocole de programmation – … mais comment peut-il y avoir autant de données transférées en si peu de cycles ?
  • 13. Extraction du code • Une attaque est-elle possible ? – http://www.cl.cam.ac.uk/~sps32/mcu_lock.html ✘Effacement du "code protection bit" avec un faisceau d'UV • Il faut trouver l'emplacement du fusible • Le risque d'effacer une partie du code est important ✘Power Glitch / Clock Glitch • Les MCU Holtek sont relativement résistant contre cette attaque
  • 14. Extraction du code • Si vous voulez m'aider à chercher le fusible … – http://commons.wikimedia.org/wiki/File:HOLTEK_ HT49R50A-1_A217K0092.jpg
  • 15. A partir de ce point, tout n'est qu' HYPOTHÈSES …
  • 16. • Question(s) – A quoi servent les pins documentés ? • Injecter la seed ? – Une fois que la RAM est alimentée par la pile ? • Relire la seed ? – Si oui: #fail … – Quel est le protocole de communication sur ces pins ? • Requière l'accès au code du MCU  – Un brute-force du protocole semble peu réaliste • Hypothèse(s) – Le MCU est programmé en usine par les pins non documentés – Si les pins documentés sont liés à la programmation de la seed • Il pourrait être possible d'extraire la seed discrètement – Avec 4 trous de la taille d'une épingle au dos du token • Il pourrait être possible d'injecter votre propre seed – Si vous ne faites pas confiance au vendeur
  • 17. Conclusion • N'hésitez pas à contribuer • Si vous voulez des échantillons gratuits, demandez à Sylvain  • Si vous voulez fabriquer votre propre token, cela vous coûtera probablement moins de 5€/unité

×