A propos de moi
Qui suis-je ?
Section titled “Qui suis-je ?”Je m’appelle Matthias, j’ai actuellement 20 ans, et suis étudiant en 3e année à l’ESGI d’Aix-en-Provence en spécialisation cyber-sécurité.
Je suis en alternance dans l’entreprise Assurea, membre du groupe Meilleurtaux, où j’occupe le poste de “Développeur Junior”. Au quotidien, je participe au développement ‘full-stack’ de notre CRM, et Espace partenaire, en utilisant l’écosystème Symfony. Depuis cette année, mon rôle a évolué pour intégrer une mission de sécurité applicative, me permettant d’auditer et de renforcer le code que je produisais hier.
Pour mon master, j’aspire à changer d’environnement pour renouveler le défi, et aligner mon futur quotidien avec ma nouvelle priorité d’apprentissage qu’est le bas niveau.
Origin Story
Section titled “Origin Story”TLDR ; Mon parcours, initié par la logique de Minecraft, m’a mené à une ambition claire : me spécialiser dans la recherche de vulnérabilités et la sécurité bas niveau. Cette section retrace le chemin que j’ai parcouru de mes débuts en informatique jusqu’à mon choix de spécialisation.
Tout a commencé avec Minecraft
Section titled “Tout a commencé avec Minecraft”Aussi loin que je m’en souvienne, j’ai toujours été fasciné par les systèmes automatisés, techniques et logiques (et aussi les sciences en tout genre, mais nous faisons un focus sur l’informatique ici).
Un des premiers moments où j’ai pu commencer à m’amuser avec l’automatisation est quand vers mes 11 ans, j’ai commencé à jouer à Minecraft.
Au début je m’amusais avec de la redstone (équivalent de l’électricité) à créer des systèmes automatisés comme des passages secrets, fermes automatiques, ou trieurs de ressources.
Puis j’ai découvert les command blocks, qui permettent d’automatiser des commandes du jeu, avec cela, j’ai commencé à créer mes propres minis jeux à l’intérieur du jeu.
J’ai par la suite découvert le modding, et ai installé nombre de mods technique permettant de fabriquer des usines toujours plus impressionnantes.
Premiers pas dans le code
Section titled “Premiers pas dans le code”En grandissant, mon envie de créer de moi-même a grandi, et j’ai cherché comment créer mes propres mods Minecraft (qui ne furent jamais fonctionnel) avant de finalement m’orienter vers la création de jeu complet. J’ai donc installé LE logiciel qui permettait de faire cela facilement à l’époque : Unity
Cela a été ma première expérience de réelle programmation, où j’ai par ailleurs découvert l’Orienté Objet sans même le réaliser, me familiarisant assez tôt avec ce paradigme que j’apprécie beaucoup aujourd’hui. C’est aussi durant cette période que j’ai appris indirectement l’anglais, en me forçant au travers de tutos Unity de Brackeys (et tant d’autres) qui expliquaient bien mieux que tout ce qu’on pouvait trouver en français.
Cybersécurité
Section titled “Cybersécurité”Vers mes 15 ans, j’ai découvert la Série Mr.Robot qui a été mon premier déclencheur d’intérêt pour la cyber. Bien que je ne me sois pas lancé à corps perdu dans les CTFs, c’est à partir de ce moment qu’une période d’apprentissage à démarré et que j’ai fondé une bonne partie des bases d’informatique que j’utilise aujourd’hui. J’ai :
- Installé ma première distribution Linux en dual boot (Kali)
- Appris d’autres langages
- Fait mes premières redirections de port NAT pour me connecter à mon Raspberry Pi depuis l’extérieur
- Découvert et construit une culture via des youtubeurs comme Micode, WakedXY, etc.
Avec la réforme du BAC, en première et terminale, j’ai eu la chance de pouvoir passer 6 heures par semaine en NSI (Numérique et Sciences Informatique), où j’ai pu apprendre de manière plus profonde des sujets que j’avais déjà vu, ou pas :
- Algorithmique : tris, Dijkstra, récursivité, graphes, complexité
- Python : structures de données, modularité
- Réseaux : adresses IP, routage (découverte de RIP et OSPF), requêtes web HTTP
- Bases de données : modèle relationnel et requêtes SQL
- Web : HTML et CSS
Malgré mon autodidactisme, c’est bien ici que j’ai formé une partie de mes connaissances et je suis très reconnaissant à notre excellent professeur M.Fromaget pour sa pédagogie.
Découverte du bas niveau
Section titled “Découverte du bas niveau”C’est en fin d’année de classe de première lors de la période d’un mois où nous n’avions pas cours pour la “préparation à l’oral du bac de Français”, que je suis tombé sur une vidéo de Sebastian Lague intitulé : “Exploring How Computers Work” Cette vidéo (et la suivante nommée “How Do Computers Remember”) m’ont absolument fasciné au plus haut point. Je me suis donc dirigé vers une source citée par Sebastian qui est “From Nand To Tetris”. C’est une formation vidéo qui nous apprend pas à pas comment construire un ordinateur, en partant des portes logiques, fabriquant son propre processeur, système d’exploitation, jusqu’à arriver à Tetris. Cette approche était une révélation pour moi, et j’ai donc passé ce mois, non pas à préparer mon oral, mais à procrastiner productivement en suivant assidûment le cours, créant mon ALU, découvrant un langage d’assembleur, et globalement découvrant une passion pour le fonctionnement réel d’un ordinateur. Je me suis tout de même arrêté une semaine avant mon oral pour réellement essayer de le préparer (et ai fini par avoir 10…). Une fois sortie de cette période, j’ai décroché de la formation, en tant que “pause” temporaire initialement. Cependant, je n’ai jamais vraiment repriorisé cette formation devant les nombreux autres projets personnels que je voulais réaliser, puis les études une fois arrivé dans le supérieur.
Le choix de carrière
Section titled “Le choix de carrière”Bien que je n’ai (pour l’instant) pas continué From Nand To Tetris, c’est lors d’un cours d’assembleur que j’ai eu à mon école en milieu de deuxième année, que j’ai pu retoucher au bas niveau.
C’est à cette occasion que pour l’examen final, j’ai pu réimplémenter SHA-1 “from scratch” en assembleur. Ça a été un projet très gratifiant et qui m’a relancé sur le chemin du bas niveau, mais cette fois dans le contexte où j’avais en tête l’idée de changer d’école à la fin de mon Bachelor (soit un peu plus d’un an et demi plus tard).
Après avoir fait des recherches et découvert les possibilités professionnelles que ces compétences permettaient, le bas niveau n’étaient plus juste un hobby passionnant, mais une évidence pour ma carrière.
C’est à partir de là que mon choix était fait, et que l’histoire de mon choix de spécialité s’achève. Maintenant, il s’agit de concrétiser ce rêve en rejoignant une formation me permettant de l’atteindre, et cette histoire-ci est toujours en train de s’écrire en ce moment même. :)