bloo 2007-08-06 at 08:27pm Je ne suis pas un expert en bidouilles mais j'ai une tite suggestion à vous faire. Bon, j'imagine que quelque part dans la mémoire de la Nspire on doit trouver, mappée, l'image la mémoire de la 84+ émulée avec la même organistation que la 84+ normale. Sachant que l'on peut en ASM lire le contenu de la mémoire sur 84+ on pourrait très bien écrire un progrmme en ASM qui ne s'arrête pas à l'adresse maxi de la 84 mais qui lise au dessus. Si on à la chance que la zone mémoire 84+ se trouve en partie basse, on pourrait très bien accéder au dessus dans la zone Nspire ? Evidemment, je dis ça, mais je suppose que l'émulation 84+ refusera un accès à une adresse supérieure à la dernière adresse mémoire 84+. Qu'en dites vous ?
hwti 2007-08-06 at 08:33pm Je serais surpris qu'il n'aient pas protégé à ce niveau là (surtout avec une MMU)
Que t'as les réponses dans la question.
C'est une très bonne idée, c'est celle qui a marché pour fargo (en gros), mais c'est très probable que les accès mémoire soient filtrés.
Imagine, la nspire a un CPU de modèle ARM.
mais la 84+ a un CPU Z80.
Donc, pour chaque instruction asmz80, la nspire va en fait choisir un cas dans un gros "switch(opcode)" (un ensemble de tests If then else) et exécuter "à la main" (en arm quoi) les opérations nécessaires pour exécuter une instructions asm z80.
C'est donc très facile pour cet émulateur (ca en est un) de vérifer l'adresse demandée.
mais je suis d'accord avec toi, c'est un test à faire, au moins pour être sûrs.
(cross aussi)
(post cross: même sans MMU en fait)
De plus, le Z80 est un processeur à adressage 16 bits, qui fonctionne donc avec des pages. Donc on ne peut pas facilement déborder, ça s'arrête à 0xFFFF parce qu'il n'y a plus de place dans le registre. Et je ne pense pas qu'il soit possible de donner n'importe quoi comme numéro de page.
J'avais déjà essayé de lire un peu partout la mémoire, y compris à des pages n'existant pas sur la 84+, sans succès (mais on pourrait faire un test plus exhaustif).
Franchement je pense que la NSpire alloue 64K de ram (cad le max addressable pour un Z80 sans pagination) pour la 84+ rendant de toute maniere impossible de déborder (a moins d'un enorme bug dans l'émulation)
Donc ça me parais impossible de ce coté la.
Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
moi je dis rien, je sais pas comment marche la 84+. elle a seulement 64k de mem? Y compris le framebuffer et le système de fichiers?
Oui, mais je pense que l'émulateur doit rester une entrée temporaire, afin d'exécuter des codes de test qui permettront de trouver des failles plus pérennes. En effet, le mieux c'est de trouver des failles dans le HW. Si on se limite à l'exploitation d'une faille soft (émulateur), TI la comblera rapidement.
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
Personnellement je cherche plus une faille permettant un romdump qu'une faille tout court pour le moment, puisque l'un permet l'autre.
Dude 2007-08-07 at 02:53pm Je pense a un truc... Si on reste dans le cadre de l'emulateur :
N'y aurait-il pas moyen de faire executer du code ARM par l'emulateur Z80 en faisant executer un code Z80 ?
Ne peut-on pas trouver des similitudes au niveau des instructions ?
C'est peut-etre ce type de plantage ExtendeD que tu as eu...
"De l'Art de faire des Posts qui ne servent a Rien." (c) Ximoon
15:13 @Ximoon - 29-11-2005
"C'est débile ce sondage, une fois de plus Dude, tu ne sers à rien #hehe#" #love# Il est collector celui là ^^
18:56 @Ximoon - 09-10-2010
"Mince Dude sert à quelque chose %) (pas taper :D )" Owii xD #trilove#
C'est théoriquement impossible d'éxecuter du code "natif" dans un emulateur... apres ça va dépend de l'émulateur, mais bon
Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
Il n'est pas impossible qu'il y ait un trap prévu pour exprès, les HPs ont bien ça dans leur émulation Saturn pour accélérer l'émulation. Ça a été trouvé en analysant la ROM Saturn. Donc vu qu'on peut dumper la ROM Z80, on trouve peut-être des trucs intéressants là-dedans?
Ceci dit, ça m'étonnerait quand-même que TI ait mis une faille tellement évidente dans leur système.
Et encore j'ai un gros doute la dessus, vu que ce n'est pas la meme version de la ROM il on pu completement changer la gestion de l'USB au niveua de l'OS 84+ pour utiliser des ports virtuel mappé sur ceux de la NSprire
Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
Non non, celui-ci c'était uniquement pour trouver les pins JTAG, on lui avait donné, je pense pas qu'il ait servi à grand chose après.