Page 1 of 2

Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE A-L

Unread postPosted: 08 Sep 2020, 14:43
by critor
Un petit peu d'historique...
  • Rentrée 1992, Texas Instruments sort la TI-85, sa 2nde calculatrice graphique avec laquelle j'entretiens un lien affectif tout particulier puisqu'il s'agit de ma première calculatrice graphique, initialement programmable en langage interprété dit TI-Basic.
  • Novembre 1994, Dan Eble, Magnus Hagander et Rob Taylor entrent dans l'Histoire en tant que pionniers en sortant ZShell, un outil qui permettait :
    1. sur ton ordinateur de programmer en langage assembleur pour le processeur z80 de la TI-85
    2. de compiler le code en question en langage machine
    3. d'encapsuler le code machine obtenu dans un format de variable transférable sur TI-85, ici des chaînes de caractères
    4. et enfin d'exécuter les variables en question une fois transférées sur la TI-85
    Contrairement au langage interprété assez limité de la TI-85, le langage assembleur permettait d'exploiter le plein potentiel du matériel de la calculatrice, ouvrant ainsi la voie à nombre de créations d'un tout autre niveau. En seulement quelques mois sont sortis des 10aines de formidables jeux et outils révolutionnaires à l'époque (affichage d'images, sortie audio sur le port série mini-Jack 2.5 de la calculatrice, ...) : https://www.ticalc.org/pub/85/asm/
  • Rentrée 1996, Texas Instruments sort la TI-83, dont le matériel et le logiciel seront repris après mise à jour pour les futurs modèles d'entrée de gamme TI-82 STATS (2004), TI-82 Stats.fr (2006) et TI-76.fr (2009). Impressionné de tout ce que la communauté avait pu réaliser sur la TI-85 (et ensuite TI-92) Pat Milheron, l'ingénieur ayant codé le logiciel en question avait réussi à faire accepter à des fins de tests l'intégration d'une commande cachée Send(9prgm... permettant de lancer des programmes écrits en langage machine improprement appelés assembleur ou ASM à partir de cette époque.
  • Rentrée 1997, Texas Instruments sort la TI-86. Le constructeur étant satisfait de l'expérimentation précédente, Pat Milheron avait cette fois-ci réussi à faire passer l'idée d'une commande parfaitement officielle, le Asm(prgm listé au catalogue que nous connaissions jusqu'à nos jours.
  • Rentrée 2015, Texas Instruments lance ses formidables TI-83 Premium CE et TI-84 Plus CE, des calculatrices graphiques couleur de milieu de gamme munies du mode examen et toujours de la commande magique Asm(prgm. Un véritable coup de foudre pour nombre d'utilisateurs, de développeurs et pour nous-mêmes.
    Suite aux travaux de MateoConLechuga, jacobly, Runer112, et Adriweb notamment avec son Project Builder, il n'y avait plus besoin de connaître le langage assembleur eZ80 pour réaliser de grands projets. Les programmes en langage machine pouvaient également être compilés à partir de code source écrit en langage C ou même C++. Une démocratisation du développement qui a attiré un nouveau genre de développeurs. La communauté de développement ainsi réunie autour du projet hautement formateur de tester, expérimenter, créer et repousser les limites a atteint un tout autre niveau de développement jamais vu jusqu'alors, avec des réalisations de qualité professionnelle dépassant de loin en quantité et en téléchargements tout ce qui avait pu être réalisé pour les anciens modèles.
    Une activité que nous mettions en avant dans un but pédagogique, incitant fortement et avec succès à partager également le code source des projets afin que chacun puisse l'étudier, le réutiliser, s'en inspirer et apprendre. Combien d'étudiants ou même ingénieurs aujourd'hui ont fait leurs premiers pas sur TI-83 Premium CE ? ;)
    Texas Instruments et sa communauté de développeurs ont ainsi cheminé ensemble main dans la main pendant 5 ans, unis autour de la mise en avant des formidables TI-83 Premium CE et TI-84 Plus CE et de la promotion des carrières en informatique et développement à travers de premiers pas sur les modèles en question. :favorite:
    On peut citer nombre de projets fantastiques : le mario-like Oiram CE, Pac-Man CE, Portal Returns CE, Geometry Dash CE, l'émulateur Nintendo Game Boy TI-Boy CE, et bien d'autres... tous avec code source.
  • Et le 28 juin 2016, Texas Instruments signe sa mise à jour 5.2.0, remplaçant l'effacement des programmes personnels en mode examen par un simple verrouillage, les programmes pouvant donc être récupérés après l'épreuve, une fois le mode examen désactivé.
Sauf que la chose en question avait été mal codée par Texas Instruments. Le menu programmes disposait d'un bug permettant d'accéder en mode examen à l'ensemble des programmes préchargés censés être verrouillés, bug qui a donc persisté de la version 5.2.0 à la version 5.3.0. Nous signalons le bug auprès de Texas Instruments après l'avoir effectivement découvert, le 4 février 2018.

Conscient de la mise en danger des examens, Texas Instruments développe et sort alors en vitesse la mise à jour 5.3.1, datée du même mois, 22 février 2018, et bien évidemment interdisant tout retour à une version inférieure. Le problème était réglé.

Hélas le 12 février 2020, un enseignant-vidéaste français très populaire, a l'idée étrange de sortir sur sa chaîne grand public à l'attention des élèves/candidats, une vidéo publique montrant en détails la réalisation de la manipulation permettant d'accéder à ses programmes en mode examen. La calculatrice ainsi filmée faisait tourner la version 5.2.2 lourdement obsolète, sans préciser la chose, et sans indiquer non plus que le problème était réglé depuis longtemps, qu'il suffisait juste de mettre à jour, et que la version en question était déjà en voie de disparition.

Nous pensions initialement de façon bien naïve à une simple maladresse, sous le coup de l'émotion de la découverte de la chose...

Donc une vidéo déséquilibrée qui par défaut d'information sur le contexte et la portée de la chose devenait anxiogène. La communauté dont nous-mêmes ne manquons pas de lui apporter des précisions en réponse à la vidéo et ses divers tweets liés, sans le moindre retour de sa part.
Pire, le 17 février, le même enseignant persiste et signe la même communication non corrigée dans l'Alsace.
Aucune inflexion du discours donc, malgré les précisions apportées. Le but était-il vraiment d'informer ou bien plutôt de désinformer, générer de la peur et faire le buzz, dans un engagement certes respectable contre la réforme du lycée ? La popularité sur YouTube ferait-elle perdre tout sens des réalités ?

En tous cas cela n'a pas manqué, 100000 vues en deux jours, 170000 vues à la fin de la semaine en plein congés d'Hiver, 240000 vues aujourd'hui... Une vidéo sans doute visionnée jusqu'au plus haut sommet de l'Etat ainsi que par une part très significative de candidats au Baccalauréat 2020, ce qui a relancé l'intérêt pour les anciennes versions et les outils permettant de les installer, pas toujours avec succès certes. C'est triste à dire mais les examens 2020 ont été mis en très grave danger, dans un sens heureusement que le confinement et l'annulation des épreuves ont brutalement mis fin à l'escalade...
Texas Instruments, alerté par nos soins le jour même de la sortie de la vidéo dans l'espoir d'en minimiser les conséquences désagréables pour les utilisateurs, n'a pas tardé à réagir, ne manquant pas de prendre la pire décision possible pour ces mêmes utilisateurs, interdisant l'utilisation de programmes ASM :
  • à compter de la mise à jour 5.5.1 du 12 mai 2020 sur TI-83 Premium CE
  • à compter de la mise à jour 5.6.0 du 30 juillet 2020 sur TI-84 Plus CE
Des mises à jour interdisant bien évidemment tout retour à une version inférieure, le constructeur plaçait ainsi le développement tiers en voie d'extinction. Comme quoi c'était bien la peine que l'on se dépêche de signaler, la prochaine fois nous irons nous promener...

Un coup dur pour la communauté, 5 années de fichiers servis gratuitement sur Internet désormais totalement inutilisables. Des 100aines de jeux et programmes cumulant plusieurs 100aines de milliers de téléchargements rien que chez nous jetés aux oubliettes de l'Histoire, des 10aines de niveaux perso bons pour la poubelle, des 1000iers d'heures de travail passionné parties en fumée... ce que l'on peut opposer à NumWorks qui cible d'une attaque hostile envers son mode examen courant 2019-2020, attaque sur laquelle une certaine personne n'est heureusement pas tombée, a au moins fait semblant de prendre l'avis de sa communauté et nous t'en dirons davantage en temps voulu.

Mais quel est le rapport entre les programmes ASM contribués par des tiers et un bug de codage introduit par le constructeur dans un menu parfaitement officiel ? Ben aucun, nous sommes incapables de saisir le lien logique, le bug était déjà corrigé depuis 2018, il suffisait déjà d'installer l'une des nombreuses mise à jour 5.3.1 à 5.4.0 disponibles... Si certains examens exigent l'installation d'une version spécifique et bien souvent la dernière (Baccalauréat International, Pays-Bas...), ce n'est pas le cas en France et les mises à jour 5.5.1 et supérieures n'y changent rien.

La communauté, particulièrement celle des développeurs anglophones, était déjà extrêmement remontée contre cette action des plus injustes, sans la moindre volonté de rechercher le compromis puisque sans le moindre échange préalable.

Texas Instruments a fait ensuite preuve d'une communication très étrange qui n'a fait que jeter de l'huile sur le feu pendant toute la période estivale, à un point tel que l'on se demande a posteriori si c'était possible sans le faire exprès.
A l'exception du dernier, tous les points suivants ont été relevés sur Cemetech, le lieu communautaire où il y a eu le plus de virulence de la part des membres, du moins en public :
  • Promotion de la mise à jour 5.5 sans avertir les utilisateurs qu'il s'agissait d'une régression en fonctionnalités sans possibilité de retour en arrière, fonctionnalité de plus à l'époque toujours annoncée sur les pages officielles du produit. Volonté de prendre au piège les utilisateurs ?
  • La communication officielle d'abord partagée de façon informelle parlait de "prioriser l'apprentissage" (prioritize learning), des mots perçus comme particulièrement insultants et méprisants envers le travail bénévole et passionné accompli en ce sens au sein de la communauté pendant 5 ans. Parce que des choses sont codées dans un langage autre que le Python choisi entre temps au lycée français elles n'auraient soudainement plus aucun intérêt pédagogique, scolaire ou formateur ? :#roll#:
    TI-France wrote:Chez TI, nous travaillons constamment sur des moyens d'améliorer nos produits pour donner aux étudiants plus d'occasions d'apprendre, d'explorer et d'étudier les mathématiques et les sciences. Après un examen attentif, nous avons pris la décision de supprimer la fonctionnalité ASM dans notre dernière mise à jour du système d'exploitation pour prioriser l'apprentissage et minimiser les risques de sécurité. Nous pensons que cela aidera également les élèves à se concentrer sur l'apprentissage des mathématiques et des sciences. Une fois que vous aurez mis à jour la version 5.5 du système d'exploitation pour la TI-83 Premium CE, vous ne pourrez pas passer à une version antérieure.

    TI-Dallas wrote:At TI, we’re constantly working on ways to improve our products to give students more opportunities to learn, explore and study math and science. After careful consideration, we’ve made the decision to remove ASM functionality in our latest OS update to prioritize learning and minimize security risks. We believe it will also help students focus on learning math and science. After you update the operating system version to 5.6 on the TI-84 Plus CE graphing calculator, you will not be able to downgrade.

  • Des utilisateurs contactant le support technique au sujet de leurs jeux qui ne marchaient plus se sont fait répondre que de toutes façons l'utilisation de jeux annulait la garantie de la calculatrice.
  • Une communication informelle a proposé de sortir une TI-84 Plus CE Developer Edition bien évidemment interdite aux examens... Décidément Texas Instruments semble ne pas comprendre sa communauté malgré une décennie d'échanges...
    L'intérêt de développer pour TI-83 Premium CE et TI-84 Plus CE était justement de pouvoir partager ses créations auprès de la formidable base d'utilisateurs scolaires tout autour de la planète - quel intérêt à développer pour une machine interdite aux examens, machine que les scolaires n'achèteront donc pas, créant ainsi des programmes ASM qui ne fonctionneront pas sur les TI-84 Plus CE normales ? Une Developer Edition ne serait a priori achetée que par une petite niche de développeurs qui ne pourront donc que se partager des choses entre eux dans le plus total anonymat et l'indifférence générale, rien à voir avec ce qu'a été l'esprit de la communauté pendant des décennies... :#roll#:
  • La même communication informelle conseillait de passer au Python pour poursuivre nos superbes créations - était-ce se moquer du monde ? :#roll#:
    Le Python de la TI-83 Premium CE ne dispose pas d'une fonction get_key() pour tester l'appui sur une touche, mais d'une fonction wait_key() bloquante. Autrement dit, à chaque fois qu'un jeu Python par exemple sera en train de tester une touche son affichage sera figé. Cela réduit déjà le champ des possibles aux seuls jeux pouvant se ramener à du tour par tour, extrêmement rares sur calculatrices où l'on ne joue pas souvent à plusieurs. :mj:
    A croire que Texas Instruments ne connaît même pas les réalisations de sa propre communauté... :#roll#:
  • Enfin lors de ses formations en ligne en ce moment à l'attention des enseignants dont la toute dernière à ce jour, nous avons pu constater une communication spontanée assez étrange à ce sujet... ce n'est pas au mot près car l'enregistrement de la session en question n'est pas encore disponible, mais ça donnait à peu près ça :
    TI-France wrote:suite à une vidéo d'alerte, la mise à jour 5.5 supprime l'ASM et donc toute faille possible

    Euh pardon ? Faille et bug ce n'est déjà pas la même chose... Mais en établissement un lien logique avec l'ASM et donc les développements tiers dans l'histoire, le constructeur ne serait-il pas en train de tenter de faire passer auprès des enseignants, qui pour la plupart ne s'y connaissent pas, sa propre erreur qu'il a lui-même introduite dans un de ses menus officiels en tant que faille forcée par des tiers ? C'est-à-dire de préserver son image en rejetant la faute sur sa communauté ?
    La communauté a bon dos... Il nous semble qu'après des années de dévouement bénévole, elle mériterait mieux que ça. Nous comprenons parfaitement la situation critique, elle n'est toutefois en rien une raison valable pour jeter en pâture auprès du corps enseignant des tiers de bonne volonté parfaitement innocents et étrangers à l'histoire en question.
    L'union fait pourtant la force, particulièrement dans la tourmente...

La vengeance est un plat qui se mange froid et hier sortait arTIfiCE, un outil visiblement ruminé discrètement, soigneusement et méticuleusement pendant toute la période estivale.

Partagé anonymement par un certain YvanTT, arTIfiCE, qui peut être vu comme le Ndless des TI-83 Premium CE et TI-84 Plus CE, te permet de lancer tes programmes ASM, en exploitant un bug dans l'application intégrée CabriJr.

Tu récupères ainsi une fonctionnalité légitime pour laquelle tu avais payé lors de l'achat de ta calculatrice.

Avec le degré de ressentiment et même de haine que les actions et communications de Texas Instruments ont allumé et attisé au sein de sa communauté de développement, pour nous c'était très loin d'être la fin de l'histoire... Nous craignions en conséquence des attaques contre le mode examen, mais plus tard dans l'année scolaire... Nous étions loin de nous douter que cela continuerait dès aujourd'hui.

Certains objectaient notamment que arTIfiCE ne serait qu'un feu de paille, que Texas Instruments allait rapidement sortir une mise à jour... ce denier point est sans doute vrai, même si nous pouvons objecter à notre tour :
  • que c'est en période de rentrée que les utilisateurs sont le plus vulnérables
  • que les mises à jour publiées en cours d'année scolaire ont beaucoup moins de succès, surtout quand elles n'apportent rien d'utile, les utilisateurs n'étant pas autant à l'affût des dernières nouveautés qu'en période de rentrée et donc de découverte de leur nouveau joujou
  • que les stocks de machines préchargées avec la nouvelle version n'arriveront pas avant de longs mois, sans doute lors de l'approvisionnement pour la rentrée 2021 au printemps
Donc en gros, les utilisateurs sont à peu près tranquilles pour toute l'année scolaire 2020-2021 selon nous.

Bref, dès ce matin donc suite surprise et inattendue de l'histoire, nouvelle attaque contre Texas Instruments, parmi les plus graves qu'il n'y ait jamais eu, il nous faut revenir une décennie en arrière à l'époque de Brandon Wilson pour trouver des choses comparables.

Texas Instruments est donc dès maintenant assiégé avec Cauldron, une publication tout aussi anonyme de Ne3s2-3p4 cette fois-ci.

Cauldron ne s'attaque finalement pas au mode examen comme nous le prédisions hier, mais porte un coup d'estoc d'une rare violence à la sécurité codée par Texas Instruments sur ses TI-83 Premium CE et TI-84 Plus CE.

634243534946En effet Cauldron patche le code amorce (Boot) des calculatrices, que nous pensions pourtant non reprogrammable sur les modèles de production, qui selon le menu de diagnostic ont leurs premiers secteurs de la Flash protégés contre l'écriture contrairement aux prototypes de 2014-2015. :o

Visiblement, Texas Instruments a raté quelque chose ici aussi...


Le Boot est le code lancé au démarrage de la machine, s'occupant de lancer le système d'exploitation, et ayant également la charge d'en installer les éventuelles mises à jour. Dans ce contexte il effectue nombre de vérifications :
  • depuis le début, vérification d'une signature électronique de 2048 bits à chaque installation de mise à jour, afin d'interdire l'installation d'un système modifié
  • depuis la version Boot 5.1.5, inscription et vérification d'un numéro de version minimale autorisée dans une zone de la mémoire Flash ne pouvant être réinitialisée par aucun menu officiel
  • depuis la version Boot 5.3.1 sur calculatrice physique (et 5.3.0 sur l'émulateur TI-SmartView CE), vérification d'une signature électronique de 1024 bits à chaque redémarrage de la calculatrice, afin d'interdire l'utilisation d'un système qui aurait été modifié après installation sur la calculatrice, ce qui te rajoute quelques secondes au démarrage avec le message
Bien évidemment à chaque cas, en cas d'échec du test le système en question est refusé et/ou détruit.

Tu peux vérifier ta version en tapant
mode
alpha
S
.

Et bien Cauldron modifie le Boot afin d'altérer définitivement deux de ces sécurités si présentes :
  • Boot 5.3.1 : la vérification de la signature 1024 bits au démarrage est désactivée, ce qui permettra à ta calculatrice de démarrer plus rapidement, et te permettra désormais d'utiliser librement des systèmes modifiés
  • Boot 5.1.5 et 5.3.1 : l'inscription du numéro de version minimale autorisée est bloqué en dur sur 5.3.1, ce qui te permettra à tout moment de pouvoir réinstaller une ancienne version jusqu'à 5.3.1, et donc de retrouver la gestion des programmes ASM
Malgré le contexte, louons sur ce cernier point la responsabilité et la modération de l'attaquant, les versions 5.3.0 et inférieures souffrant du mode examen défectueux restent dans tous les cas interdites. Simple volonté donc de récupérer ce qui est légitime, et absolument pas de frauder.
Si seulement Texas Instruments pouvait en tenir compte...

Cauldron exploite donc une ancienne faille matérielle déjà corrigée, et ne cible que les révisions matérielles L et inférieures, assemblées jusqu'en Mai 2019. C'est-à-dire que :
  • sont exclues l'intégralité des TI-83 Premium CE Edition Python :#non#:
  • sont gérées l'intégralité des simples TI-83 Premium CE
  • sont exclues l'intégralité des TI-84 Plus CE-T Python Edition :#non#:
  • sont exclues les simples TI-84 Plus CE et TI-84 Plus CE-T en révision matérielle M à O, assemblées de Mai 2019 à Mai 2020 :#non#:
  • sont gérées les simples TI-84 Plus CE et TI-84 Plus CE-T en révision matérielle L et inférieure, assemblées jusqu'en Mai 2019

Si tu es donc muni(e) d'une machine compatible avec Cauldron tu en prends ainsi le contrôle total et possiblement pour toujours ; tu n'auras plus à craindre les mises à jour de Texas Instruments. Tu pourras patcher le système comme tu voudras, mettre à jour et tant que tu le voudras toujours revenir à une version inférieure supportant l'ASM d'origine ! :bj:
En théorie, il serait possible qu'une mise à jour système future de Texas Instruments s'occupe de réparer le Boot. En pratique cela nous semble extrêmement difficile, coûteux et donc peu probable :
  • Déjà le Boot n'est pas censé être réinscriptible, et il y a sans doute nombre de contraintes...
  • Contrairement aux TI-Nspire, les Boot TI-83 Premium CE et TI-84 Plus CE n'ont pas été conçus pour pouvoir être mis à jour - ils sont liés à des révisions matérielles spécifiques, une version plus récente risque tout simplement de ne pas marcher et donc bloquer définitivement la machine en question
  • Le moindre incident lors de la programmation du nouveau Boot ou de son exécution, et la machine concernée sera définitivement morte, et c'est déjà arrivé lors de mises à jour TI-Nspire - mais après, possible que Texas Instruments juge le remplacement des machines accidentellement détruites par une telle mise à jour moins coûteux que le risque de perdre le maché français des calculatrices graphiques, le 2ème ou 3ème au monde à notre connaissance en terme de volume

Avec la possibilité désormais de modifier le système comme on veut sur toutes les TI-83 Premium CE assemblées jusqu'en mai 2019, la tenue apaisée des examens 2021 avec calculatrice nous semble aujourd'hui fortement compromise, à peine une semaine après la rentrée.

Ce n'est certes pas une possibilité exceptionnelle ni scandaleuse. Modifier le système d'exploitation de sa calculatrice :
  • était déjà faisable sur les calculatrices Casio Graph 35+E / 35+E II / 75+E / 90+E et fx-CP400+E bien que la manipulation soit technique et pas vraiment documentée publiquement
  • était déjà réalisable chez NumWorks de façon officielle et bien plus accessible
Quelle différence alors ? Nous y venons de suite en conclusion.

Texas Instruments avait la chance exclusive contrairement aux autres constructeurs de disposer d'une communauté non enseignante interconnectée tout autour de la planète, avec une communication régulière contre les attaques ciblant la sécurité ou pire le mode examen, mettant en avant l'argument que tout-le-monde serait puni en cas de sortie d'un outil en ce genre. La communauté faisait elle-même sa propre police, tapant sur les doigts de ceux qui se permettaient des écarts, et avec efficacité puisque depuis l'annonce du mode examen en 2015 ce dernier n'avait fait l'objet d'aucune attaque sur les calculatrices Texas Instruments. On ne peut pas en dire autant de la concurrence particulièrement en 2019-2020, même si une certaine personne n'est heureusement pas tombée dessus pour en faire une vidéo publicitaire, conduisant à la disparition naturelle des outils hostiles en question.

L'argument que nous avions coutume d'opposer n'est donc plus valable aujourd'hui, nous avons tous déjà été punis pour ce que nous n'avons même pas fait. :mj:

Texas Instruments a tout gâché en seulement quelques mois, arrivant à écœurer nombre de fans 'bricoleurs' qu'une certaine concurrence accueille à bras ouverts, et si des attaques contre le mode examen doivent sortir il nous semble aujourd'hui hautement plus probable que ce soit chez Texas Instruments que chez la concurrence. Que ce soit en exploitant arTIfiCE, Cauldron, ou même autre chose.

Nous déplorons la situation, mais au vu des éléments précédents nous ne pouvons pas rejeter le fait que Texas Instruments a lourdement cherché la chose.

Il ne faut pas vendre la peau de l'ours avant de l'avoir tué.
Peut-être y a-t-il eu chez Texas Instruments un excès de confiance suite à l'apparente éradication de Ndless... Le constructeur devrait au minimum revoir sa communication pour être davantage compatible/inclusive, et envoyer un signal fort d'apaisement...
Sinon, avec des attaques aussi graves publiées dès la rentrée, où en serons-nous d'ici les examens 2021 avec la poursuite d'une telle escalade ?...

C'est quoi qui va sortir demain maintenant ?...

En aucun cas un outil de fraude ne sera hébergé chez nous ni n'y fera l'objet d'une quelconque aide, car nous protégeons les candidats qui en seraient les premières victimes si jamais ils se faisaient attraper, y compris contre eux-mêmes. :#non#:

D'ailleurs rien à voir avec la fraude, mais dans l'immédiat nous te déconseillons l'utilisation de Cauldron. /!
L'outil nous semble avoir été codé rapidement de façon assez brouillon, ne dispose même pas d'interface aidant à son utilisation, et n'a fait l'objet que de peu de tests pour le moment.
La reprogrammation du Boot est une opération extrêmement dangereuse, toute erreur pendant une reprogrammation rendra ta calculatrice définitivement inutilisable.
Nous ignorons pour le moment le comportement de Cauldron dans nombre de cas particuliers : batterie déchargée, version Boot inconnue, version Boot déjà patchée...


Téléchargements :
  • Cauldron (publication initiale, semble désormais indisponible)
  • Cauldron (fork en cours d'amélioration par TheMachine02)

Sources :
  1. https://www.cemetech.net/forum/viewtopic.php?p=287750#287750
  2. https://tiplanet.org/forum/viewtopic.php?t=23858&p=255666#p255666

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 15:06
by edgar13
Juste excellent! :#top#: :#top#: :8):

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 15:32
by cent20
C'est la panique chez TI ...

Image

A force d’énerver les développeurs, il finira par apparaître sur le net une ROM qui permet à la calculatrice de clignoter, donc de simuler le mode examen sans que celui-ci ne soit effectif... ça sera alors clairement de la triche de passer un examen avec une telle ROM et les calculatrices pourraient finir par ne plus être autorisées...

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 15:44
by critor
cent20 wrote:A force d’énerver les développeurs, il finira par apparaître sur le net une ROM qui permet à la calculatrice de clignoter, donc de simuler le mode examen sans que celui-ci ne soit effectif... ça sera alors clairement de la triche de passer un examen avec une telle ROM et les calculatrices pourraient finir par ne plus être autorisées...

Ce n'est clairement dans l'intérêt de personne.
Peut-être pour ça que la publication de ce matin ne s'attaque pas directement au mode examen comme je le craignais hier.

Après, on verra si il sort encore autre chose d'ici demain matin... visiblement, certain(s) ont passé tout l'été à préparer leur coup et doivent faire la fête là...
Ils vont avoir une chouette semaine chez TI, mais franchement ils l'ont bien cherchée.

Toutes leurs communications provocantes ont été relevées sur des pages et des pages :
https://www.cemetech.net/forum/viewtopic.php?t=16645
https://www.cemetech.net/forum/viewtopic.php?t=16652
https://www.youtube.com/watch?v=dSkN0aMswXs

Je ne sais même pas si ils se sont rendus compte de l'accumulation colossale ainsi ajoutée à l'injustice initiale, particulièrement dans le contexte de jeunes davantage sensibles à l'injustice que les adultes.
Ils ont je trouve une communication assez formelle et exclusive (un peu comme Casio), ciblant essentiellement les enseignants, contrairement à NumWorks qui se montre inclusif avec le public non enseignant : lycéens, bricoleurs/bidouilleurs, développeurs et ingénieurs.

Donc à un public enseignant non technicien qui n'y comprend rien à 90%+, pour simplifier on dit que suite à la vidéo d'alerte on a corrigé le problème en bloquant l'asm.
Alors que le problème était déjà corrigé, et que l'asm codé par des tiers n'avait strictement rien à voir avec un bug dans un menu officiel codé par TI.
En attendant auprès du public concerné, ça déplace donc la faute sur le dos des tiers en question. Très sympa...

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 15:50
by Lephe
Je voudrais seconder Critor sur juste un point, délivrer des coups au constructeur qui est de mauvaise fois avec la communauté est justifié, mais il ne faut surtout pas faciliter la triche aux examens dans le procédé. Il est évident qu'un problème de mode examen est à l'origine de toute cette histoire, il serait sage de ne pas en créer d'autres.

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 15:59
by Lionel Debroux
Sacrée époque, en effet. Quand j'avais essayé d'expliquer les méfaits de la fermeture au management de TI il y a des années, en prenant l'exemple bien connu de la PS3, c'est à ce genre d'attaques dévastatrices que je pensais, même si je ne pouvais pas savoir que précisément, les 83PCE non EP / 84+CE < HW M auraient une telle faille :)
D'ailleurs, qu'est-ce qu'ils ont foutu ? D'après J89hw.txt, sur les chips de Flash des TI-68k, il fallait faire une intervention hardware pour pouvoir (re)programmer le secteur de boot...

Il ne fallait fermer les TI-eZ80 sous aucun prétexte... maintenant, puisqu'on peut manifestement faire sauter la validation de signature, la conséquence est que des années de machines plus anciennes sont libérées. Vivent les OS arbitraires.

A force d’énerver les développeurs, il finira par apparaître sur le net une ROM qui permet à la calculatrice de clignoter, donc de simuler le mode examen sans que celui-ci ne soit effectif... ça sera alors clairement de la triche de passer un examen avec une telle ROM et les calculatrices pourraient finir par ne plus être autorisées...

Pour les 83PCE non EP et les 84+CE < HW M, la fonctionnalité de Cauldron représente probablement la pierre angulaire de la fourniture d'un OS dans lequel le mode examen a été trafiqué (c'est probablement assez facile...), le moteur de calcul exact des 83PCE a été ajouté sur 84+CE (c'est beaucoup plus de boulot, mais ça méconterait extrêmement les réglementateurs d'examens dans certains pays !), un MicroPython ciblant l'eZ80 a été intégré (il faut se coller le portage de MicroPython pour eZ80, mais ça devrait finir par être faisable grâce à la toolchain LLVM, et être probablement plus facile que d'ajouter un moteur de calcul exact !), ou des combinaisons arbitraires de modifications ont été apportées.
D'ailleurs, techniquement, toujours grâce à la toolchain LLVM, on pourrait imaginer un amusant portage d'Epsilon / Omega sur TI-eZ80, même s'il faudrait y mettre également beaucoup d'huile de coude.

Cependant, c'est beaucoup trop tôt dans l'année pour publier un OS qui attaque ouvertement le fonctionnement du mode examen, il faut faire ça vers mai 2021. Peut-être qu'à ce moment-là, en France, il n'y aura plus d'examen du bac en présentiel (nouvelle étape de l'intégration supplémentaire de l'inégalité dans le bac, après le mode examen il y a des années); mais il y a d'autres pays :)

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 16:16
by critor
Lionel Debroux wrote:Il ne fallait fermer les TI-eZ80 sous aucun prétexte... maintenant, puisqu'on peut manifestement faire sauter la validation de signature, la conséquence est que des années de machines plus anciennes sont libérées.

Il me semble clair que puisque Cauldron fait déjà sauter la validation de signature 1024 bits au démarrage de l'OS pour les machines équipées d'un Boot 5.3.1, il devrait tout autant être possible de faire sauter la validation de signature 2048 bits à l'installation de l'OS.

Je ne savais pas pour la faille (hardware ?) permettant l'écriture dans le Boot.
Mais quand on laisse passer de telles failles (celle du mode examen en était une autre), on évite de se mettre les gens compétents de bonne volonté à dos...

Dans un sens l'altération du Boot est sans doute bien pire en terme de sécurité, qu'une attaque contre le mode examen.
Car cela permet absolument tout et n'importe quoi à partir de maintenant comme tu le dis :
  • OS 83PCE/84+CE avec mode examen trafiqué
  • OS 83PCE/84+CE avec MicroPython intégré
  • OS 83PCE avec calcul exact QPiRac installé sur 84+CE
  • OS 83PCE/84+CE intégrant KhiCAS
  • ...
Notons que l'altération ou remplacement de l'OS/firmware c'était déjà possible sur NumWorks et Casio Graph, même si il n'y a eu que deux brebis galeuses pour publier des trucs l'exploitant à des fins malveillantes en 2019-2020.

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 16:26
by Lionel Debroux
OS 83PCE/84+CE intégrant KhiCAS

Ca, c'est encore beaucoup plus difficile que les autres éléments que j'ai cités, et je doute même que ce soit réalisable dans des conditions acceptables de fonctionnalité, ce qui réduit d'autant l'intérêt d'essayer d'y passer beaucoup de temps.
L'eZ80 n'est pas fait pour les opérations 32 bits, donc le code utilisant des entiers 32 bits est tout sauf compact; or, les TI-eZ80 n'ont que 4 MB de Flash, et sur plate-formes 32 bits:
* un build acceptable de KhiCAS fait facilement 3 MB;
* on sait bien, avec les Graph 90+E / fx-CG50, qu'on peut faire un build en 2 MB... mais les fonctionnalités ont été sabrées pour rentrer l'OS au chausse-pieds dans ces 2 MB.

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 17:05
by parisse
Lionel Debroux wrote:
OS 83PCE/84+CE intégrant KhiCAS

Ca, c'est encore beaucoup plus difficile que les autres éléments que j'ai cités, et je doute même que ce soit réalisable dans des conditions acceptables de fonctionnalité, ce qui réduit d'autant l'intérêt d'essayer d'y passer beaucoup de temps.
L'eZ80 n'est pas fait pour les opérations 32 bits, donc le code utilisant des entiers 32 bits est tout sauf compact; or, les TI-eZ80 n'ont que 4 MB de Flash, et sur plate-formes 32 bits:
* un build acceptable de KhiCAS fait facilement 3 MB;
* on sait bien, avec les Graph 90+E / fx-CG50, qu'on peut faire un build en 2 MB... mais les fonctionnalités ont été sabrées pour rentrer l'OS au chausse-pieds dans ces 2 MB.

Je ne pense pas que les fonctionnalites enlevees soient genantes dans un contexte scolaire/etudiant, en tout cas a la fac de Grenoble on prete des Casio Graph 90 avec KhiCAS en parcours physique/meca et ca repond aux attentes. Je pense qu'avec 0.5M supplementaires, on pourrait porter l'UI de la nspire/numworks et l'interpreteur MicroPython avec les modules specifiques KhiCAS. Par contre je n'ai aucune idee de la compacite du code vs le code sur processeur sh des Casio. Et puis surtout, il faudrait une toolchain compatible (avec newlib et libstdc++) et un environnement de developpement.

Re: Cauldron Boot patcher: contrôle définitif OS 83PCE/84+CE

Unread postPosted: 08 Sep 2020, 17:09
by Adriweb
On rappelle que sur CE, le stack fait 4 Ko et le heap fait 69 Ko....