Retour aux projets
PHPTailwind CSSSonarQubeWordPress APIGit

Plugin de Sécurité WordPress - Vigidomaine

Développement d'une extension de sécurité autonome pour WordPress permettant de relier les sites vitrines et e-commerce au moteur d'analyse de Vigidomaine pour la détection proactive du typosquatting. Le plugin intègre une interface d'administration complète et gère la communication sécurisée avec l'API centrale.

Début7 avril 2026
Fin5 juin 2026
RôleDéveloppeur R&D Front-end / Plugin
Thumbnail

Fonctionnalités Principales

Conception d'une architecture logicielle Orientée Objet (POO) avec système d'autoloading dynamique (standard PSR-4) pour garantir l'isolation du code.
Développement d'un algorithme de parsing DNS avancé s'appuyant sur la Public Suffix List (Mozilla) pour la validation et l'extraction fiable des TLD/SLD locaux.
Implémentation d'un système d'invalidation de cache dynamique pour les assets statiques (CSS/JS) lors des mises à jour.
Création d'une interface d'administration moderne et responsive avec Tailwind CSS compilé et encapsulé.
Sécurisation des communications via l'utilisation stricte de requêtes HTTP natives (wp_remote_post/get) et intégration de mesures anti-CSRF (Nonces).

Stack Technique

Back-end
PHPWordPress API
Front-end
Tailwind CSS
Environnement
SonarQube
Autres
Git
Défis

Le cœur de WordPress repose sur une architecture procédurale historique, favorisant les conflits entre extensions (variables globales). De plus, le parsing manuel d'URL complexes (ex: .co.uk) échouait régulièrement avec des expressions régulières simples, générant des faux positifs.

Solutions

Pour isoler le code, j'ai implémenté un système d'espaces de noms (namespaces) strict couplé à un autoloader PSR-4 personnalisé. Pour le parsing d'URL, j'ai intégré et exploité le fichier standard 'public_suffix_list.dat', permettant une décomposition infaillible des noms de domaine avant leur envoi à l'API.

Compétences Universitaires Appliquées

CE1.01

Réaliser en respectant les besoins décrits par le client.

CE1.03

Réaliser en appliquant les principes algorithmiques.

CE3.01

Administrer en sécurisant le système d'information.

CE6.04

Collaborer en developpant une communication efficace et collaborative.