π
<-

Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nlaunch

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nlaunch

Unread postby critor » 26 Aug 2013, 02:06

Depuis des années, la communauté TI-Nspire oeuvre pour l'ouverture de cette plate-forme, c'est-à-dire pour que les utilisateurs puissent exploiter ce matériel au maximum de ses capacités.
For years, the TI-Nspire community has been working for the openness of the TI-Nspire, in order for its users to operate their calculators to their fullest potential.

Ainsi est né Ndless, un canevas permettant d'exécuter des programmes en langage machine prenant le contrôle total de la machine et notamment de ce que fait le processeur.
Voici quelques exemples de programmes compatibles Ndless:
And so was born Ndless, a framework for running assembly programs taking full control of the hardware in particular of the processor.
Some examples of Ndless compatible programs:

1221
  • le jeu 3D FPS nDoom, portage de la série des jeux Doom/Doom2 et compatibles pour ordinateur
    the nDoom 3D FPS game, a port of the Doom/Doom2 and compatible computer games
  • l'émulateur de Nintendo NES
    the Nintendo NES emulator
  • l'émulateur de Nintendo GameBoy Color
    the Nintendo Game Boy Color emulator
  • l'émulateur de Nintendo GameBoy Advance
    the Nintendo Game Boy Advance emulator
  • le lecteur d'images mViewer
    the mViewer image reader
Ndless a existé en plusieurs versions, chacune spécifique à un petit nombre de systèmes TI-Nspire:
Ndless has existed in several versions, each one specific to a single or a small set of TI-Nspire systems:

[tableborder=1]
Version Ndless
Ndless version
Version système TI-Nspire
TI-Nspire system version
1.0/1.11.11.1 prototype
1.1 (prototypes non-CAS)
1.1 (non-CAS prototypes)
1.2 prototype
1.2 (prototypes CAS)
1.2 (CAS prototypes)
1.31.31.41.41.71.72.01.7, 2.0.1, 2.1.03.13.1[/table]
L'absence d'une version transversale de Ndless est due au fait que Ndless n'est pas un programme officiel, et que Texas Instruments le combat activement depuis le système 2.1.
En effet, pour s'installer Ndless exploite des failles du système TI-Nspire. Mais toute faille exploitée se voit alors rapidement ou corrigée ou bloquée par Texas Instruments dans la version suivante du système, ce qui force Ndless à toujours utiliser de nouvelles failles.
The lack of an Ndless cross version is due to the fact that Ndless is not an officially supported program, and Texas Instruments has actively fought it since system 2.1.
Indeed, Ndless installation exploits some flaws in the TI-Nspire system. But any vulnerability exploited then quickly fixed or blocked by Texas Instruments in the next version of the system, forcing Ndless to always use new vulnerabilities.

Il suffit de ne pas mettre à jour son système TI-Nspire, penserez-vous?
Sauf que Texas Instruments incite à la mise à jour du système via nombre de popups automatisées.
De plus, les nouvelles TI-Nspire commercialisées finissent toujours par venir préchargées avec le dernier système - ce n'est donc pas une solution pour les nouveaux utilisateurs.
Do you think you just don't have to update?
Except that Texas Instruments forces the update through various automated popups.
And eventually, all new TI-Nspire will come preloaded with the latest system - it is therefore not a solution for new users.

Il suffit de réinstaller une version antérieure du système, me direz-vous?
C'était en effet possible jusqu'en juillet 2010. A cette date-là, le dernier système 2.1 a activé une protection dormante, prévue dès la conception mais non utilisée jusque là, que nous avons appelée la "protection anti-downgrade du système".
Le système 2.1 ainsi que tous les systèmes ultérieurs depuis, inscrivent dans une zone mémoire non accessible à l'utilisateur et non réinitialisable par aucun menu officiel, une version minimale de système installable.
Tout système antérieur à cette version était systématiquement refusé.
You'll tell me you just have to reinstall an earlier version of the system?
This was indeed possible until July 2010. At that date, the last 2.1 system has activated a protection which was there but disabled since the beginning, something we called the "system anti-downgrade protection".
System 2.1 and all subsequent systems are updating a minimal installable version number in a memory area not accessible to users and non clearable by any official menu.
Any previous version of the system is then rejected.





Consciente de ces problèmes, la communauté a réagi en sortant, parallèlement à Ndless, un autre petit programme, Nlaunch.
La TI-Nspire s'amorce en effet selon trois couches logicielles:
As a solution to those problems, the community did release another little tool, Nlaunch.
The TI-Nspire starts by running three pieces of software:

  • Boot Code 1
  • Boot Code 2
  • système d'exploitation
    operating system
Pour arriver au système d'exploitation, il y a donc deux barrières de sécurité à franchir.
So in order to get to the operating system, there are two safety barriers to be overcome.

Là où Ndless n'exploitait que des failles du système, Nlaunch va plus loin car s'attaquant directement au Boot Code 2, désintégrant ainsi l'une des deux barrières de sécurité.
Mais comme Ndless, Nlaunch est lui aussi spécifique à certaines versions du Boot2:
Where Ndless did only exploit flaws od the system, Nlaunch goes further as directly addressing the Boot Code 2 and overcoming one of both security barriers.
But as Ndless, Nlaunch is also specific to certain versions of the Boot2:

[tableborder=1]
Version Nlaunch
Nlaunch version
Version Boot2 TI-Nspire
TI-Nspire Boot2 version
Nlaunch1.4Nlaunch CX3.1 (TI-Nspire CX)[/table]
Nlaunch permet d'installer et lancer des systèmes d'exploitation en ignorant complètement la version minimale du système, et même de faire cohabiter un système récent avec un ancien système compatible Ndless.
Nlaunch is able to install and run operating systems completely ignoring the minimum version of the system, and even to make a recent system to coexist with an old Ndless compatible system.

Comme pour les systèmes d'exploitation, Texas Instruments a rapidement réagi en incluant une mise à jour du Boot2 TI-Nspire CX dans son dernier système d'exploitation 3.2.4.
Like with operating systems, Texas Instruments quickly responded by including a TI-Nspire CX Boot2 update in its latest 3.2.4 operating system.





La communauté TI-Nspire ne s'en était toutefois pas inquiétée et pensait enfin pouvoir être tranquille:
The TI-Nspire community wasn't worried about that:

  • les utilisateurs actuels devaient simplement faire attention à ne pas mettre à jour leur Boot2 lors de la mise à jour de leur système, grâce au petit utilitaire TNOC
    current TI-Nspire users should simply be careful not to update their Boot2 when updating their system, thanks to the small TNOC tool
  • en cas d'omission de cette manipulation, il était possible de reprogrammer l'ancienne version du Boot2 à l'aide d'une interface TTL/USB dite RS232 peu coûteuse
    in case of omission of this manipulation, it was still possible to reprogram the older Boot2 version using an inexpensive TTL/USB interface (RS232)
  • et les nouveaux acheteurs de TI-Nspire CX préchargées avec les dernières versions pouvaient eux aussi appliquer cette dernière solution
    and owners of new TI-Nspire CX could also apply this last solution




C'était sans compter sur la malice de l'équipe de développement de Texas Instruments...

Nous avons pu confirmer qu'en cas de mise à jour d'une TI-Nspire CX actuelle vers le nouveau Boot2 3.2.4, il était bel et bien possible de réinstaller l'ancien Boot2 3.1 compatible Nlaunch en RS232.

Mais nous n'avions pas testé sur les nouvelles TI-Nspire CX venant préchargées avec les versions 3.2.4 du système et du Boot2...
Et si le Boot2 3.1 se programme sans problème en RS232 sur ces machines, il est tout simplement incapable de s'exécuter correctement sur ces machines! :mj:
This was without counting on the wickedness of the Texas Instruments development team...

We could confirm that when updating a current TI-Nspire CX to the new 3.2.4 Boot2, it was still possible to reinstall the old Nlaunch compatible 3.1 Boot2.

But we hadn't tested this on new TI-Nspire CX coming preloaded with versions 3.2.4 of the system and the Boot2 ...
And although Boot2 3.1 is flashed successfuly through RS232 on these units, it is simply unable to run properly! :mj:

Image Image

Le Boot2 échoue sur une erreur non récupérable (System Error) et la console RS232 nous en apprend un peu plus avec le message "BOOT2 Error: posix_file_init() error".

Il s'agit d'une erreur concernant le système de fichiers. Mais ce dernier est bien évidemment toujours intact, puisque si l'on reprogramme maintenant le Boot2 3.2.4 d'origine, la TI-Nspire CX se remet à fonctionner normalement.

Texas Instruments a donc du changer quelque chose sur ces nouvelles TI-Nspire CX, quelque chose qui visiblement est géré correctement par le nouveau Boot2 3.2.4 mais pas par l'ancien Boot2 3.1.
A ce jour, nous ignorons exactement de quoi il s'agit, bien qu'ayant plusieurs pistes plausibles.

Texas Instruments nous a ainsi inventé une nouvelle protection antidowngrade, la "protection antidowngrade du Boot2". Mais se débrouiller pour faire planter une ancienne version au lieu d'avoir un message d'erreur clair ce n'est pas très classe, c'est même une manipulation assez sale - on nous avait habitué à mieux jusqu'à présent.
The boot2 fails on a non-recoverable error (System Error) and the RS232 console tells us a little more with the "BOOT2 Error: posix_file_init() error".

It's an error that has to do with the file system. But it's obviously still intact, as when flashing back the original 3.2.4 Boot2 the TI-Nspire CX boots successfuly.

So, Texas Instruments did probably change something on the new TI-Nspire CX, something that is managed properly by the new 3.2.4 Boot2 but not the old 3.1 Boot2.
Up to date, we do not know exactly what it is

So basically, Texas Instruments just invented us a new antidowngrade protection, "Boot2 antidowngrade protection". But managing to make its own older version of the code crash instead of giving you a clear and related error message is not very clean from my point of view - it just looks like a dirty hack - we were used to much cleaner protections so far...





Les nouvelles TI-Nspire CX commercialisées à partir de maintenant sont donc entièrement fermées, avec aucun moyen connu d'y installer Ndless ou Nlaunch à ce jour. :mj:

Si vous souhaitiez pouvoir utiliser Ndless ou Nlaunch, nous vous conseillons de renoncer à un tel achat en neuf, et à vous tourner plutôt vers le marché de l'occasion.

En effet, au dos des TI-Nspire CX, à droite de leur numéro de série se trouve ce que l'on appelle le datestamp, un code à 7 caractères.

Les nouvelles TI-Nspire CX bloquant le Boot2 3.1 qui nous ont été signalées à ce jour disposent du datestamp 'P-0313J'.
Cela signifie qu'elles ont été fabriquées dans l'usine TI de code P (Chine), en mars 2013, et qu'elles incluent la révision matérielle J (soit la 11ème version) de la carte mère.

Contrairement au marché du neuf, sur le marché de l'occasion vous serez donc capables de demander au vendeur le datestamp de sa calculatrice, et de n'acheter que des TI-Nspire CX dont le datestamp se termine par une lettre A à I.
In conclusion, the new TI-Nspire CX sold from now on are completely closed, with no known way to install Ndless or Nlaunch up to date. :mj:

If you want to use Ndless or Nlaunch, we'd advise you to give up on purchasing a brand new TI-Nspire CX and to look for it on the second-hand market.

In fact on the back of the TI-Nspire CX, on the right of the serial number, is what is called the datestamp, a 7-character code.

The new TI-Nspire CX crashing Boot2 3.1 which have been reported to us up to date have the datestamp 'P-0313J'.
This means that they were manufactured in the TI factory code P (China) in March 2013, and that they include the hardware revision J (11th version) of the motherboard.

On the second hand market you'll be able to ask the seller the datestamp of the calculator, and to buy only TI-Nspire CX whose datestamp ends with a letter from A to I.





C'est donc un triste jour pour la communauté. Pour la troisième fois, Ndless et tous ses programmes compatibles ont été frappés à mort, et encore plus fort que les fois précédentes. Sauront-t-ils encore se relever cette fois-ci?... :'(
This is a sad day for the community. For the third time, Ndless and all its compatible programs have been beaten to death, and even stronger than the previous times. Will they be able to survive this time? ... :'(
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby SkylarTheFox » 26 Aug 2013, 03:54

Hopefully we can get an exploit to either downgrade the Boot2 or have a native install on 3.2.4 of these new calculators soon!
User avatar
SkylarTheFox
Niveau 0: MI (Membre Inactif)
Niveau 0: MI (Membre Inactif)
Level up: 40%
 
Posts: 1
Joined: 23 Aug 2013, 20:39
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby Lionel Debroux » 26 Aug 2013, 06:21

Besides the usual lackluster interest in the Nspire platforms (on platforms with large user interest, not only the community is stockpiling vulnerabilities in such a way that native code is available in a quasi-uninterrupted fashion, but also, a Linux port is a matter of weeks or months after the initial availability of arbitrary native code execution), the community workforce for pwning the Nspire is probably going to be diluted by the HP Prime, which is both more powerful and less closed (clear-binary software upgrades, etc.).

The good thing for us is that TI EdTech's shenanigans, which show continued blatant disrespect for basic user rights, despite the severe risks for their business model (which were duly explained directly to top-level management), and the new outright attack on Linux, will yield even more resent against TI EdTech than them blocking the vulnerability used by Ndless 3.1 in OS 3.2 (at a time Linux didn't exist)... a move which already produced multiple PTT killer programs (sadly, censored by most community sites), boot1 reflashing on old Clickpads, and most of all, nLaunch and nLaunch CX.

Sice 2011 and my (harmless) OSLauncher, we know that making TI EdTech and standardized exam testing regulation authorities freak out is a matter of releasing a powerful exploit shortly before the exam season. nLaunch CX, this year, was also released before the exam season. I wouldn't be surprised to see something similar next year, perhaps even closer to the exam season.
I keep thinking that they should implement reflashing (boot2, OS) directly in the exam testing room, so that the OS can be tailored to any particular exam restrictions, the prior state of the calculator is irrelevant, and they don't need any kind of PTT or suchlike crap (though they'd be silly enough to keep it, who knows)... one day, they might just not have a choice, and it will cost them a lot. The top-level management was duly warned about that as well.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6865
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby AnToX98 » 26 Aug 2013, 10:14

C'est bien triste en effet... Mais est ce que ce sera de même pour les prochains OS ?
User avatar
AnToX98Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 75.5%
 
Posts: 1022
Images: 15
Joined: 19 May 2013, 16:54
Location: Paris, France
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1ere S

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby critor » 26 Aug 2013, 10:15

C'est-à-dire?
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby AnToX98 » 26 Aug 2013, 10:20

Est-ce que les prochains OS (3.6 par exemple) bloqueront eux aussi le boot 2 ?
User avatar
AnToX98Premium
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 75.5%
 
Posts: 1022
Images: 15
Joined: 19 May 2013, 16:54
Location: Paris, France
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1ere S

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby Adriweb » 26 Aug 2013, 10:22

Il est probable que chaque prochaine version mette la version minimum à sa propre version, oui.
(Ou alors, la version juste d'en dessous comme on l'a vu en 3.2 pour la possibilité de revenir en 3.1, mais c'est vraiment pas sûr....)

Et, le 3.6 requierait d'abord le passage en OS 3.2.4 (et donc le nouveau boot2 3.2.4)
Avec un RS232 sur les CX révisions < J, c'set downgradable. Sur les nouvelles, il faut croire que non :(

Par ailleurs, réflexion globale par rapport au topic :
Ca me fait penser aux histoires en ce moment avec les fuites de la NSA : tout le monde est "outré" des actions de la NSA, mais personne n'est réellement surpris.
Ici, c'est pareil avec TI dans le sens où tout le monde savait bien que TI allait tout faire pour contrer ndless et les autres hacks communautaires, comme celà a été fait pour... chaque mise a jour. (ici, on peut être surpris par la différente, inhabituelle, "protection" (si c'en est bien une et non pas "juste" un effet de bord), mais pas surpris que TI ait réagit)
(Et c'est d'ailleurs pareil pour chaque marque de produits fermés: Apple contre le jailbreak, Sony, etc. Même si c'est derniers ont des raisons beaucoup plus acceptables de contrer le piratage (raisons financières))

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby nikitouzz » 26 Aug 2013, 10:24

Ben surtout que la raison financiere joue en faveur de ndless ici.....

c'est surtout pour etre accepté en mode examens sur lequel il ferais mieux de se concentrer...
Mes records personnels :
2x2x2 : 2.18 secondes / 2x2x2 une main : 21.15 secondes / 2x2x2 yeux bandés : 47.59
3x3x3 : 5.97 secondes / 3x3x3 une main : 49.86 secondes
4x4x4 : 1.49 minutes / 4x4x4 une main : 6.50 minutes
5x5x5 : 4.10 minutes / 5x5x5 une main : 18.02 minutes
6x6x6 : 8.10 minutes
7x7x7 : 16.03 minutes
9x9x9 : 58.26 minutes

megaminx : 5.59 minutes / pyraminx : 7.91 secondes / square-one : 1.07 minutes

Image
User avatar
nikitouzzModo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 42.7%
 
Posts: 1016
Images: 1
Joined: 16 Feb 2012, 18:39
Gender: Male
Calculator(s):
MyCalcs profile
Class: Fac de maths

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby critor » 26 Aug 2013, 10:25

C'est pas l'OS qui bloque le Boot2.
La preuve, on est parfaitement capable de réinstaller le Boot2 3.1 après avoir mis à jour en 3.2.4 sur nos machines actuelles.

Il y a visiblement une spécificité dans le matériel des nouvelles TI-Nspire CX hardware revision J, spécificité gérée par le Boot2 3.2.4 mais pas par la Boot2 3.1.
Donc quelque soit l'OS installé, cette spécificité ne bougera pas...
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.5%
 
Posts: 41980
Images: 15737
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Antidowngrade Boot2 sur nouvelles CX bloque Ndless + Nla

Unread postby Adriweb » 26 Aug 2013, 10:32

Il faudrait donc se procurer une telle machine et pouvoir examiner ce qui a changé, mais ce n'est pas gagné avec justement l'OS et le boot2 3.2.4 ... :(

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Next

Return to News TI-Nspire

Who is online

Users browsing this forum: No registered users and 15 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
866 utilisateurs:
>809 invités
>49 membres
>8 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)