FORMATION

  • 2023, 2024

    Licence Informatique - Développeur

    À La Joliverie (Saint-Sébastien-sur-Loire)

  • 2021, 2023

    BTS - Services informatiques aux organisations

    À La Joliverie (Saint-Sébastien-sur-Loire)

  • 2020, 2021

    BAC - STI2D (Sciences et technologies de l'industrie et du développement durable)

    Option SIN (Système d’Information et Numérique)
    À Jean-Perrin (Rezé)

Certification

thumbnail

Pix

P-8RQC23RD

thumbnail

Pix

P-V2JC4RW7

thumbnail

SecNumacadémie : se former à la sécurité informatique

thumbnail

Cybersecurity Fundamentals

thumbnail

pathway-introtocyber

THM-KE8T2DOTJK

COMPÉTENCES INFORMATIQUES

Langages

Python

J'utilise quotidiennement Python et voici les librairies que j'utilise pour mes différents projets Python :

OS, Sys, Time, Flask, Tkinter, Requests, Datetime, BeautifulSoup, PIL (Pillow), Json, NumPy, OpenCV, Random, Discord, Logging, Pyaudio, Selenium, Threading, Subprocess, Websockets, Pytesseract (OCR), Configparser, NLTK, Keras, Base64, OpenAI, Pandas, Pynput, Winreg, Asyncio, Pystray, PyTorch, Zipfile, Win32gui, Pyautogui, Matplotlib, TensorFlow, Scikit-learn

Vous pouvez retrouver certains projets sur mon GitHub

Java

Expérience approfondie en Java, développement d'applications Android en utilisant Android Studio. Maîtrise de la conception d'interfaces graphiques attrayantes et de la connexion à des bases de données pour une fonctionnalité complète. J'ai également une solide expérience d'un an en développement backend avec Spring Boot.

HTML

Maîtrise des balises HTML essentielles et compétence avérée dans leur utilisation adéquate pour créer des sites web structurés.

CSS

Compétences de base en CSS, continuellement renforcées grâce à une exploration constante des ressources en ligne.

JavaScript

Maîtrise du JavaScript côté navigateur web permettant d'extraire des données d'un site, de développer des extensions et de manipuler du code HTML.

TypeScript

Maîtrise du TypeScript avec le framework Angular

PHP

Maîtrise des concepts fondamentaux de PHP, ainsi qu'une connaissance approfondie des failles potentielles du langage et des techniques pour les corriger.

Arduino

Compétences en Arduino comprenant le contrôle de servomoteurs, de LED et de boutons, ainsi qu'une expérience en électronique. J'ai également programmé des afficheurs et je possède une solide compréhension des bases de la programmation.

MySQL

Je possède une expertise en SQL comprenant la maîtrise des injections SQL ainsi qu'une solide maîtrise des fonctions essentielles de SQL.

Angular

Un an d'expérience en Angular durant mon alternance, où j'ai développé des applications web dynamiques et intégrées avec des API backend.

NodeJS

Expérience en Node.js avec du développement backend et la création de scripts d'automatisation.

Spring Tools

Expérience acquise lors de mon alternance en modification d'applications Java Spring et en création de tests unitaires. Compétences de base dans l'utilisation de Spring Tools.

C++

Je suis en cours d'apprentissage du langage C++

COBOL

Je suis en cours d'apprentissage du langage COBOL

Ada

Une fois que j'aurai acquis de bonnes bases en COBOL, je me lancerai dans l'apprentissage du langage Ada.

Outils

VSCode

Utilisation quotidienne avec expertise avancée. Intégration d'extensions comme SonarLint pour maintenir la qualité du code.

Grafana

Expérience approfondie lors de mon stage, avec la création de graphiques et d'indicateurs à partir de requêtes Prometheus, intégrant des données provenant de files RabbitMQ.

Android Studio

Utilisation lors de cours pour développer une application en Java. Compétences de base, notamment dans la navigation dans l'explorateur de fichiers, le lancement d'émulateur, et le débogage. Cependant, une compréhension limitée de l'interface et des paramètres de l'IDE.

Jira

Utilisation régulière pour la gestion des tickets assignés, création et attribution de tickets, ainsi que la modification de leur statut. Capacité à créer des workflows personnalisés avec différents droits et à générer des tableaux pour une vue d'ensemble.

Git

Une utilisation quotidienne avec une expertise marquée dans les commandes fondamentales telles que clone, add, commit, pull, push et merge. J'ai également recours de manière occasionnelle aux commandes reset et rebase pour des exigences spécifiques.

GitHub

Expérience solide avec GitHub, couvrant divers aspects de la gestion de code, des fusions, des modifications de code, de la création de projets, etc.

GitLab

Compétences solides dans l'utilisation de GitLab, couvrant les aspects essentiels de la gestion de code, des fusions, du suivi des statuts, du redémarrage des pipelines, de la création de projets, etc.

RabbitMQ

Compréhension de base du fonctionnement de RabbitMQ, incluant la création de requêtes Prometheus via des queues RabbitMQ. Connaissances limitées dans la création et la gestion de queues RabbitMQ.

Eclipse

IDE utilisé tout au long de mon alternance pour développer des applications Java Spring Boot.

NetBeans

IDE utilisé tout au long de mon BTS pour développer des applications Java.

XAMPP

Utilisé pour configurer un environnement de développement local, notamment pour tester des applications web et gérer des bases de données MySQL.

Postman

Utilisé pour tester et déboguer des API, facilitant la vérification des requêtes et des réponses lors du développement.

Wireshark

Utilisé pour analyser et déboguer le trafic réseau, ce qui m'a permis de m'entraîner pour ma formation en cybersécurité et d'acquérir une compréhension approfondie des protocoles et de la sécurité des réseaux.

IDA

Utilisé pour l'analyse statique de code binaire afin de m'entraîner au reverse engineering.

Drawio

Utilisé pour créer des diagrammes et des schémas, facilitant la visualisation et la documentation des processus et des architectures.

SolidWorks

Utilisé pour concevoir et modéliser des pièces en 3D, facilitant la création de prototypes et la préparation de modèles pour l'impression 3D.

VEGAS Pro 17

Utilisé pour le montage vidéo et le tracking, avec une compétence dans la création de contenus visuels et l'amélioration de la qualité vidéo.

VMWare

Utilisé pour créer et gérer des environnements virtuels, facilitant le test et le développement dans des systèmes d'exploitation isolés.

OS (Système d'exploitation)

Windows 10

Système d'exploitation principal, je l'utilise quotidiennement

Windows 11

Système d'exploitation secondaire, je l'utilise principalement en entreprise

Windows CE7

Utilisé lors de la modification de l'autoradio de ma voiture (Hyundai i20 gen2)

Kali

Utilisé sur VMware quand j'utilise des outils Linux

Fedora

Fedora (sponsorisée par l'entreprise Red Hat) utilisé lors de mon BTS SIO

Ubuntu

Employé lors de mes débuts dans l’apprentissage du système Linux

Debian

Utilisé sur Raspberry Pi pour l’exécution de scripts Python d’automatisation

CYBERSÉCURITÉ

Outils

thumbnail

Hydra

thumbnail

Nmap

thumbnail

Netcat

thumbnail

Hashcat

thumbnail

Wireshark

thumbnail

Metasploit

thumbnail

Binwalk

thumbnail

Aircrack-Ng

thumbnail

Sherlock

thumbnail

Sqlmap

thumbnail

John

430885

Rank

21

Rooms Complete

5

Level

3

Badges

Webbed

Understands how the world wide web works

common: 26.7%

cat linux.txt

Being competent in Linux

common: 37.4%

Hash Cracker

Cracking all those hashes

rare: 5.9%

HTTP in Detail

Easy

Learn about how you request content from a web server using the HTTP protocol

DNS in Detail

Easy

Learn how DNS works and how it helps you access internet services.

Nmap

Easy

An in depth look at scanning with Nmap, a powerful network scanning tool.

Offensive Security Intro

Easy

Hack your first website (legally in a safe environment) and experience an ethical hacker's job.

Web Application Security

Easy

Learn about web applications and explore some of their common security issues.

Intro to Digital Forensics

Easy

Learn about digital forensics and related processes and experiment with a practical example.

Defensive Security Intro

Easy

Introducing defensive security and related topics, such as Threat Intelligence, SOC, DFIR, Malware Analysis, and SIEM.

Careers in Cyber

Info

Learn about the different careers in cyber security.

Operating System Security

Easy

This room introduces users to operating system security and demonstrates SSH authentication on Linux.

Network Security

Easy

Learn about network security, understand attack methodology, and practice hacking into a target server.

Security Operations

Easy

Learn about Security Operations Center (SOC): its responsibilities, services, and data sources.

Tutorial

Easy

Learn how to use a TryHackMe room to start your upskilling in cyber security.

Starting Out In Cyber Sec

Easy

Learn about the different career paths in Cyber Security and how TryHackMe can help!

Introductory Researching

Easy

A brief introduction to research skills for pentesting.

Linux Fundamentals Part 1

Info

Embark on the journey of learning the fundamentals of Linux. Learn to run some of the first essential commands on an interactive terminal.

Linux Fundamentals Part 2

Info

Continue your learning Linux journey with part two. You will be learning how to log in to a Linux machine using SSH, how to advance your commands, file system interaction.

Linux Fundamentals Part 3

Info

Power-up your Linux skills and get hands-on with some common utilities that you are likely to use day-to-day!

Introductory Networking

Easy

An introduction to networking theory and basic networking tools

Hashing - Crypto 101

Medium

An introduction to Hashing, as part of a series on crypto

John the Ripper: The Basics

Easy

Learn how to use John the Ripper, a powerful and adaptable hash-cracking tool.

Encryption - Crypto 101

Medium

An introduction to encryption, as part of a series on crypto

32816

Rank

42

Challenges Completed

505

Score

Web - Client

Programmation

Cryptanalyse

Stéganographie

Web - Serveur

Cracking

Réaliste

Réseau

App - Script

App - Système

Forensic

EXPÉRIENCES PROFESSIONNELLES

  • 6 Janvier | 11 Juillet, 2025

    CDD Analyste Développeur Flux - Algam (Thouaré-sur-Loire)

    - Modification et maintenance de flux de données (CSV, JSON, SQL)
    - Développement initial d’un module de connexion API
    - Réalisation de tests de sécurité sur un logiciel de gestion des RH

  • 4 Septembre | 30 Août, 2023

    Alternance Licence Développeur - Sodebo (Montaigu-Vendée)

    - Évolution d'un portail applicatif
    (Java Spring Boot pour le backend et Angular pour le frontend)
    - Migration de base de données PostgreSQL vers un nouveau serveur PostgreSQL 16
    (création d'une interface Python pour faciliter la migration)
    - Migration de projets vers un nouveau serveur Kubernetes

  • 3 Janvier | 17 Février, 2023

    Stage 2ème année BTS SIO - Sodebo (Montaigu-Vendée)

    - Création de fichiers de configuration GitLab-CI pour la migration de projets
    - Création d’API via Gravitee
    - Création d’un script Python pour transférer des dépendances
    - Création de requêtes d’alert RabbitMQ sur Prometheus
    - Création de graphiques d’alert RabbitMQ sur Grafana

  • 23 Mai | 25 Juin, 2022

    Stage 1ère année BTS SIO - Sodebo (Montaigu-Vendée)

    - Modification d'application web (pour la production) en Angular
    - Création de matrice de tests sur Squash
    - Création d’interfaces pour un projet de gestion de fournitures sous Angular
    - Réalisation d’un test de sécurité informatique

  • 22 Janvier | 25 Janvier, 2018

    Stage découverte 3ème BTS SIO - Airbus (Bouguenais)

    (Découverte de tous les secteurs)

CENTRES D'INTÉRÊT

Image of hacking

Hacking

Image of robotics

Robotique

Image of badminton

Badminton

Image of LEGO

LEGO

Image of Japan

Japon

PROJETS & RÉALISATIONS

certains paragraphes peuvent contenir plus de détails que d'autres en cliquant dessus

je n'ai pas mis tout ce que j'ai fait pour éviter de trop surcharger la page,
j'ai donc sélectionné les réalisations les plus impactantes et pertinentes pour un potentiel recrutement

Réparation d’un module de communication bloquant

J’ai été sollicité par la Socodep, entreprise spécialisée dans la réparation électronique automobile, pour résoudre un blocage majeur affectant leur module de communication entre le site web et l’ERP. Ce module, indispensable pour permettre aux clients de soumettre leurs demandes de réparation en ligne, était hors service depuis une semaine malgré les tentatives de l’équipe de développement initiale. Après analyse et tests, j’ai identifié en moins de deux heures l’origine du dysfonctionnement : une vérification incorrecte du certificat SSL dans le code PHP du module. Une fois la correction appliquée, le système a été remis en service, permettant à l’entreprise de rétablir son flux de demandes en ligne et d’éviter la perte de clients potentiels.

Identification d’une vulnérabilité majeure dans un outil RH

Lors du développement d’une extension Firefox destinée à l’affichage des heures travaillées dans SmartRH, j’ai identifié une faille critique permettant d’accéder à des données personnelles sensibles via l’annuaire interne. En analysant et en instrumentant le code JavaScript côté client, j’ai mis en évidence que la requête chiffrée pouvait être manipulée pour récupérer des champs non affichés par l’interface (numéro de sécurité sociale, adresse, IBAN, salaires, informations familiales, etc.). J’ai immédiatement signalé la vulnérabilité à ma hiérarchie, permettant à l’éditeur de corriger le problème dans la semaine.Dans le cadre de mon travail chez Algam, j’ai développé une extension Firefox destinée à améliorer l’ergonomie de SmartRH, une application web interne utilisée pour le pointage, la gestion des congés et la consultation/modification d’informations personnelles.
Au cours de ce développement, j’ai découvert une vulnérabilité majeure dans le système d’annuaire de l’application.

En analysant les réponses du serveur lors d’une recherche dans l’annuaire interne, j’ai remarqué la présence de champs non affichés dans l’interface utilisateur. Parmi eux, un identifiant numérique suspect nommé n_ssocial. Des vérifications externes m’ont confirmé qu’il s’agissait d’un numéro de sécurité sociale valide. Ce comportement indiquait que SmartRH renvoyait beaucoup plus d’informations que nécessaire.

Pour comprendre l’origine de la faille, j’ai inspecté la fonction JavaScript responsable de la génération et du chiffrement des requêtes. J’ai alors instrumenté cette fonction via un code personnalisé pour afficher en clair les paramètres envoyés. Cette analyse m’a permis d’identifier les libellés internes correspondant à de nombreuses données personnelles.

J’ai ensuite étendu l’exploration en modifiant la génération de la requête de recherche dans l’annuaire afin qu’elle inclue l’ensemble des libellés sensibles récupérés lors de la consultation de mon propre profil. Cette manipulation a révélé un accès complet, non filtré et non autorisé aux informations personnelles de tous les employés, parmi lesquelles :

- numéro de sécurité sociale,
- IBAN,
- adresse postale,
- numéro de téléphone,
- montant du salaire,
- informations sur les enfants et le conjoint (noms, dates de naissance, numéros de téléphone),
- ainsi que divers documents associés au salarié.

Cette faille permettait, en pratique, à n’importe quel utilisateur authentifié d’accéder à l’ensemble des données RH de l’entreprise.

Conscient de la gravité de la situation, j’ai immédiatement documenté mes découvertes et les ai transmises à mon responsable, afin qu’il puisse les signaler à l’éditeur de SmartRH. Grâce à cette démarche, la faille a été confirmée puis corrigée en moins d’une semaine.

Reverse-engineering et contrôle d’un drone via Python

Développement d’une librairie Python de pilotage autonome d’un drone via reverse-engineering du protocole propriétaire. Analyse du trafic réseau avec Wireshark révélant une communication UDP non sécurisée. Mise en place d’un environnement d’émulation Android, exploitation d’une faille Wi-Fi via désauthentification (Aircrack-ng) et reprise de contrôle du drone depuis Python.Dans un objectif initial de développer une librairie Python permettant de piloter automatiquement un drone grand public, j’ai entrepris de comprendre et d’interagir directement avec son protocole de communication. Le drone pouvait être contrôlé uniquement via sa télécommande ou via une application Android en Wi-Fi, j’ai donc commencé par reproduire cet environnement sur PC grâce à l’émulateur Bluestacks. Une fois l’application installée et le PC connecté au réseau Wi-Fi du drone, j’ai pu vérifier que le contrôle fonctionnait depuis l’ordinateur.

La seconde étape consistait à automatiser totalement ce pilotage en Python. Pour cela, j’ai capturé le trafic réseau entre l’application et le drone à l’aide de Wireshark. L’analyse des paquets m’a révélé que toutes les commandes de contrôle (décollage, rotation, déplacement…) étaient transmises sous forme de trames UDP non chiffrées, rendant le protocole vulnérable à une injection de commandes. J’ai alors développé un script Python capable de reproduire ces trames et de les envoyer en boucle, ce qui m’a permis de prendre le contrôle du drone directement depuis Python.

Pour valider la sécurité du système et comprendre son comportement en situation « adversaire », j’ai poussé l’expérimentation plus loin. J’ai connecté mon téléphone au drone, fait décoller l’appareil à quelques centimètres, puis lancé Kali Linux sur mon PC. À l’aide d’Aircrack-ng, j’ai réalisé une attaque de désauthentification sur le réseau du drone, celui-ci n’autorisant qu’un seul appareil connecté à la fois. Une fois le smartphone expulsé, j’ai immédiatement reconnecté mon PC au réseau et repris le contrôle en Python, démontrant la facilité avec laquelle un tiers pourrait détourner l’appareil.

Ce projet m’a permis de combiner développement Python, analyse réseau, reverse-engineering de protocole, tests de sécurité offensive et exploitation de failles Wi-Fi afin de comprendre en profondeur les mécanismes de pilotage du drone et sa surface d’attaque.

À PROPOS DE MOI

Développeur informatique, passionné depuis l’âge de 12 ans, j'ai progressivement acquis des compétences dans des domaines variés. Je maîtrise plusieurs langages et continue de me former activement en cybersécurité.