ONCFLeak: le hacker réplique au démenti de l’Office des chemins de fer

Suite aux révélations du Desk, le 17 octobre, de fuites de données sur les retards de trains, confirmées deux jours plus tard par la mise en ligne d’un site interactif qui traque la ponctualité de l’ensemble du trafic de l’ONCF, l’Office a publié via l’agence officielle MAP un démenti qualifiant ces informations « d’allégations (…) mensongères et dénuées de tout fondement » tout en prétendant qu’il s’agit de « données fabriquées visant à semer la zizanie et à induire l’opinion publique en erreur dans la conjoncture actuelle » .
Dans son communiqué daté du 20 octobre, l’ONCF a affirmé, « n’avoir enregistré aucune infiltration de ses portails électroniques ou de ses données informatiques », soulignant que le lanceur d’alerte anonyme « avait collecté certaines données à partir de l’application électronique ONCF Trafic, accessible au grand public pour consulter le trafic des trains, avant de les falsifier pour des fins diffamatoires et calomnieuses ».
Le hacker partage en bonus toute la dataset d'Oncf.tk
L’Office précisait que « les données précises et exactes relatives au trafic des trains sont fournies de manière transparente et instantanée sur les canaux de communication de l’ONCF (applications et écrans de gares) » et menaçait « d’engager les actions nécessaires auprès des autorités judiciaires compétentes ».
Aujourd’hui, le hacker réplique au démenti de l’ONCF en livrant des informations détaillées sur la méthode qu’il a utilisée pour percer le serveur où son logées et traitées ces données assortie d'un guide pratique pour colmater la brèche.
« Je partage avec vous ici toute la dataset (à télécharger ici, ndlr) utilisée pour le site oncf.tk, et la procédure que j'ai utilisée pour récupérer les données, et comment vous pouvez les reconstituer chez vous », annonce-t-il sur le site-même où il les affiche au public. Et pour enfoncer le clou, il propose aux internautes « des exemples d'exercices que vous pouvez faire avec les données ».
Il explique ainsi avoir analysé « les données entre l'application ONCF Trafic et le serveur backend de l'ONCF ». « L'application était inexploitable, je me suis penché sur le serveur », avance-il, relatant sa « surprise (…) que ce soit si facile ».
Des failles de sécurité à la pelle qu'il propose de corriger
Il aurait ainsi, selon ses dires, découvert que « la communication avec le serveur est non cryptée, et que aussi l'application mobile utilise un seul token (une sorte de clé) pour y accéder ». En clair, assure-t-il, « l'ONCF n'assigne pas un token pour chaque utilisateur, et ne dispose d’aucune manière de suivre chaque utilisateur ».
« Très bonne nouvelle ! », écrit-il, manifestement satisfait de sa trouvaille. « J'ai appris plus tard qu'il y avait beaucoup de personnes qui sont arrivées au même résultat, et qui ont même créé des outils sur Github (une plateforme qui permet aux développeurs de stocker et de partager, publiquement ou non, le code qu’ils créent, ndlr) ».
« Ma deuxième surprise était que l'ONCF calcule le retard des trains à la seconde », poursuit-il. « Comment il peut y avoir autant de retard si le calcul se fait a la seconde ? Et pourquoi ils vont envoyer cette info si elle n'est pas affichée par l'application ? », s’interroge-t-il, avant de détailler comment il a élaboré « un script rapide en code Python », permettant d’abord « de récupérer la liste des gares contenues dans le serveur », pour ensuite « faire un scrapping (extraction de données, ndlr), gare par gare et les enregistrer telles qu’elles sont dans la base de données ».
Enfin, grand seigneur, le hacker a listé « les failles de sécurité et les erreurs commises par l’ONCF » et propose même une liste d’actions pour « les corriger », avant d'inciter les internautes « les plus aventuriers », à s'adonner à une série d’exercices pour le moins utilitaires permettant à chacun de constater la moyenne des retards par train, de comparer « en minutes » ces retards avec ceux constatés par les chemins de fer japonais par exemple, la géolocalisation des trains en circulation, ou encore la récurrence de leurs pannes…