Table des matières:

HackerBox 0027 : Cypherpunk : 16 étapes
HackerBox 0027 : Cypherpunk : 16 étapes

Vidéo: HackerBox 0027 : Cypherpunk : 16 étapes

Vidéo: HackerBox 0027 : Cypherpunk : 16 étapes
Vidéo: HackerBox #0016 Cellular World 2024, Novembre
Anonim
HackerBox 0027: Cypherpunk
HackerBox 0027: Cypherpunk

Cypherpunk - Ce mois-ci, HackerBox Les hackers explorent la confidentialité et la cryptographie. Ce Instructable contient des informations pour travailler avec HackerBox #0027, que vous pouvez récupérer ici jusqu'à épuisement des stocks. De plus, si vous souhaitez recevoir une HackerBox comme celle-ci directement dans votre boîte aux lettres chaque mois, veuillez vous inscrire sur HackerBoxes.com et rejoindre la révolution !

Sujets et objectifs d'apprentissage pour HackerBox 0027:

  • Comprendre les implications sociales importantes de la vie privée
  • Caméras sécurisées sur les appareils électroniques personnels
  • Explorez l'histoire et les mathématiques de la cryptographie
  • Contextualiser les logiciels cryptographiques courants
  • Configurer une carte "Black Pill" processeur STM32 ARM
  • Programmez la pilule noire STM32 à l'aide de l'IDE Arduino
  • Intégrez un clavier et un écran TFT avec la pilule noire
  • Fonctionnalité de réplication de la machine Enigma de la Seconde Guerre mondiale
  • Comprendre l'authentification multifacteur
  • Relevez le défi de la soudure pour créer un jeton USB U2F Zero

HackerBoxes est le service de box d'abonnement mensuel pour l'électronique de bricolage et la technologie informatique. Nous sommes des amateurs, des fabricants et des expérimentateurs. Nous sommes les rêveurs de rêves. HACK LA PLANÈTE !

Étape 1: HackerBox 0027: Contenu de la boîte

HackerBox 0027: Contenu de la boîte
HackerBox 0027: Contenu de la boîte
  • HackerBoxes #0027 Carte de référence à collectionner
  • Module pilule noire STM32F103C8T6
  • Programmeur USB STLink V2
  • Écran TFT 2,4 pouces en couleur - 240x320 pixels
  • Clavier matriciel 4x4
  • Planche à pain sans soudure 830 points
  • Kit de cavalier de fil de 140 pièces
  • Deux kits de défi de soudure zéro U2F
  • Grand PCB vert de prototypage 9x15 cm
  • Bloqueurs d'espionnage exclusifs en vinyle GawkStop
  • Cache webcam pivotant magnétique exclusif en aluminium
  • Patch EFF exclusif
  • Autocollant de blaireau de confidentialité
  • Sticker Tor

Quelques autres choses qui seront utiles:

  • Fer à souder, soudure et outils de soudure de base
  • Loupe et petite pince à épiler pour défi de soudure SMT
  • Ordinateur pour exécuter des outils logiciels

Plus important encore, vous aurez besoin d'un sens de l'aventure, d'un esprit de bricolage et d'une curiosité de hacker. L'électronique de bricolage hardcore n'est pas une quête triviale, et nous ne l'édulcorons pas pour vous. Le but est le progrès, pas la perfection. Lorsque vous persistez et profitez de l'aventure, vous pouvez tirer une grande satisfaction de l'apprentissage de nouvelles technologies et, espérons-le, de la réussite de certains projets. Nous vous suggérons de faire chaque étape lentement, de faire attention aux détails et de ne pas avoir peur de demander de l'aide.

Notez qu'il existe une mine d'informations pour les membres actuels et potentiels dans la FAQ de HackerBox.

Étape 2: Cypherpunks

Cypherpunks
Cypherpunks

A Cypherpunk [wikipedia] est un activiste qui préconise l'utilisation généralisée de technologies de cryptographie et de protection de la vie privée puissantes comme voie de changement social et politique. Communiquant à l'origine via la liste de diffusion électronique Cypherpunks, les groupes informels visaient à assurer la confidentialité et la sécurité grâce à une utilisation proactive de la cryptographie. Les Cypherpunks sont engagés dans un mouvement actif depuis la fin des années 1980.

À la fin de 1992, Eric Hughes, Timothy C. May et John Gilmore ont fondé un petit groupe qui se réunissait tous les mois dans la société de Gilmore Cygnus Solutions dans la région de la baie de San Francisco, et a été qualifié avec humour de cypherpunks par Jude Milhon lors de l'une des premières réunions - dérivé de chiffrement et cyberpunk. En novembre 2006, le mot « cypherpunk » a été ajouté au Oxford English Dictionary.

Les idées de base peuvent être trouvées dans A Cypherpunk's Manifesto (Eric Hughes, 1993): « La vie privée est nécessaire pour une société ouverte à l'ère électronique. … Nous ne pouvons pas nous attendre à ce que les gouvernements, les entreprises ou d'autres grandes organisations sans visage nous accordent la vie privée … Nous devons défendre notre propre vie privée si nous nous attendons à en avoir. … Les Cypherpunks écrivent du code. Nous savons que quelqu'un doit écrire un logiciel pour défendre la vie privée, et … nous allons l'écrire. Certains cypherpunks remarquables sont, ou étaient, des cadres supérieurs de grandes entreprises technologiques, des universités et d'autres sont des organismes de recherche bien connus.

Étape 3: Electronic Frontier Foundation (EFF)

Fondation de la frontière électronique (EFF)
Fondation de la frontière électronique (EFF)

L'EFF [wikipedia] est un groupe international de droits numériques à but non lucratif basé à San Francisco, en Californie. La fondation a été créée en juillet 1990 par John Gilmore, John Perry Barlow et Mitch Kapor pour promouvoir les libertés civiles sur Internet.

L'EFF fournit des fonds pour la défense juridique devant les tribunaux, présente des mémoires d'amicus curiae, défend les individus et les nouvelles technologies contre ce qu'il considère comme des menaces juridiques abusives, s'efforce d'exposer les malversations du gouvernement, fournit des conseils au gouvernement et aux tribunaux, organise des actions politiques et des envois de masse, soutient certaines nouvelles technologies qui, selon lui, préservent les libertés personnelles et les libertés civiles en ligne, maintient une base de données et des sites Web d'actualités et d'informations connexes, surveille et conteste la législation potentielle qui, selon lui, porterait atteinte aux libertés personnelles et à l'utilisation loyale, et sollicite une liste de ce qu'il considère les brevets abusifs avec l'intention de vaincre ceux qu'il considère sans fondement. EFF fournit également des conseils, des outils, des procédures, des didacticiels et des logiciels pour des communications en ligne plus sûres.

HackerBoxes est fier d'être un donateur majeur de l'Electronic Frontier Foundation. Nous encourageons fortement tout le monde à cliquer ici et à montrer votre soutien à ce groupe à but non lucratif d'une importance cruciale qui protège la confidentialité numérique et la liberté d'expression. Le travail juridique d'intérêt public de l'EFF, son activisme et ses efforts de développement de logiciels visent à préserver nos droits fondamentaux dans le monde numérique. EFF est une organisation à but non lucratif américaine 501(c)(3) et vos dons peuvent être déductibles des impôts.

Étape 4: Projets remarquables du FEP

Projets remarquables du FEP
Projets remarquables du FEP

Privacy Badger est un module complémentaire de navigateur qui empêche les annonceurs et autres traqueurs tiers de suivre secrètement où vous allez et quelles pages vous consultez sur le Web. Si un annonceur semble vous suivre sur plusieurs sites Web sans votre autorisation, Privacy Badger empêche automatiquement cet annonceur de charger plus de contenu dans votre navigateur. Pour l'annonceur, c'est comme si vous disparaissiez soudainement.

La neutralité du réseau est l'idée que les fournisseurs de services Internet (FAI) devraient traiter toutes les données qui transitent sur leurs réseaux de manière équitable, sans discrimination indue en faveur d'applications, de sites ou de services particuliers. C'est un principe qui doit être respecté pour protéger l'avenir de notre Internet ouvert.

Security Education Companion est une nouvelle ressource pour les personnes qui souhaitent aider leurs communautés à en apprendre davantage sur la sécurité numérique. Le besoin d'une sécurité numérique personnelle robuste augmente chaque jour. Des groupes de base aux organisations de la société civile en passant par les membres individuels de l'EFF, des personnes de toute notre communauté expriment le besoin de matériel d'éducation à la sécurité accessible à partager avec leurs amis, voisins et collègues.

Le routeur Onion (Tor) permet à ses utilisateurs de surfer sur Internet, de discuter et d'envoyer des messages instantanés de manière anonyme. Tor est un logiciel libre et un réseau ouvert qui aide à se défendre contre l'analyse du trafic, une forme de surveillance du réseau qui menace la liberté et la vie privée des personnes, les activités et relations commerciales confidentielles et la sécurité de l'État.

Étape 5: Sécurisez vos caméras

Sécurisez vos caméras
Sécurisez vos caméras

Selon le magazine WIRED, "les outils d'espionnage, qu'ils soient conçus par des agences de renseignement, des cyber-escrocs ou des fous d'Internet, peuvent allumer votre appareil photo sans allumer le voyant". [FILAIRE]

Alors qu'il était directeur du FBI, James Comey a prononcé un discours sur le cryptage et la confidentialité. Il a déclaré qu'il avait mis un morceau de ruban adhésif sur l'objectif de la webcam de son ordinateur portable. [RADIO NATIONALE PUBLIQUE]

Mark Zuckerberg a fait l'actualité lorsque le public a remarqué qu'il suivait la même pratique. [TEMPS]

HackerBox #0027 comprend une collection de bloqueurs d'espionnage GAWK STOP en vinyle personnalisés ainsi qu'un couvercle de webcam pivotant magnétique en aluminium.

Étape 6: Cryptographie

Cryptographie
Cryptographie

La cryptographie [wikipedia] est la pratique et l'étude des techniques de communication sécurisée en présence de tiers appelés adversaires. La cryptographie avant l'ère moderne était effectivement synonyme de cryptage, la conversion d'informations d'un état lisible à un non-sens apparent. L'expéditeur d'un message crypté partageait la technique de décodage nécessaire pour récupérer les informations d'origine uniquement avec les destinataires prévus, empêchant ainsi les personnes indésirables de faire de même. La littérature de cryptographie utilise souvent le nom Alice ("A") pour l'expéditeur, Bob ("B") pour le destinataire prévu, et Eve ("écouteur") pour l'adversaire. Depuis le développement des machines de chiffrement à rotor pendant la Première Guerre mondiale et l'avènement des ordinateurs pendant la Seconde Guerre mondiale, les méthodes utilisées pour réaliser la cryptologie sont devenues de plus en plus complexes et son application plus répandue. La cryptographie moderne est fortement basée sur la théorie mathématique. Les algorithmes cryptographiques sont conçus autour d'hypothèses de dureté de calcul, ce qui rend ces algorithmes difficiles à briser par tout adversaire.

Il existe de nombreuses ressources en ligne pour en savoir plus sur la cryptographie. Voici quelques points de départ:

The Journey into Cryptography at Khan Academy est une excellente série de vidéos, d'articles et d'activités.

L'Université de Stanford propose un cours de cryptographie en ligne gratuit.

Bruce Schneier a publié un lien vers une copie en ligne de son livre classique, Applied Cryptography. Le texte fournit une étude complète de la cryptographie moderne. Il décrit des dizaines d'algorithmes cryptographiques et donne des conseils pratiques sur la façon de les mettre en œuvre.

Étape 7: Logiciel cryptographique commun

Logiciel cryptographique commun
Logiciel cryptographique commun

D'un point de vue pratique, il existe quelques applications spécifiques de la cryptographie que nous devons connaître:

Pretty Good Privacy (PGP) est un programme de cryptage qui assure la confidentialité et l'authentification cryptographiques des données stockées. PGP est utilisé pour signer, chiffrer et déchiffrer du texte, des e-mails, des fichiers, des répertoires et même des partitions de disque entières.

Transport Layer Security (TLS) est un protocole cryptographique qui assure la sécurité des communications sur un réseau informatique. TLS est utilisé dans des applications telles que la navigation Web, la messagerie électronique, la télécopie Internet, la messagerie instantanée et la voix sur IP (VoIP). Les sites Web peuvent utiliser TLS pour sécuriser toutes les communications entre leurs serveurs et leurs navigateurs Web. TLS est basé sur les spécifications SSL (Secure Sockets Layer) antérieures.

Internet Protocol Security (IPsec) est une suite de protocoles réseau qui authentifie et crypte les paquets de données envoyés sur un réseau. IPsec comprend des protocoles pour établir une authentification mutuelle entre les agents au début de la session et la négociation des clés cryptographiques à utiliser pendant la session.

Un réseau privé virtuel (VPN) étend un réseau privé sur un réseau public et permet aux utilisateurs d'envoyer et de recevoir des données sur des réseaux partagés ou publics comme si leurs appareils informatiques étaient directement connectés au réseau privé. Les systèmes à chaque extrémité du tunnel VPN cryptent les données entrant dans le tunnel et les décryptent à l'autre extrémité.

Une Blockchain est une liste sans cesse croissante d'enregistrements, appelés blocs, qui sont liés et sécurisés à l'aide de la cryptographie. La première blockchain a été mise en œuvre en 2009 en tant que composant central du bitcoin où elle sert de grand livre public pour toutes les transactions. L'invention de la blockchain pour le bitcoin en a fait la première monnaie numérique à résoudre le problème de la double dépense sans avoir besoin d'une autorité de confiance ou d'un serveur central.

Étape 8: pilule noire STM32

Pilule noire STM32
Pilule noire STM32
Pilule noire STM32
Pilule noire STM32

La Black Pill est la dernière carte de pilule STM32. C'est une variante améliorée de la pilule bleue commune et de la pilule rouge moins courante.

La Black Pill comprend le microcontrôleur STM32F103C8T6 32 bits ARM M3 (fiche technique), un en-tête ST-Link à quatre broches, un port MicroUSB et une LED utilisateur sur PB12. La bonne résistance pull-up sur PA12 est installée pour un fonctionnement correct du port USB. Ce pull-up nécessitait généralement une modification du tableau sur d'autres tableaux de pilules.

Bien que similaire en apparence à l'Arduino Nano typique, la Black Pill est beaucoup plus puissante. Le microcontrôleur ARM 32 bits STM32F103C8T6 peut fonctionner à 72 MHz. Il peut effectuer une multiplication à cycle unique et une division matérielle. Il dispose de 64 Ko de mémoire Flash et de 20 Ko de SRAM.

Étape 9: Flasher la pilule noire avec Arduino IDE et STLink

Flasher la pilule noire avec Arduino IDE et STLink
Flasher la pilule noire avec Arduino IDE et STLink

Si vous n'avez pas installé d'IDE Arduino récent, obtenez-le ici.

Ensuite, obtenez le référentiel Arduino_STM32 de Roger Clark. Cela inclut les fichiers matériels pour prendre en charge les cartes STM32 sur Arduino IDE 1.8.x. Si vous le téléchargez manuellement, assurez-vous qu'Arduino_STM32-master.zip est décompressé dans le dossier "matériel" Arduino IDE. Notez qu'il existe un forum de support pour ce package.

Fixez les fils de pontage STLink comme illustré ici.

Exécutez l'IDE Arduino et sélectionnez ces options sous Outils:

Carte: série générique STM32F103CVariante: STM32F103C8 (20k RAM. 64k Flash)Vitesse du processeur (MHz): "72MHz (Normal)"Méthode de téléchargement: "STLink"

Ouvrez le fichier exemples > bases > blinkChanger les trois instances de "LED_BUILTIN" en PB12 Appuyez sur la flèche "télécharger" (la LED sur le STLink clignotera pendant le téléchargement)

Ce croquis téléchargé fera clignoter la LED de l'utilisateur sur la pilule noire toutes les secondes. Ensuite, modifiez la valeur dans les deux instructions delay(1000) de 1000 à 100 et téléchargez à nouveau. La LED devrait clignoter dix fois plus vite maintenant. Il s'agit de notre exercice standard "Hello World" pour nous assurer que nous pouvons compiler un programme simple et le charger sur la carte cible.

Étape 10: Pill Duckie

Pill Duckie
Pill Duckie

Pill Duck est un périphérique USB HID scriptable utilisant un STM32. Bien sûr, pourquoi pas?

Étape 11: écran TFT

Écran TFT
Écran TFT

L'écran à cristaux liquides à transistors à couches minces (TFT LCD) est une variante d'un écran à cristaux liquides (LCD) qui utilise la technologie à transistors à couches minces pour améliorer les qualités d'image telles que l'adressabilité et le contraste. Un écran LCD TFT est un écran LCD à matrice active, contrairement aux écrans LCD à matrice passive ou aux écrans LCD simples à commande directe avec quelques segments.

Cet écran TFT couleur mesure 2,4 pouces et a une résolution de 240x320.

Le contrôleur est un ILI9341 (fiche technique), qui peut se connecter au STM32 via un bus Serial Peripheral Interface (SPI) selon le schéma de câblage présenté ici.

Pour tester l'affichage, chargez l'esquisse à partir de:

exemples > Adafruit_ILI9341_STM > stm32_graphicstest

Modifiez les trois définitions des broches de contrôle comme suit:

#définir TFT_CS PA1#définir TFT_DC PA3#définir TFT_RST PA2

Notez que l'exemple de test graphique s'exécute très rapidement en raison des performances améliorées du STM32 par rapport au microcontrôleur Arduino AVR traditionnel.

Étape 12: Entrée de la matrice du clavier

Entrée de matrice de clavier
Entrée de matrice de clavier

Câblez le clavier matriciel 4x4 comme indiqué et chargez le croquis ci-joint TFT_Keypad. Cet exemple lit le clavier et affiche la touche à l'écran. Notez que cet exemple simple de lecture du clavier est bloquant car il utilise la fonction delay(). Cela pourrait être amélioré en passant à un modèle d'interrogation ou d'interruption.

L'assemblage du clavier et de l'écran TFT avec la pilule noire sur la planche à pain sans soudure ou le protoboard vert constitue une belle "plate-forme informatique" avec entrée et affichage.

Étape 13: Défi du code machine Enigma

Image
Image
Authentification à deux facteurs - Clé de sécurité zéro U2F
Authentification à deux facteurs - Clé de sécurité zéro U2F

Les machines Enigma étaient des machines de chiffrement à rotor électromécaniques développées et utilisées du début au milieu du 20e siècle. Ils ont été adoptés par les services militaires et gouvernementaux de plusieurs pays, notamment l'Allemagne nazie. Les forces armées allemandes pensaient que leurs communications cryptées par Enigma étaient impénétrables pour les Alliés. Mais des milliers de décrypteurs – basés dans des huttes en bois à Bletchley Park en Grande-Bretagne – avaient d'autres idées.

Le défi de codage de ce mois-ci consiste à transformer la "plate-forme informatique" en votre propre machine Enigma.

Nous avons déjà implémenté des exemples pour les entrées du clavier et les sorties d'affichage.

Voici quelques exemples de paramètres et de calculs entre les entrées et les sorties:

ENIGMuino

Ouvrir l'énigme

Simulateur Arduino Enigma

Instructable de ST-Geotronics

Étape 14: Authentification à deux facteurs - Clé de sécurité zéro U2F

L'authentification à deux facteurs (également connue sous le nom de 2FA) est une méthode de confirmation de l'identité revendiquée d'un utilisateur en utilisant une combinaison de deux facteurs différents: 1) quelque chose qu'il sait, 2) quelque chose qu'il possède ou 3) quelque chose qu'il est. Un bon exemple d'authentification à deux facteurs est le retrait d'argent d'un guichet automatique, où seule la bonne combinaison d'une carte bancaire (quelque chose que l'utilisateur possède) et d'un code PIN (quelque chose que l'utilisateur connaît) permet d'effectuer la transaction.

Universal 2nd Factor (U2F) est une norme d'authentification ouverte qui renforce et simplifie l'authentification à deux facteurs à l'aide de périphériques USB ou NFC spécialisés basés sur une technologie de sécurité similaire à celle des cartes à puce. Les clés de sécurité U2F sont prises en charge par Google Chrome depuis la version 38 et Opera depuis la version 40. Les clés de sécurité U2F peuvent être utilisées comme méthode supplémentaire de vérification en deux étapes sur les services en ligne prenant en charge le protocole U2F, notamment Google, Dropbox, GitHub, GitLab, Bitbucket, Nextcloud, Facebook et autres.

L'U2F Zero est un token U2F open source pour l'authentification à deux facteurs. Il comprend le coprocesseur cryptographique Microchip ATECC508A, qui prend en charge:

  • Stockage de clés sécurisé basé sur le matériel
  • Algorithmes de clé publique à haut débit (PKI)
  • ECDSA: Algorithme de signature numérique à courbe elliptique FIPS186-3
  • ECDH: FIPS SP800-56A Algorithme Diffie-Hellman à courbe elliptique
  • Prise en charge de la courbe elliptique standard NIST P256
  • Algorithme de hachage SHA-256 avec option HMAC
  • Stockage jusqu'à 16 clés - Longueur de clé 256 bits
  • Numéro de série 72 bits unique
  • Générateur de nombres aléatoires (RNG) FIPS

Étape 15: Kit de défi de soudure

Kit de défi de soudure
Kit de défi de soudure
Kit de défi de soudure
Kit de défi de soudure
Kit de défi de soudure
Kit de défi de soudure

Si vous êtes prêt à relever un sérieux défi de soudure, vous pouvez créer votre propre clé zéro U2F.

Kit défi de soudure zéro U2F:

  • U2F Zero Token PCB
  • Microcontrôleur 8051 Core (E0) EFM8UB11F16G
  • Élément sécurisé (A1) ATECC508A
  • LED d'état (RVB1) 0603 Anode commune
  • Diode de protection ESD Zener (Z1) SOT553
  • Résistance 100 Ohms (R1) 0603
  • Condensateur de dérivation de 4,7 uF (C4) 0603
  • Condensateur de dérivation 0,1 uF (C3) 0403
  • Bouton tactile momentané (SW1)
  • Porte-clés à anneau brisé

Notez qu'il existe deux composants de taille 0603. Ils se ressemblent beaucoup, mais un examen attentif révélera que R1 est noir et C4 est beige. Notez également que E0, A1 et RGB1 ont des orientations requises comme indiqué sur la sérigraphie du PCB.

Le wiki U2F Zero montre les détails de la programmation du microcontrôleur.

NOTE DE DÉFI: Chaque HackerBox #0027 comprend deux kits de défi de soudure exactement parce que la soudure est très difficile et que des accidents se produisent. Ne soyez pas frustré. Utilisez un grossissement élevé, une pince à épiler, un bon fer, un flux de soudure et déplacez-vous très lentement et avec précaution. Si vous ne parvenez pas à souder ce kit avec succès, vous n'êtes certainement pas seul. Même s'il ne fonctionne jamais, il s'agit d'une bonne pratique de soudage sur une variété de boîtiers CMS.

Vous voudrez peut-être regarder cet épisode du Ben Heck Show sur la soudure à montage en surface.

Étape 16: HACKER LA PLANÈTE

PIRATER LA PLANÈTE
PIRATER LA PLANÈTE

Si vous avez apprécié cet Instructable et que vous souhaitez recevoir une boîte de projets électroniques et informatiques comme celui-ci directement dans votre boîte aux lettres chaque mois, veuillez rejoindre la révolution HackerBox en vous abonnant ICI.

Contactez-nous et partagez votre succès dans les commentaires ci-dessous ou sur la page Facebook HackerBoxes. N'hésitez pas à nous faire savoir si vous avez des questions ou si vous avez besoin d'aide pour quoi que ce soit. Merci de faire partie de HackerBoxes. Veuillez garder vos suggestions et commentaires à venir. Les HackerBox sont VOS boîtes. Faisons quelque chose de grand !

Conseillé: