Comme pour la fraude par modification d'image système, c'est une méthode à laquelle nous n'avions pas pensé initialement mais qui nous a été suggérée par un jeune utilisateur, au départ dans le contexte des calculatrices Casio Graph 35+E et Graph 75+E
Encore une fois, il s'agit d'informer de l'existence du problème bien avant le 3ème trimestre 2017-2018.
Comme déjà expliqué dans l'épisode précédent, on peut en théorie modifier facilement le système d'exploitation des calculatrices Casio Graph 25+E, Graph 35+E, Graph 75+E, fx-CP400+E et HP Prime.
En pratique, ce n'est à ce jour réalisable que sur Casio Graph 35+E, Casio Graph 75+E (outil fxRemote) et HP Prime.
Sur les modèles Texas Instruments, c'est officiellement impossible. L'intégrité du système est validée par une signature 2048-bits qui est absolument impossible à falsifier. Tout système modifié échouera à la vérification de signature et ne sera pas installé/lancé.
En pratique toutefois, rappelons qu'il existe toujours des failles...
Dans l'épisode précédent on se proposait de modifier les images intégrées au système d'exploitation pour y écrire des formules.
En effet, comme ce ne sont pas des données utilisateur mais des données constructeur intégrées au système d'exploitation, elles ne sont pas effacées à l'activation du mode examen.
Mais il y a beaucoup plus simple que les images... il nous suffit de modifier directement les différents textes du système.
Certes, ce n'est pas remplacer un mot par-ci par-là dans un menu qui va faire un formulaire ou un cours... Mais certains modèles ont l'avantage d'afficher de véritables blocs de texte dans certains menus.
Par exemple, tous les modèles Casio Graph disposent désormais dans leur application intégrée LINK d'un menu Mode Examen qui décrit de façon exhaustive avec 3 longs textes défilables comment activer ou désactiver le mode examen ainsi que les restrictions qu'il impose.
En gros avec le mode examen à partir de la version 2.05 du système, Casio a littéralement intégré un lecteur de texte très basique avec un défilement de texte très rapide qui n'existait pas jusqu'alors - un comble et une aubaine pour les fraudeurs !
Avec un simple éditeur hexadécimal, on retrouve par exemple très facilement dans le fichier système le bloc de texte correspondant à l'aide pour la désactivation du mode examen - ce qui fait déjà pas moins de 672 octets de texte remplaçables par tout ce que l'on veut comme illustré ci-contre !
672 octets c'est déjà bien plus de caractères qu'il n'en rentrait sur les images de l'épisode précédent !
Et si ce n'est pas assez, il pourront être complétés par les 184 et 117 octets des blocs texte aidant à l'activation du mode examen et expliquant ses restrictions, ce qui nous donne déjà 973 octets !
Toujours pas assez ? Et bien comme le mode examen autorise gentiment la possibilité de changer de langue, il suffit d'aller également modifier les versions de ces 3 blocs de texte dans les 4 autres langues intégrées à la calculatrice :
Ecran d'aide \ Langue | Français | Anglais | Espagnol | Allemand | Portugais | TOTAL |
Démarrage du mode exam | 184 | 160 | 169 | 192 | 169 | 874 |
Applications en mode exam | 117 | 122 | 113 | 127 | 116 | 595 |
Sortie du mode exam | 672 | 539 | 618 | 732 | 638 | 3199 |
TOTAL | 973 | 821 | 900 | 1051 | 923 | 4668 |
Nous avons donc 4668 octets pour stoquer tout le texte que l'on souhaite pour le mode examen - ce n'est pas mal du tout et déjà plus que ce qu'offraient certains modèles de calculatrices graphiques des années 90 !
En pratique, le candidat modifiant ces textes devra toutefois respecter quelques contraintes techniques :
- Les caractères de retour à la ligne (octet nul) ne doivent pas être écrasés ou supprimés
Autrement dit sur les lignes peu utilisées parce que Casio n'y a mis par exemple qu'un seul mot en tant que titre annonçant le prochain paragraphe, il ne sera pas possible d'y faire rentrer davantage de caractères. - Les caractères spéciaux (accents, symboles...) ne seront souvent pas compris par la calculatrice si tapés directement, et nécessiteront des codes spéciaux sur 2 octets.
Heureusement, c'est en cours de documentation dans le contexte d'un projet Planete Casio. - Dans le bloc de texte concernant la désactivation du mode examen, à la fin il y a quelques lignes mentionnant une désactivation automatique après expiration d'un délai de 12 heures.
Ce texte ne sera pas affiché par les modèles français et ne doit donc pas être utilisé. - Il faudra de plus corriger la somme de contrôle du système, pour que ce dernier soit accepté par la calculatrice.
Mais là encore, il existe déjà des outils la recalculant automatiquement.
Cette manipulation pour Graph 35+E et Graph 75+E est en théorie réalisable de façon similaire sur Graph 25+E et fx-CP400+E, mais aucun outil public ne permet à ce jour d'installer un système modifié sur ces calculatrices.
Nous ne manquerons pas d'informer si jamais la situation venait à évoluer.
Sur la calculatrice HP Prime nous sommes plus que gâtés.
D'une part, la calculatrice offre une aide en ligne extrêmement riche et complète accessible en mode examen, et donc un espace de stockage potentiel absolument phénoménal ! Plusieurs 100aines de fiches défilables sont consultables dans pas moins de 8 langues différentes !
D'autre part, nous avons déjà montré qu'il était parfaitement possible d'installer un système avec du texte modifié.
Niveau contrainte technique, il faudra toutefois savoir que la HP Prime code ses textes au format UTF-16, et qu'ils ne seront donc pas directement lisibles à l'éditeur hexadécimal.
Sur la TI-82 Advanced cela va être rapide. Non seulement le système est protégé contre les modifications par une signature électronique, mais de plus aucun écran/menu n'affiche de bloc de texte et encore moins de bloc de texte défilable. Il n'y a donc de toutes façons rien d'utilisable à modifier par cette méthode.
Sur la TI-83 Premium CE, l'Américain Brandon Wilson a publié dès avril 2015 une photo prouvant qu'il avait réussi à installer un système modifié sur sa calculatrice et donc à contourner les protections. Toutefois, il n'a par la suite et jusqu'à ce jour jamais partagé publiquement la méthode utilisée.
Et même si cela changeait un jour, comme le modèle précédent aucun écran ne présente de bloc de texte.
Sur les TI-Nspire, il y a bien une aide en ligne présentant des blocs de texte défilables, même si elle est beaucoup plus modeste que celle de la HP Prime.
Mais deux contraintes techniques empêcheront jusqu'à preuve du contraire toute modification :
- D'une part le système est protégé contre toute modification par une signature électronique, qu'il est absolument impensable d'espérer pouvoir falsifier à ce jour
- D'autre part, le système est crypté et aucun texte n'y est donc visible à l'éditeur hexadécimal.
Celui souhaitant quand même modifier quelque chose devrait donc déjà être capable de décrypter et recrypter - manipulations pour lesquelles il n'existe à ma connaissance aucun outil public fonctionnel.
Pour résumer, la fraude par modification de textes système est donc possible à ce jour :
- facilement sur toute Casio Graph 35/75+E avec un espace de stockage conséquent (4668 octets)
- avec un peu plus de recherche / réflexion sur toute HP Prime et un espace de stockage tellement énorme qu'il est difficile à chiffrer
Bref, comment les surveillants peuvent-ils détecter la fraude par modification de texte système ?
- Sur les Graph 35+E et Graph 75+E c'est possible, mais le problème est que la vérification est très chronophage :
- Taper
MENU
puis aller dans l'application LINK - Taper
F3
pour aller dans menu Mode Examen - Taper
F2
ouF3
ouF4
pour afficher l'un des 3 blocs de texte d'aide du mode examen. - Défiler le texte jusqu'à la fin avec la flèche vers le bas et vérifier qu'il n'y a pas de données anormales.
- Sortir de cet écran d'aide avec
Exit
puis recommencer en 3) avec le(s) bloc(s) de texte non encore vérifié(s). - Taper
MENU
puis aller dans l'application SYSTEM - Taper
F3
puis choisir une autre langue non encore vérifiée parmi les 5 langues de la calculatrice. - Valider le choix de langue avec
F1
puis recommencer en 1), jusqu'à épuisement des langues.
- Taper
- Sur la HP Prime par contre il n'y aura pas ce problème de temps, puisque c'est de toutes façons impossible à vérifier.
Même sur une épreuve de 4 heures, je doute fortement de la possibilité pour un surveillant prenant la calculatrice de vérifier de façon fiable les 100aines d'écrans d'aide conséquents offerts par la machine, et encore moins dans toutes les langues.
Si le candidat a mis son cours/formulaire par exemple dans la version portugaise de l'aide de la commande BLIT (défilable sur presque 3 écrans), il peut être quasiment certain qu'aucun surveillant ne trouvera, même en 4 heures de recherches.
Si dans l'épisode précédent nous avons démontré que le mode examen était loin de bloquer toutes les données insérées par les candidats et donc non fiable, nous prouvons hélas aujourd'hui que selon la méthode de contournement utilisée par le candidat il pourra même être impossible pour le surveillant de s'en rendre compte par simple vérification individuelle rapide de la machine, nécessitant donc de garder les yeux en permanence sur l'écran de chaque candidat.
Si c'était pour au final en arriver à ça, ce n'était pas la peine de forcer toute une génération à renouveler à neuf et à ses frais tout le parc de calculatrices graphiques français...
A bientôt pour la découverte d'autres failles du mode examen 2018+ et des moyens de les détecter, car c'est hélas très loin d'être fini...