π
<-

bidouillages sur TI-82A : déceler 1 faille ?

Nouveautés, projets, mises à jour.

bidouillages sur TI-82A : déceler 1 faille ?

Message non lude grosged » 16 Déc 2015, 21:10

Je ne sais pas si cela aboutira un jour à quelque chose de concret, mais bon... ça ne coute rien d'essayer ;)
Alors voilà, j'aimerais que l'on partage nos recherches/trouvailles en tout genre au sujet de la TI-82A
(le top serait de déboucher sur une faille, laquelle nous permettrait de lancer du code machine!..utopique?)
De mon côte, après avoir une peu cherché au niveau des tokens (voir http://www.tout82.org/t278-catalogue-et-tokenmaps#5128 )
j'ai commencé à explorer une nouvelle piste:

Au moyen de TILP et d'un éditeur hexa (wxhexeditor), J'ai trituré un peu des fichiers provenant de la TI82A pour ensuite les renvoyer, histoire de la chambouler un peu...
dans l'espoir de trouver une faille...
Voici , pour l'instant le fruit de mes recherches :

1) on sauvegarde une image en lançant un StorePic 0
2) on le transfère sur le pc
3) via un éditeur hexa, on modifie la taille des données à prendre en compte (et non la taille physique du fichier) en la réduisant à 1 octet (en offset 57, transformer F602 en 0100)
4) on réinjecte ce fichier trafiqué (entre-temps , après actualisation, TILP affiche pour l'image une longueur de 246 octets (de données exploitables)
5) toujours depuis TILP, on supprime ce fichier OU on le réinjecte encore 1 fois
6) la TI82A bascule vers ce menu:

Image

à ce stade , on peut bouger avec les flèches haut et bas , mais dès qu'on valide avec [entrer], la TI82A se fige...
Pour sortir de ce menu, on peut faire un reset en faisant [une touche] puis [alpha] (gardé enfoncé) et [la même touche]

à noter qu'il m'est parfois arrivé de déboucher ensuite sur un autre message (au lieu du reset final)
en choisissant [stats] puis [alpha] avec [stats] :

Image
le menu pour (re)charger l' O.S. , suivi quelques secondes plus tard d'un message d'erreur quand l'installation du nouvel O.S. n'a pas marché :
Image

Il m'est aussi arrivé de tomber directement sur cette 2nde partie , en faisant [trace] puis [alpha] avec [trace]

EDIT : y a du nouveau !
les 4 derniers octets du fichier image sont exécutés en tant que code machine, par la TI82A !!!
De plus, il est possible d'étendre cette zone à plus de 4 octets , simplement en modifiant en position (offset) 70 la valeur 16bits (au départ 02F6, 758 en décimal) qui correspond à la taille physique du fichier !!!!
Ainsi, en y écrivant par exemple la valeur 762 en décimal c-à-d 02FA en hexadécimal (octet de poids fort en 1er, donc FA 02) on étend la zone de 4 octets !!! (voir soulignés en marron ces 4 octets ajoutés manuellement via l'éditeur de fichier wxHexEditor)
Dernière édition par grosged le 18 Déc 2015, 20:58, édité 10 fois.
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 32.5%
 
Messages: 776
Images: 92
Inscription: 14 Sep 2011, 12:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude Lionel Debroux » 16 Déc 2015, 22:37

(le top serait de déboucher sur une faille, laquelle nous permettrait de lancer du code machine!..utopique?)

Pas du tout utopique: ça a déjà été fait, et publiquement annoncé, il y a plusieurs mois.
Mais il n'y a probablement pas qu'une façon de parvenir à réaliser l'ACE, et c'est donc très bien que d'autres fassent des travaux en ce sens, en plus de l'exercice d'apprentissage individuel que cela procure :)
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.4%
 
Messages: 6875
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude Epharius » 16 Déc 2015, 22:51

Tout ce que je sais, c'est que Brandon Wilson a trouvé une faille et a réussi à exécuter de l'assembleur sur une Ti-82a, mais qu'il avait gardé la méthode privée. Depuis, cette méthode a été révélée ? Ou quelqu'un d'autre que BW a-t-il trouvé une solution ?
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 8.9%
 
Messages: 1182
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude critor » 16 Déc 2015, 22:57

De toutes façons, la méthode telle que je l'ai vue n'est pas utilisable telle quelle pour le grand public.
Besoin de brancher ta calculatrice à l'ordinateur à chaque fois que tu veux exécuter un programme assembleur, et tu auras très probablement un reset assez rapidement après la fin du programme.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 54.4%
 
Messages: 42493
Images: 17332
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude grosged » 17 Déc 2015, 10:27

Oh oui! C'est le gros problème ce Reset :(

Je poursuis tout de même mes recherches, et j'ai du nouveau ce matin : après vérifications, je peux affirmer que les 4 derniers octets du fichier image trafiqué sont éxecutés en tant que langage machine par la TI !!
En insérant 00 00 18 FC
ce qui correspond à :

loop: NOP
NOP
JR loop:

(c'est-à-dire un programme en boucle qui ne fait rien du tout)

Cela nous donne un écran vierge. La TI ne plante pas, le mini-programme boucle bien sur lui-même car elle répond encore aux touches : en faisant [apps] puis [alpha] avec [apps] on quitte la boucle...et puis...PAF! Un Reset :(

C'est vrai que 4 octets c'est pas énorme, mais ça suffit amplement pour faire un saut ailleurs (par ex vers une zone mémoire contenant une autre image abritant du code machine)
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 32.5%
 
Messages: 776
Images: 92
Inscription: 14 Sep 2011, 12:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude Epharius » 17 Déc 2015, 10:37

Incroyable, bravo pour cette découverte :o
Mais je n'ai pas compris pourquoi ces octets sont exécutés et pas les autres, quelqu'un sait pourquoi ?
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 8.9%
 
Messages: 1182
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude grosged » 17 Déc 2015, 10:45

Pour l'instant, "Mystère et boule de gomme!" :D
J'ai tenté de placé une mini boucle( un JR sur lui-même codé 18FE) un peu partout ailleurs dans le fichier image, sans succès.
Tout ce que je sais, c'est que lorsque la TI-82A reçoit le fichier-'image (trafiqué de sorte que la TI ne lise qu'un octet de donnée) , elle considère ensuite que le fichier fait 246 octets (cf TILP après actualisation) au lieu de la longueur classique de 758 octets. Puis au moment d'effacer ce fichier, je pense que TILP fait bugger la TI , du fait de cet écart de jugement 246 <-> 758 octets

EDIT: je viens de modifier le post initial, je n'avais pas bien expliqué ces notions de taille de données / taille de fichier,
j'espère que c'est maintenant plus clair pour vous ;)
Dernière édition par grosged le 17 Déc 2015, 14:51, édité 1 fois.
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 32.5%
 
Messages: 776
Images: 92
Inscription: 14 Sep 2011, 12:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude grosged » 17 Déc 2015, 12:25

Encore du nouveau ! Nous ne serions plus limité à 4 octets !!!

En position (offset) 70, du fichier-image, on peut lire la valeur hexa 02F6 (codée F6 02) ce qui correspond en décimale à 768 c-à-d la taille physique du fichier !!
j'ai remplacé cette valeur par FA 02 (donc rallonge de 4 octets) puis j'ai manuellement rallongé le fichier de 4 octets
Pour finir, j'ai écrit dans les 8 derniers octets 00 00 00 00 00 00 18 F8
ce qui correspond à :

loop: NOP
NOP
NOP
NOP
NOP
NOP
jr loop:

Hé bien ça marche !!! la TI ne plante pas mais tourne en boucle (écran vierge) !!!
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 32.5%
 
Messages: 776
Images: 92
Inscription: 14 Sep 2011, 12:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude grosged » 17 Déc 2015, 16:52

Bon ! Hé bien j'avoue qu'à ce stade, je ne sais plus trop quoi faire, je me sens bloqué : je n'ai d'expérience en programmation assembleur que sur Amstrad CPC (hou làààà , c'est loin!!) N'ayant aucune connaissance des TI sur le plan hardware/développement Z80, je fais donc appel à vous...
Y aurait-il un (ou des) spécialiste(s) capable(s) de prendre le relais ?
Il est possible de lancer un programme en langage machine, mais comment procéder pour en sortir proprement ? (Sans reset au final)
Le peu que j'ai pu deviner , c'est que l'on doit avoir le programme en "Disable Interrupt" (DI en entête)
Mais après ...mystère !
Il doit bien y avoir un moyen de rétablir la TI dans l'état précédant le lancement du programme asm (je pense aux trucs du genre rétablir la pile, les registres, ... bref! quelques instructions bien placées, mais lesquelles, exactement ?)
J'ai essayé de comprendre l'état au repos , d'une TI, en lançant un émulateur TILEM et scruté un peu les registres en mode debug (TI-83+ émulé) mais je galère un peu...
Au fait, la TI-82A se programme-t-elle comme une TI-84+ ? (mêmes call/Bcall au même endroit,...etc)
Avatar de l’utilisateur
grosgedVIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 32.5%
 
Messages: 776
Images: 92
Inscription: 14 Sep 2011, 12:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: bidouillages sur TI-82A : déceler 1 faille ?

Message non lude critor » 17 Déc 2015, 17:24

Pas mal du tout, grosged ! :bj:
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 54.4%
 
Messages: 42493
Images: 17332
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Suivante

Retourner vers Actualités

Qui est en ligne

Utilisateurs parcourant ce forum: ClaudeBot [spider] et 13 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Ndless for CX 4.5.5 / CX II 6.2.0
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 !
12345
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2114 utilisateurs:
>2102 invités
>6 membres
>6 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)