Offre de Desktops/Serveurs/Laptops Libres démarrant depuis l'open Firmware Heads


#1

Bonjour à tous! Premier post sur ce forum combien intéressant! En espérant lire vos commentaires et questions et recevoir vos commandes dès maintenant! :slight_smile:

Version courte
Insurgo, Technologies Libres offre du matériel reasonably secure (digne de confiance) remis à neuf rencontrant et dépassant les critères de la certification QubesOS. Le matériel proposé démarre depuis le micrologiciel (firmware) libre Heads, un payload Linux de coreboot, permettant de mesurer et d’attester de sa propre intégrité avant de vérifier celles des composantes et configurations de démarrage du système d’exploitation (QubesOS ou autres dérivés Linux) et de passer le contrôle à celui-ci.

L’environnement de démarrage vérifie que les binaires et configurations sont signées depuis la clef publique de l’utilisateur, intégrée à même Heads dans la mémoire flash SPI, confirmant que ceux-ci ont été signés à l’aide de la clef privée de l’utilisateur, quant à elle stockée et protégée dans sa Nitrokey Pro/LibremKey. Si les configurations de démarrage sont elles aussi intègres, Heads passe alors le contrôle à L’OS et le démarre (kexec). Sinon, Heads informe des modifications, qui devraient être liées à une mise à jour système que l’utilisateur aura permis. Il est donc important de redémarrer l’ordinateur après avoir effectué une mise à jour du kernel et de l’hyperviseur, de manière à signer ces changements dès qu’ils ont eu lieu.

Cette attestation d’intégrité du micrologiciel est effectuée depuis le Trustable Module Platform (TPM) ou/et depuis une clef USB Nitrokey Pro/LibremKey à l’aide du protocole HMAC-based one time password.

Il est à noter que les matériels proposés ne contiennent ni Intel ME (neutralisé via clean_me) ni PSP et en conséquence, aucun espion potentiel au niveau du matériel.

Insurgo offre aussi des formations adaptées au modèle de menace de ses différentes clientèles organisationelles et offre des banques de temps servant au support et au développement de fonctionnalités additionelles désirées au sein de Heads/QubesOS. Toutefois, pour l’offre grand publique, les clients seront redirigés vers les communautés Heads et QubesOS respectives, par manque de temps.

Insurgo vise à devenir une coopérative de travailleurs et de vente, de manière à diversifier son offre de services en fonction des expertises de ses collaborateurs et membres du conseil d’administration en devenir et afin de faire bénificier des réductions de coûts à ses futurs clients, en réduisant les coûts d’achats de matériel remis à neuf qui dépendent directement des réductions de coûts liés au volume d’achat de matériel.

L’idée étant de refiler la facture liée à l’acquisition du matériel au client, tout en chargeant un coût fixe liée à la reprogrammation du matériel, à l’installation de QubesOS et de l’attestation de l’intégrité de la configuration finale avant l’expédition du matériel dans des colis séparés.

Les modèles proposés sont:

  • Laptop: x230 i7 2.9GHZ, USB3, écran IPS, 16GB ram, 240GB ssd, wifi Atheros AR5B95, backlit keyboad, webcam, TPM
  • Serveurs/Deskops basés sur les motherboard KGPE-D16/KCMA-D8, avec carte ASMBv4.

Disclaimer: Je collabore sur le Projet Heads depuis 2 ans ainsi que sur le projet QubesOS depuis un peu plus longtemps. Je ne suis donc pas totalement impartiel quant à la fougue que je porte en ces projets.

Collaborations
Ma participation au projet Heads a démarré en 2016 lorsque j’ai constaté les limitations d’isolation matérielles pouvant être offertes par le IOMMU d’Intel (vt-d1) sur le chipset GM45 présent dans les Lenovo x200/x200t/t400/t500, étant les seuls laptops supportés par Libreboot et attesté Respect Your Freedom (RYF) par la Free Software Foundation (FSF) qui offrait assez de performance pour être utilisé tous les jours. Je travaillais alors à rendre QubesOS démarrable depuis un conteneur LUKS, qui a depuis été intégré en amont au projet QubesOS. J’ai depuis délaissé le x200, comme je délaisse présentement les plateformes Power9, ARM et RISC-V, puisque mon intérêt réside dans le concept de sécurité par méfiance et considère personellement que la meilleure approche est conséquemment la compartimentation, autant au niveau du matériel que des univers de travail. Ce modèle de menace rejoint entre autres aux défenseurs des droits et libertés, journalistes d’enquête, lanceurs d’alertes et fournisseurs de services privés sur infrastructures partagées/cloud privé.

Je collabore donc activement sur le projet Heads depuis 2 ans et participe, moins intensivement mais tout de même, à QubesOS depuis près de 3 ans.

Version longue

Heads
Heads, c’est un environnement de prédémarrage (BIOS) libre et sécuritaire remplaçant UEFI/BIOS propriétaire de certains modèles d’ordinateurs/serveurs sélectionnés pour leurs capacités de virtualisation (Intel: VT-x, AMD: AMD-V), et de compartimentalisation (IOMMU. Intel: VT-D, AMD: AMD-Vi avec RVI.) et le matériel présent sur la carte mère (carte graphique, carte réseau, contrôleurs) pouvant être initialisés et contrôlés depuis des micrologiciels et pilotes de périphériques libres.

Heads est en fait un payload Linux lancé par une version modifiée de Coreboot supportant measured boot.

Heads a pour but de rendre le matériel informatique duquel il démarre “slightly more secure” ou digne de confiance. En remplaçant le micrologiciel responsable d’initialiser le matériel et en utilisant Linux comme environnement de démarrage pour lancer son système d’exploitation favori, Heads permet de s’assurer que celui-ci n’a pas été compromis en ayant une confiance mesurable sur ce qui s’exécute sur le matériel de l’ordinateur avant le lancement du système d’opération. Heads combine une panoplie de logiciels libres (coreboot, Linux, kexec, GnuPG2, cryptsetup, dropbear, flashrom, busybox, etc), vous permettant d’attester de l’intégrité du micrologiciel à l’aide du Trusted Platform Module (TPM) présent dans ces modèles d’ ordinateur/serveurs, ou encore à l’aide d’une clef USB NitroKey Pro/LibremKey externe à celui-ci (bien qu’un port USB existe sur le motherboard de la plupart des serveurs et peut donc être considéré “interne” et protégée par une détection d’intrusion physique au chassis)

Measured boot
En utilisant une source de validation externe comme le TPM, Heads modifie coreboot pour qu’il mesure chacun des modules du micrologiciel avant de les exécuter et enregistre le résultat de ces mesures dans les registres du TPM. Le résultat final de ces mesures est un Code QR TPM based One Time Password (TPMTOTP), qui une fois scanné sur son téléphone intelligent depuis une application TOTP, permet à l’utilisateur de vérifier que le code éphémère de 6 chiffres affiché par Heads au démarrage est le même que sur son téléphone intelligent. S’il correspond, l’intégrité est attestée et l’utilisateur peut avoir confiance que sa machine n’a pas été compromise au niveau du micrologiciel, base de confiance nécessaire à toute informatique digne de confiance.
De plus, la mesure d’intégrité des modules est utilisée comme salage (salt) et combinée à un mot de passe de second ordre choisi par l’utilisateur, puis inséré dans le second slot du header LUKS, pour déchiffrer le contenu du disque dur sans jamais exposer le mot de passe de déchiffrement principal (recovery LUKS passphrase). En activant cette option (en sélectionnant une configuration de démarrage par défaut sous Heads), l’utilisateur n’a plus besoin de valider le code TPMTOTP sur son téléphone à chaque redémarrage. Si tapper le mode de passe de second ordre pour déchiffrer le contenu de son disque dur ne fonctionne pas, c’est que les mesures d’intégrité effectuées par le TPM sur le micrologiciel ne sont plus consistantes. Redémarrer et valider le code TPMTOTP sur son téléphone confirmera la chose et demandera à l’utilisateur d’user de précautions s’il décide tout de même d’utiliser le matériel compromis, puisque son ordinateur n’est plus que le sien. De plus, quelqu’un ou une caméra qui pourrait prendre note de la phrase de passe de déchiffrement de disque de second ordre n’est pas suffisant pour avoir accès au contenu de votre disque dur si celui-ci est cloné. Il n’est possible de déverrouiller le conteu de votre disque dur avec cette phrase de passe que depuis votre ordinateur et seulement si le micrologiciel est toujours intègre. Autrement, il est possible de déverrouiller son volume chiffré avec le mot de passe de chiffrement du disque principal, qui ne devrait d’ailleurs être entré au clavier qu’à l’abri des regards indiscrets.

La clef NitroKey Pro/LibremKey, dont le code source HMAC-based One Time Password (HOTP) a été développé par Puri.sm, est intégré en amont au code source de la Nitrokey Pro. L’utilisation de cette clef USB comporte toutes les fonctions attendues d’une SmartCard PGP (GnuPG), votre clef privée étant sécurisée et isolée dans le dispositif, à l’extérieur de votre ordinateur. Elle permet de chiffrer/déchiffrer courriels et fichiers, en plus de pouvoir être utilisée de manière extrêmement conviviale pour valider l’intégrité du micrologiciel responsable de démarrer celui-ci. En effet, si les mesures d’intégrité du micrologiciel sont celles attendues, la LED de la clef clignote en vert. Si l’intégrité micrologicielle n’est pas attestée comme connue, celle-ci clignote en rouge. Il est alors possible de livrer du matériel digne de confiance et cette clef dans des colis séparés, réunis par l’utilisateur à la réception préalablement au premier démarrage du matériel. Cette mesure d’intégrité, similaire à celle effectuée par le TPM, lui permet de s’assurer qu’aucun tier n’a compromis l’intégrité de la base de confiance de son ordinateur lorsqu’il était en transit ou hors de supervision immédiate. Sous réception du matériel expédié, l’utilisateur final réinitialise ses clefs depuis Heads: se réapproprie sa clef Nitrokey Pro/LibremKey et génère une paire de clefs PGP (GnuPG), reprend possession de son TPM (phrase de passe) et rééencrypte le contenu de son disque dur avec sa propre phrase de passe de déchiffrement principal du conteneur LUKS. L’ordinateur n’est plus celui du OEM, mais devient réellement et uniquement le sien. L’utilisateur final pourra s’assurer que le matériel est toujours sous son contrôle à chaque redémarrage de celui-ci et signer chaque mise à jour du kernel, initrd et mise à jour de Xen, ainsi que l’intégrité de ses configurations et paramètres de démarrages.

En remplaçant le BIOS dans la mémoire flash SPI par coreboot avec un tel payload linux, Heads sert d’environnement de contrôle et de récupération autonome. GPG2 y est intégré pour permettre de générer une paire de clefs de chiffrements depuis sa SmartCard NitroKey Pro/LibremKey. CBFS et flashrom permettent d’insérer la clef publique générée par l’utilisateur au micrologiciel Heads, de manière à vérifier la validité des signatures exigées de l’utilisateur à chaque mise à jour du kernel Linux ou de Xen ainsi que de ses configurations logicielles de démarrage. Heads permet aussi de signer ses propres images disques (ISO) téléchargées, n’étant pas signées par les distributeurs reconnus par Heads. Les clefs publiques des images de disques produites par Fedora, QubesOS et Tails sont intégrées à Heads, permettant de démarrer ces systèmes d’exploitation depuis une clef USB à condition d’être accompagnées de leurs signatures d’intégritées, qui elles sont validées depuis les signatures comprises dans le micrologiciel. Le résultat est qu’il est possible de démarrer depuis une image disque sur une clef USB, validant l’intégrité de l’image disque qu’il s’apprête à démarrer de manière automatique et sécuritaire.

Desktop/Serveur
Deux cartes mères, la KGPE-D16 et la KCMA-D8 ont été libérés par Timothy Pearson de RaptorEngineering dans un projet financé par Libreboot. Le code source permettant de libérer ces deux plateformes est bien sûr intégré à coreboot et ne contient aucun blob binaire pour initialiser l’entièreté du matériel. Le résultat est particulièrement intéressant.
Ces deux plateformes x86 sont en effet les deux seules ne comportant aucun blob binaire et supportant la virtualisation et un IOMMU, les rendant tout à fait dignes de confiance comme station de travail QubesOS, ou déployer des services sans risque d’être compromis par des portes dérobées au niveau du matériel.
Ces plateformes peuvent donc être utilisées de manière sécuritaires pour héberger un cloud privé, un serveur de virtualisation, développer en toute confiance ou encore servir de station de travail pour les journalistes utilisant SecureDrop.

Des plateformes complètement libres voient le jour, telles que Talos II (Power9) ou encore SiFive (Risc-V) mais celles-ci comportent quelques limitations au niveau des logiciels supportés. En conséquence, si votre modèle de menace implique l’utilisation de QubesOS pour compartimenter vos univers de vie ou isoler votre matériel (lire: ne pas faire confiance totalement aux périphériques réseaux et USB connectés), ces plateformes alternatives à x86 ne sont pas supportées par QubesOS et il n’y a pas de plan pour le faire, x86 étant la seule architecture grand publique présentement supportée.

Les cartes-mères KGPE-D16/KCMA-D8 acceptent optionellement une carte d’expension IPMI iKVM (ASMBv4) permettant d’accéder à vote machines telle un serveur. Celle-ci a aussi libérée par Timothy Pearson par sociofinancement. Cette carte, une fois son micrologiciel remplacé par OpenBMC, permet le contrôle à distance via SSH, depuis un lien Ethernet dédié. ASMBv4 a vu son design PCB libéré dernièrement et est maintenant disponible pour commandes. Reste à trouver qui peut les fabriquer localement. Vous avez des idées?

La résultante est un environnement de récupération Whiptail, accessible via internet si désiré, dépendemment de la configuration réseau déployée. Dans mon cas, mon routeur offre une adresse onion privée et redirige le traffic sur l’instance OpenBMC. Un port forward SSH combiné au lancement d’un screen me permet d’intéragir directement avec le dom0 de QubesOS, d’où je gère les instances de différents services et me connecte aux différentes consoles Xen.

L’environnement Heads permet de mettre à jour les micrologiciels Heads et OpenBMC. Mettre à jour Heads conservera les clefs et autres personnalisations insérées via cbfs au micrologiciel, qui sont extraites puis réinsérées au rom avant d’êtres écrites sur le SPI flash via flashrom. L’intégrité des composantes est mesurée et attestée depuis une clef LibremKey depuis le port usb interne de la carte mère.

Avec une flash SPI de 16MB, il y a donc espace pour beaucoup de personnalisation, y compris le support vboot qui vient tout juste d’être intégré à coreboot 4.9, sorti le 20 décembre.

Ordinateurs portables dignes de confiance
Le Lenovo x230 est sur Ivy bridge. Le Intel Management Engine (ME), sur Ivy bridge, peut être désactivé et ses extensions, supprimées. En effet, seules deux composantes logicielles sont encore présentes, soient le ROMP (inisitalisation) et le BUP(désactivé). Intel ME passe alors de plus de 5000Kb de code binaire et modules propriétaires démarrés sans consentement éclairé préalable à moins de 98K, étant le minium nécessaire au fonctionnement continu de l’ordinateur. La résultante est un Intel ME qui se rapporte comme étant en mode “Alt Disable Mode” et n’ayant aucun module additionnel à exécuter. C’est le mieux que nous puissions faire puisqu’il est impossible de se débarasser du module ROMP, le résultat étant un ordinateur qui s’éteint après 30 minutes.

Ordinateurs Amnésiques
En combinant Heads et une Nitrokey Pro/LibremKey avec un ordinateur digne de confiance amnésique (sans persistence de données) et sans trace d’Intel ME, on obtient le maximum de sécurité possible pour les clientèles les plus vulnérables. Un ordinateur portatif comme le Lenovo x200/x200t/t400, rendus libres par les efforts de Libreboot, basé sur le chipset GM45 (RYF) peut alors démarrer Tails de manière tout à fait sécuritaire, en lui permettant, dès le démarrage, de s’assurer qu’il peut avoir confiance en son ordinateur et ainsi démarrer Tails sous la forme attendue par ses développeurs.

Voici ma contribution pour une informatique plus libre et plus sécuritaire! Posez-moi toutes vos questions!

Je m’apprête à faire une annonce directement sur le groupe de discussions utilisateurs de QubesOS afin d’offrir le service vers la mi-janvier une fois une entente élaborée avec Purism avec sa LibremKey afin d’avoir accès à un rabais au volume.

Qui suis-je:
Thierry Laurion
Que fais-je:
GitHub

Insurgo, Technologies Libres/Open Technologies
Site web (Besoin d’aide pour faire un site transactionnel zerolog)
Page Facebook
Lauréat local du défi OseEntreprendre
Lauréat régional du défi OseEntreprendre

Contacts:
Courriel (Clef publique)
Matrix
Slack Heads/Linuxboot/u-root/u-bmc

Heads:
Heads’ reproducible builds
Heads’ documentation
Heads’ code
Heads’ 33c3 presentation


#2

Hé, content de te voir par ici Thierry :slight_smile:
Mes deux questions: combien ça coûte et où/quand peut-on en acheter (X230 et board avec OpenBMC) ?


#3

Bonjour à tous! Content d’être ici @MagicFab et les autres!!!

Coopérative d’achat en devenir
L’idée générale derrière la coopérative d’achat que je cherche à instaurer est de faire profiter directement du cout variable du matériel, lié au volume d’achat (la facture du coutant étant refilée directement au client), mon profit étant lié au service offert, qui lui est à coût fixe. Je m’engage à redonner 10% de ce montant aux projets dont je dépend, qui servira aussi à couvrir les frais associés à la certification QubesOS des modèles proposés.

Il est donc question de prix maximal proposé (achat direct sans pooling) et de réductions applicables en fonction du nombre de commandes placées pour une plage d’attente donnée.

Service offert
Le service offert combine l’utilisation d’un matériel digne de confiance et l’utilisation d’une clef GPG externe pour attester de l’intégrité du matériel. Le service de reprogrammation du matériel inclut donc l’appropriation du matériel par Insurgo (Nettoyage Intel ME, reprogrammation des FLASH SPI. Appropriation par Insurgo du TPM, de la clef USB LibremKey, insertion de la clef publique et de la trustdb générée à même le rom), l’installation de QubesOS et l’attestation de l’intégrité finale du rom et des configurations logicielles avant l’expédition de la clef USB et du matériel dans des colis séparés. L’utilisateur, à la réception du matériel, vérifie l’intégrité attestée par Insurgo et est invité à se réapproprier son matériel avant de l’utiliser (réencryption du conteneur LUKS avec sa propre phrase de passe, réinitialisation de la LibremKey, génération des clefs et inclusion de sa clef publique dans la rom, réappropriation du TPM et attestation de l’intégrité avant le premier démarrage).

Prix
Voici les prix maximaux de ce qui peut être commandé dès maintenant via courriel chiffré:

  • Laptop: x230 i7 2.9GHZ, USB3, écran IPS, 16GB ram, 240GB ssd, wifi Atheros AR5B95, backlit keyboad, webcam, TPM : 796.04$CAN (Incluant TPS/TVQ et expédition vers Insurgo)
  • LibremKey 59$US (Incluant shipping vers Insurgo)
  • Frais de reprogrammation pour le grand publique (5 heures) : 500$ (Organisations et OBNL, contactez-moi via courriel chiffré. Ce prix est pour le grand publique.)
  • Total maximal excluant l’expédition vers le client : 1355.04$

Rabais au volume:

  • Les rabais d’achat au volume de LibremKey est présentement en négociation avec Librem (détails à suivre le 15 janvier)
  • Pour le refurbisher de laptops, voici le plan au volume actuel:
unités     %   Temps de préparation
1-2               3-5 jours
3-5        %5     10 jours
6-10       %7     3-4 semaines
11-15      %10    4-5 semaines
16-20      %13    5 semaines
21-25      %15    6 semaines

Des garantis prolongées sont offertes par le refurbisher. Je garanti le fonctionnement du laptop à sa réception et garanti pour ma part le service:

Durée en mois       % de la valeur du matériel
1                   %5 
3                   %10
6                   %15
12                  %25

Inconnus/À la recherche de:

  • Je suis à la recherche d’un électronicien local qui pourrait produire et assembler les cartes ASMBv4. Ces cartes sont rares sur le marché du seconde main.
  • Je suis à la recherche d’un partenaire pouvant monter des serveurs localement et me les envoyer. (J’ai un fournisseur pour les cartes-mères KGPE-D16/KCMA-D8)
  • Je suis à la recherche de partenariat pour m’aider à monter un site transactionnel zerolog, ou de mentorer quant à la meilleure approche décentralisée et anonyme (Est-ce que vous achèteriez sur OpenBazaar? Qui pourrait jouer le rôle de médiateur/Escrow? Alternatives?)

Au plaisir!

Thierry Laurion
Insurgo, Technologies Libres / Open Technologies


#4

C’est vraiment de l’excellent travail. Je serais éventuellement intéressé en acheter un. @MagicFab je me demandais si t’avais l’idée de faire une liste d’acheteur potentiel pour bénéficier des avantages. Bon travail @Insurgo Thierry!


#5

@yl77 pour ma part je ne me considère pas l’audience pour ce système, donc non.

Je ne comprends pas bien la structure de prix. Ce système devrait au moins être offert en 1920x1080 pour être compétitif avec le Librem 13 (CAD $2265 en configuration semblable). Rendu à ces prix là un rabais de 10% me semble presqu’une distraction. Plutôt qu’espérer vendre à la pièce, un projet de financement participatif me semblerait plus efficace et moins risqué. Ça permettrait aussi aux gens comme moi qui ne sont pas l’audience du projet d’y contribuer à un autre niveau.

À moyen (et même court term) il faut penser que les X230 ne seront pas disponibles à l’infini, ce prix risque en fait d’augmenter. Celui du service, lui, normalement devra diminuer avec le volume et l’automatisation, non ?

Le 15 janvier est passé, est-ce qu’il y a du nouveau depuis ton dernier message, Thierry ?


#6

En tant que consultant en développement d’entreprise ayant passé un peu trop de temps dans notre industrie de technologies libres, je me dis que ce que vous faites est un effort tout à fait louable mais non viable. Du côté des laptops il y a des problèmes multiples avec ce modèle d’affaires:

  • Le monde “normal” veut de la performance et power savings et donc du Intel (ou AMD à la limite, mais c’est pas vraiment mieux qu’Intel vu qu’il y a le PSP); le marketing d’Intel est vraiment vraiment fort, tout le monde que je croise au quotidien veut toujours le dernier i7 et sont dans la mentalité qu’un ordinateur de plus de 2-3 ans ne vaut pas la peine d’être utilisé. Le ARM ou RISC-V ne seront même pas considérés.
  • Les shoppes de refurbishing the Thinkpads (Insurgo, Vikings, TechnoEthical, Minifree…) sont dépendantes de l’approvisionnement de Thinkpads usagés (en déstockage d’entreprise ou sur eBay), ce qui ne sera pas viable à long terme comme modèle d’affaires ou projet de société. Hell, juste trouver des batteries de remplacement qui sont pas de la noname chinese crap qui ne tiendront plus la charge après un mois, c’est difficile (ou on paie au moins 180$ par batterie).
  • Chaque année qui passe, vos systèmes (et donc l’offre) devient “plus vieille d’un an”. Et y’a que les geeks linuxiens qui s’intéressent aux Thinkpads, le monde autour de moi se prend des Dell XPS 13 ou des Surface Pro et essaie d’insinuer que je suis désuet et que je devrais changer de machine pour “quelque chose de plus beau, mince et léger” (mais j’en ai rien à fichtre, le X220 était le dernier “vrai” thinkpad avec un clavier que je peux utiliser, le seul moyen aujourd’hui serait d’acheter un Thinkpad 25 en espérant qu’ils continuent de le produire). Je garde mon X220 comme un trésor mais je suis hors norme.
  • Les nouvelles machines sont une voie sans issue pour ce qui est de la libération technologique par ces shoppes là, vous ne pourrez pas installer Libreboot (ni coreboot, il me semble) sur les Thinkpad récents à cause du Bootguard d’Intel. La seule exception, c’est les Librem; en termes de matériel “performant” manufacturé à neuf il n’y a pas d’alternative aujourd’hui. C’est pourquoi plein de gens mettent leurs espoirs derrière Purism.

J’aimerais que ça en soit autrement. Et la situation est encore pire quand on regarde le monde du mobile…

Aussi, tant que je suis là à jouer l’avocat du diable (ne le prenez pas mal SVP): QubesOS c’est cool conceptuellement, en théorie… en pratique à moins d’être Snowden ou un journaliste traqué par le gouvernement, pour monsieur tout le monde et même pour les geeks de Linux moyens, c’est inutilisable, à moins de revenir à la fin des années 90 en termes d’ergonomie logicielle… juste regarder ce qu’il faut faire pour plugger une clé USB fait saigner du nez :thinking: il faut être vraiment parano pour s’assujettir à ce genre d’embûches au quotidien (et pourtant je me considère déjà pas mal parano…)


#7

@MagicFab: merci pour le retour!

Je ne comprends pas bien la structure de prix. Rendu à ces prix là un rabais de 10% me semble presqu’une distraction.

L’idée est de refiler le coûtant du matériel à l’utilisateur final s’il est prêt à attendre pour économiser jusqu’à 119.41$CAN sur le 796.04$CAN du x230, ce qui ne me semble pas négligeable.

Ce système devrait au moins être offert en 1920x1080 pour être compétitif avec le Librem 13 (CAD $2265 en configuration semblable).

On ne parle pas de configuration tout à fait semblable. Extrait:

  • Intel Core i7-3520M processor (2 cores, 2.90GHz, 4MB cache)
  • Intel HD Graphics 4000
  • DDR3 memory controller (up to 1600MHz), Intel Turbo Boost 2.0 (3.60GHz), HT technology
  • Screen : 12.5" (317.5mm) HD (1366x768) TFT color, anti-glare, LED backlight, 300 nits, 16:9 aspect ratio, 500:1 contrast ratio, IPS, WideView (170° viewing)

Plutôt qu’espérer vendre à la pièce, un projet de financement participatif me semblerait plus efficace et moins risqué.

Je ne vois pas où le sociofinancement pourrait s’appliquer. Acheter un maximum de x230 en avance pour baisser encore le prix? Y-a-t-il un malaise pour le coût matériel?

Ça permettrait aussi aux gens comme moi qui ne sont pas l’audience du projet d’y contribuer à un autre niveau.

@MagicFab: J’aimerais vraiment te lire d’avantage sur ce que tu as en tête en lien avec le sociofinancement. J’entrevois en quoi ceci pourrait s’appliquer pour les serveurs car la solution n’est pas encore clef en main

Le 15 janvier est passé, est-ce qu’il y a du nouveau depuis ton dernier message, Thierry ?

Pour Purism et ses LibremKeys, ils n’ont pas encore finalisé le contrat et j’attend toujours une confirmation. Ils semblaient dire que ce serait similaire aux rabais de Nitrokey (C’est eux qui manufacturent et rebrand les clefs pour Purism).

À noter que le refurbisher révise déjà les délais de d’attentes à la baisse. Les détails seront confirmés avant début février.

Merci pour le feedback!!!


#8

@jeff! Merci pour cette critique fortement appréciée!!!

Recadrons premièrement la clientèle. La clientèle ciblée est tout utilisateur potentiel déjà intéressé par QubesOS. D’ailleurs!!! @MagicFab: Je suis en processus de certification matérielle avec QubesOS! Ce sera fait début février et le x230, déployé avec Heads sera le seul matériel actuellement certifié répondant à tous les requirements “Toward a reasonably secure laptop:slight_smile:

Il s’agit donc d’une personne déjà conscientisée par le concept que plus récent n’est pas garant de qualité et enore moins de sécurité, désireuse de faire le nécessaire pour protéger sa vie propre vie privée mais surtout celle des autres avec qui elle communique et prête à prendre ses responsabilités pour protéger ses metadonnées, le contenu de ses communications avec ses interlocuteurs, les informations stockées et en transit, ses avantages compétitifs et financiers, ou encore ses sources d’information. Pour le moment, les utilisateurs potentiels de QubesOS se basent sur ceci pour acheter du matériel compatible en absence d’un modèle certifié..

Tout à fait d’accord avec ta critique. Il n’y a plus beaucoup de matériel intéressant sauf ceux que je cite présentement et qui ont été intégrés au projet Heads (x230, x220, kgpe-d16, kcma-d8). En attendant que QubesOS roule sur du Power9 (qui nécessite des travaux importants sur QEMU/KVM), ou l’arrivée du PowerPC-notebook avec des travaux similaires devant être effectués, Xen n’étant pas supportés sur ces architectures actuellement.

Il est donc question de modèles libres (quelques uns encore)/pouvant être libérés (de moins en moins possible)/de plateformes émergeantes non-supportées par QubesOS. Performant/Fonctionnel, facile d’utilisation/Convenient ou sécuritaire. La triade de la sécurité.

En effet. J’ai la chance d’avoir trouvé un approvisionnement de x230 qui me garantie un flot continue pour la prochaine année, ce qui est le minimum requis pour faire certifier du matériel pour QubesOS. En effet je ne peux pas aller plus rapidement que l’approvisionnement qui atteindra une limite éventuellement, mais ce ne sera pas tout de suite puisque justement, les x230 sont délaissés par ceux qui croient que plus récent est mieux. Mais qui a réellement besoin de plus performant?

Mais je ne compte pas vendre 250 laptops par semaine non plus, mais plutôt transitionner et entamer les travaux nécessaires pour adapter QubesOS et Heads/linuxboot/Systemboot/u-root à d’autres architectures moins sécuritaires (UEFI obligé) et plus récentes. Si le Librem13v1 désactivait réellement Intel ME comme pour le x230, pour les modèles plus récents c’est impossible par design. Oui, me_cleaner demande gentiment à ME de s’éteindre. Mais les modules risqués sont toujours présents dans le SPI flash, ce qui est inacceptable pour plusieurs modèles de menace.

Extrait de me_cleaner:

For generation 2 (Nehalem-Broadwell, ME version between 6 and 10) this tool removes almost everything, leaving only the two fundamental modules needed for the correct boot, ROMP and BUP. The firmware size is reduced from 1.5 MB (non-AMT firmware) or 5 MB (AMT firmware) to ~90 kB.

For generation 3 (from Skylake onwards, ME version >= 11) the ME subsystem and the firmware structure have changed, requiring substantial changes in me_cleaner. The fundamental modules required for the correct boot are now four (rbe, kernel, syslib and bup) and the minimum firmware size is ~300 kB (from the 2 MB of the non-AMT firmware and the 7 MB of the AMT one).

Pour les batteries, il y a moyen de s’approvisionner autrement. C’est pourquoi c’est intéressant de faire affaire avec un refurbisher qui réduit les coûts en achetant plus. Minifree/Vikings/TechnoEthical ne visent pas à devenir/ne sont pas des coopératives. En fait, Vikings, entre autre, n’est pas intéressé à créer de partenariat. J’ai tenté de les approcher pour qu’ils assemblent le matériel alors que je faisais le port pour Heads. Ils ont simplement refusé de collaborer.

Malheureusement, c’est vain. Voir me_cleaner et l’extrait ci-haut pour explication. La critique la plus fréquente qui est faite à leur égard est pourquoi s’être obstiné à vouloir libérer Intel alorsq u’ils auraient pu développer un laptop power8 à l’époque ou encore une architecture powerpc, alors que d’autres avant, y compris Google, avaient essayé en vain d’obtenir du matériel sans backdoor de la part d’Intel. Le résultat actuel du Librem: un coreboot FSP (pas libre du tout: binary blob), et un core IntelME qui dispose toujours des modules rbe, kernel, syslib latents. Mais oui, un laptop plus performant et et plus récent. Chacun son modèle de menace. Mais choisir la performance et la récence d’un matériel a de forts impacts pour le matériel libre, et Purism en paie le coût actuellement avec des promesses qu’ils sont incapables de remplir… et pour lesquelles ils sont extrêment critiqués par les gens techniques…pour le moment.

L’alternative réelle au Librem5 est le i9305
L’alternative réelle au Librem13v2/Librem15v3 est pour le moment le x230. Le t430 est en cours de portage par un collaborateur.

Jusqu’à ce que l’open hardware existe réellement et que son écosystème logiciel puisse répondre aux modèles de menaces actuels de ses clientèles les plus vulnérables et les plus en besoin.

Voir cette démo qui explique en quoi c’est intéressant, pointant sur l’importantce d’isoler ses contrôleurs USB du reste du système.

Le modèle réactif de sécurité dans lequel nous baignons n’a jamais fonctionné. Je ne cherche plus à convaincre personne qu’il ne suffit d’une pièce jointe pour infecter son BIOS, son disque dur et perdre confiance dans son matériel. (Pause! Quand avez-vous mis à jour votre BIOS la dernière fois? Allez faire un tour sur le site de votre constructeur. Regardez les vulnérabilités actuelles UEFI/BIOS pouvant être exploitées par un boot sur une clef USB/DVD qui ne prendrait que quelques secondes! Votre SMM est-il vulnérable? Probablement! Votre contrôleur disque est-il compromis? Votre BIOS? Comment pouvez-vous le prouver/l’infirmer? Vous ne pouvez pas. Votre antivirus ne peut pas. Votre OS ne peut pas y jeter un oeil. Si la mémoire SPI flash contenant le firmware d’un de ces composantes matérielles a été altérée, vous ne le saurez jamais.) Avez-vous confiance en votre matériel? Pourquoi?

Ceux qui en sont déjà conscients ont maintenant une option de configuration matérielle et logicielle qui leur permet de savoir (au lieu d’avoir un sentiment de confiance, véridique ou non) que leur matériel est digne de confiance. Bien sûr il faut changer un mécanisme de base: on ne fait plus tout dans le même environnement !!! On doit maintenant penser avant d’agir en se demandant dans quel compartiment on compte entreprendre une action et on ne fait confiance en rien. :slight_smile: Mais ça s’apprend vite si on en reconnaît le besoin. Si on est conscient de ce que l’on cherche à protéger. Si on est prêt à faire les efforts nécessaires pour les protéger adéquatement.

Sérieusement, une fois qu’on intègre qu’il faut faire Alt-F3 avant de tapper “Firefox” et d’y choisir le compartiment dans lequel on veut naviguer, intégrer qu’il faut presser ctrl-c, ctrl-shift-c pour copier le contenu de son presse-papier à l’hyperviseur avant de sélectionner la fenêtre de destination et presser ctrl-shift-v et finalement ctrl-v pour y coller le contenu; on se rend compte que c’est finalement 1 fraction de seconde additionnelle pour garantir qu’aucune application qui roule en concurrence sur son système ne peut voler le contenu de son presse papier sans qu’on s’en rende compte. Mieux. Que les environnements éteints ne courrent aucun risque. Je vous invite à jeter un oeil sur le modèle de menace que le projet QubesOS-Workstation de la Freedom of Press Foundation mène de front.. À quoi bon avoir un système si sécuritaire si le matériel peut être facilement compromis? (BIOS/UEFI, Intel ME, TPM, iKVM, etc etc etc…)

Encore une fois, tout dépend de son modèle de menace. Si on n’ouvre jamais de pièce jointe de ses courriels (doc, pdf, xls, exploitant son lecteur), n’ouvre jamais de fichier depuis une clef USB qui n’est pas sienne, qu’on ne consulte que des sites webs à contenu statique sans javascript (vol de presse papier, de cookie, de session) et qu’aucun périphériques USB ne peut être introduit dans son ordinateur, que l’on considère n’avoir rien à cacher ou à protéger, qu’on ne se considère pas assez intéressant pour un attaquant, alors en effet, il n’y a aucun besoin d’isoler ou de protéger ses actifs ou ses collaborateurs… jusqu’à ce que. :slight_smile:


#9

@jeff @MagicFab @yl77 :

Niveau Logiciel/Matériel et attestation d’intégrité de micrologiciel et configurations de démarrage, voici où nous en sommes. J’attend la revue de mes collaborateurs car je ne peux pas juste merger mes changements à Heads. Tout en photos!


#10

@jeff

Je viens de lire la doc!!
Il fallait arrêter ici: “USB drive mounting is integrated into the Devices Widget. This is the tool tray icon with a yellow square located in the top right of your screen by default. Simply insert your USB drive and click on the widget.

Tu saignes du nez facilement dis donc :smile:


#11

Au contraire, trouver les fonds et valider la viabilité et financement du projet avant de le faire. Voici quelques exemples auxquels j’ai pensé quand j’ai écrit ça :

FACIL avait utilisé Goteo pour sa campagne de Clé FACIL, j’ignore si c’est encore le seul ou meilleur choix (libre) pour ça.

Concernant ce qu’écrit @jeff je fais les mêmes constatations, merci pour ta réponse détaillée!

Comment compares-tu un Chromebook + Coreboot au X230 modifié pour utilisation avec QubesOS ? Je me demande si ç©a peut accomoder d’autres modèles de menace (et d’autres budgets). J’en vois pas beaucoup dans la liste de compatibilité, je suis curieux ce que tu en penses compte tenu de ton expérience.


#12

Je ne comprend pas la comparaison. Novena a parti un sociofinancement au moment de l’idée de produire un matériel libre destiné au hackers en puissance. Un jouet merveilleux, certes, que j’ai moi-même regretté de ne pas avoir financé lorsque c’était le temps, surtout à cause du FPGA. Mais ce n’était pas un produit destiné à un public intéressé par la protection de la vie privée, mais pour les enthousiastes du libre sans réel désir de protéger l’intégrité du firmware, ni l’intégrité de l’OS en soit, et promouvait l’utilisation d’un OS monolitique (Linux) n’offrant aucun avantage permettant de réellement protéger l’individu directement. Bien que Xen supporte maintenant plusieurs SOC ARM et que le développement est très actif, ceci n’inclut pas le Cortex A9 puisque l’extension de virtualization n’est pas incluse. C’est donc le même jeu qui s’opère: la virtualization permet la compartimentalisation et l’isolement du matériel (passthrough, protection DMA etc) par l’utilisateur final (pas un IT) seulement si la solution est accessible. Et QubesOS ne s’intéresse pas encore, malheureusement, aux autres architectures qui elles-mêmes ne supportent pas Xen pour le grand publique sur du matériel accessible.

Je garde l’oeil ouvert pour des machines qui auront des SOC ARM compatibles. QubesOS ne sera pas très résistant à certifier ce genre de machine si Xen les supporte directement et si Fedora roule déjà sur ces plateformes. (PR welcome et elles fuseront!) C’est un fruit qui tomberait assez proche de l’arbre. Et c’est là où je serais d’accord à partir un projet de sociofinancement: supporter le meilleur matériel accessible actuellement. Mais je n’ai aucunement l’expérience de Bunny ou encore de Timothy Pearson de RaptorEngineering pour créer du matériel.

J’attend toujours mon eoma68. Lol! Il est possible que le A20 Dual-Core ARM Cortex A7, 1.2 GHz dispose des extensions de virtualisation, mais avec 2GB de RAM, ce ne sera pas suffisant pour isoler quoi que ce soit et encore une fois, c’est un jouet intéressant pour créer autre chose, comme un USB Armory par exemple, mais ce n’est pas un laptop destiné au grand publique. Un burner, au mieux. Soyons clairs: si l’idée est d’avoir une persistence de ses données sécuritaire, il faut de la virtualization. Les conteneurs ne sont pas aussi sécuritaires et leur utilisation résulte d’un choix d’économie de ressources plutôt qu’un réel désire d’isolement.

J’entend votre critique de QubesOS, mais celles-ci semblent être dirigées plutôt à la version 3 qu’à la version 4 actuelle. Une fois les logiciels installés (préinstallés, pourquoi pas. Salt), c’est aussi simple que de lancer une application depuis un menu. Mais encore faut-il avoir un plus grand désir de sécurité, comme je disais précédemment.

En ce quoi concerne la critique liée à la vieillesse du matériel, je ne suis pas sûr de vous suivre. J’utilise moi-même un x230 i5 avec 16GB de ram avec Heads et QubesOS. Et je fais un paquet de trucs que la majorité des utilisateurs finaux ne feront jamais en terme de besoins de performances. Ce mythe de la performance à tout prix à un coût écologique énorme. Sérieusement, un i7 2.9ghz avec 16GB de ram et un disque dur SSD fait en sorte que je ne penserais même pas à désirer un autre laptop. L’écran IPS me permet de passer souvent 12 heures devant mon écran sans avoir de fatigue oculaire. Et le clavier chicket tant critiqué mérite d’être revisité. :slight_smile: Redonner vie au x230 qui retourne en force sur le marché de l’usager après les locations des grandes entreprises est en fait une idée géniale. Minifree et autres ne sont pas lancés pas dans la revente du x220 et x230 car il ne pourra jamais être certifié RYF (idem pour les laptops de Purism, à moins qu’il y ait du lobbyisme permettant de baisser le standard RYF en soit). Mais il est certain qu’il y a un marché pour un laptop refurbished qualité A1 certifié par QubesOS. Et ce sera bientôt fait. :slight_smile:

Les lecteurs de ce post ne semblent pas correspondre à mon public cible. Soit :slight_smile:
Mais vous roulez des serveurs, right? Ça ne vous tente pas de savoir si votre matériel est toujours sous votre contrôle exclusif? :stuck_out_tongue:

L’idée du Verified boot de google a fait son entrée sur toutes les plateformes avec coreboot 4.9.
C’est cette idée qu’en dupliquant la rom (donc 2x plus d’espace SPI flash nécessaire) on peut s’assurer de l’intégrité de celui-ci. En jumelant ce concept avec celui du rom signé, on s’assure que c’est bien ce que l’on y a mis qui roule. Couplé avec la fameuse vis qui WP (Write protect) le firmware, on a quelque chose d’assez solide, mais statique. Ce qui est bien avec Heads, c’est l’idée de pouvoir insérer dynamiquement des fichiers dans le rom via CBFS et d’utiliser le TPM et une clef Nitrokey/LibremKey pour signer les configurations dans la partition /boot. On se fout à savoir si un attaquant modifie le rom ou /boot. On sait qu’on le saura au prochain démarrage, en même temps que l’exploit prendrait persistance.

Je vous invite à cet article au complet mais je me permet de mettre cet extrait pertinent:

Firmware Attacks Worry U.S. Intelligence

In other documents, spy agencies flagged another specific concern, China’s growing prowess at exploiting the BIOS, or the Basic Input/Output System. The BIOS, which is also known by the acronyms EFI and UEFI, is the first code that gets executed when a computer is powered on before launching an operating system like Windows, macOS, or Linux. The software that makes up the BIOS is stored on a chip on the computer’s motherboard, not on the hard drive; it is often referred to as “firmware” because it is tied so closely to the hardware. Like any software, the BIOS can be modified to be malicious and is a particularly good target for computer attacks because it resides outside the operating system and thus, cannot be easily detected. It is not even affected when a user erases the hard drive or installs a fresh operating system.

The Defense Intelligence Agency believed that China’s capability at exploiting the BIOS “reflects a qualitative leap forward in exploitation that is difficult to detect,” according to the “BIOS Implants” section in the Intellipedia article on threats to air-gapped computers. The section further stated that “recent reporting,” presumably involving BIOS implants, “corroborates the tentative view in a 2008 national intelligence estimate that China is capable of intrusions more sophisticated than those currently observed by U.S. network defenders.”

A 2012 snapshot of another Intellipedia page, on “BIOS Threats,” flags the BIOS’s vulnerability to supply chain meddling and insider threats. Significantly, the document also appears to refer to the U.S. intelligence community’s discovery of BIOS malware from China’s People’s Liberation Army, stating that “PLA and [Russian] MAKERSMARK versions do not appear to have a common link beyond the interest in developing more persistent and stealthy” forms of hacking. The “versions” mentioned appear to be instances of malicious BIOS firmware from both countries, judging from footnotes and other context in the document.

The Intellipedia page also contained indications that China may have figured out a way to compromise the BIOS software that’s manufactured by two companies, American Megatrends, commonly known as AMI, and Phoenix Technologies, which makes Award BIOS chips.

In a paragraph marked top secret, the page stated, “Among currently compromised are AMI and Award based BIOS versions. The threat that BIOS implants pose increases significantly for systems running on compromised versions.” After these two sentences, concluding the paragraph, is a footnote to a top-secret document, which The Intercept has not seen, titled “Probable Contractor to PRC People’s Liberation Army Conducts Computer Network Exploitation Against Taiwan Critical Infrastructure Networks; Develops Network Attack Capabilities.”

The word “compromised” could have different meanings in this context and does not necessarily indicate that a successful Chinese attack occurred; it could simply mean that specific versions of AMI and Phoenix’s Award BIOS software contained vulnerabilities that U.S. spies knew about. “It’s very puzzling that we haven’t seen evidence of more firmware attacks,” said Trammell Hudson, a security researcher at the hedge fund Two Sigma Investments and co-discoverer of a series of BIOS vulnerabilities in MacBooks known as Thunderstrike. “Most every security conference debuts several new vulnerability proof-of-concepts, but … the only public disclosure of compromised firmware in the wild” came in 2015, when Kaspersky Lab announced the discovery of malicious hard drive firmware from an advanced hacking operation dubbed Equation Group. “Either as an industry we’re not very good at detecting them, or these firmware attacks and hardware implants are only used in very tailored access operations.”

Hudson added, “It is quite worrisome that many systems never receive firmware updates after they ship, and the numerous embedded devices in a system are even less likely to receive updates. Any compromises against the older versions have a ‘forever day’ aspect that means that they will remain useful for adversaries against systems that might be in use for many years.”

Pour cette partie de l’article, Trammel Hudson et tous les autres collaborateurs de u-root/linuxboot/systemboot (avec qui je collabore sur Heads) ont bien rit:

American Megatrends issued the following statement: “The BIOS firmware industry, and computing as a whole, has taken incredible steps towards security since 2012. The information in the Snowden document concerns platforms that pre-date current BIOS-level security. We have processes in place to identify security vulnerabilities in boot firmware and promptly provide the mitigation to our OEM and ODM customers for their platforms.”

Phoenix Technologies issued the following statement: “The attacks described in the document are well-understood in the industry. Award BIOS was superseded by today’s more secure UEFI framework which contained mitigations for these types of firmware attacks many years ago.”

Ce qui est réellement intéressant, c’est le measured boot. Qui permet de mesurer dans le TPM (ou une autre source de mesure externe, comme HOTP via LibremKey/Nitrokey) des sous-fichiers du firmware et de les mesurer comme bon nous semble.. Le Verified boot est à l’avantage du programmeur et de l’OEM. Le measured boot, à l’avantage de l’utilisateur. Heads implemente measured boot, via coreboot + linux + gpg2 + cryptsetup + lvm2 + busybox. C’est un environnement Linux accessible en bash via un recovery shell autonome lancé depuis le SPI flash, qui permet d’ajouter autant de modules que désirés pour remplir autant de use cases que désirés. Mais surtout, un environnement développés autours de scripts bash, ce qui est le plus facile à comprendre pour quiconque intéressé à lire ce que ça fait. (systemboot est basé sur u-root, qui est un environnement Go).

Deptcharge et seabios, c’est bien mais obscure. Et en fait, tout ce que ça fait, c’est passer le contrôle au système d’opération. Heads c’est un environnement linux, ni plus ni moins, utilisé à l’avantage de l’utilisateur.

Et maintenant, il n’y a plus aucune raison qu’un OEM supportant le matériel libre ne préinstalle pas Linux (et Même QubesOS!) dans un container LUKS. Hijacker la distribution du hardware pour modifier le firmware ou /boot sera détecté par l’utilisateur à la réception du matriel avant qu’il ne se le réapproprie. Puis à chaque redémarrage de son matériel, avec ses propres clefs.

On arrive à une ère où la sécurité du matériel n’est plus limité à une élite mais devient accessible. Sur du bon matériel, évidemment. M’enfin. :slight_smile: