AppSec/Product Security - Sécurité Produit & Vulnérabilités

Teclib'
Fleury-sur-Orne, France
18 days ago
Apply on www.welcometothejungle.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours

Tech stack

JavaScript (Programming Language) PHP (Programming Language) Application Programming Interfaces (APIs) Business Logic User Authentication Automation of Tests Burp Suite Code Review Multi-Factor Authentication Lightweight Directory Access Protocols (LDAP) MariaDB MySQL
+17 more
OAuth Open Source Technology Open Web Application Security SQL Databases Symfony Web Applications Eslint Gestionnaire Libre De Parc Informatique (GLPi) Phpunit Cross-Site Scripting (XSS) Vue.js Playwright Npm(Software) Restful APIs Marketplace Static Application Security Testing Dynamic Application Security Testing

Job description

Nous cherchons un profil cybersécurité capable d’entrer dans le code de GLPI, d’en comprendre les flux et d’identifier les chemins permettant de passer d’un comportement normal à une vulnérabilité exploitable.

Le poste est intégré à l’équipe Produit. Il ne s’agit pas d’un poste SOC, GRC ou sécurité du SI interne : ton terrain de jeu est le produit GLPI et son code.

Environnement technique

Tu travailleras directement sur GLPI, une application web open source complexe et fortement intégrée.

La stack repose principalement sur :

  • PHP 8.2+ ;
  • des composants Symfony ;
  • JavaScript / Vue.js ;
  • MySQL / MariaDB, avec un modèle de données de plus de 250 tables ;
  • Composer / npm ;
  • Git / GitHub.

GLPI comporte de nombreuses interfaces avec son environnement : API REST, OAuth2, agents d’inventaire, plugins, Marketplace, services de messagerie et systèmes d’authentification externes, notamment LDAP. __________________

Tu évolueras donc sur une surface applicative importante : authentification, MFA, sessions, API, contrôles d’accès, gestion fine des droits et privilèges, uploads et accès aux documents, traitements de données, plugins, dépendances et interactions avec des systèmes tiers.

Le code comporte également une dimension historique importante. Il faut être capable de naviguer dans une base de code étendue, de comprendre les dépendances entre composants et de suivre un comportement applicatif de bout en bout :

requête HTTP * authentification * contrôles de droits * contrôleur / logique métier * accès BDD * réponse / rendu.

Ce que tu vas chercher

Des comportements qui ne devraient pas être possibles.

Une entrée utilisateur insuffisamment contrôlée.

Un endpoint qui expose davantage qu’il ne devrait.

Un contrôle d’autorisation réalisé trop tard - ou pas au bon endroit.

Une différence de comportement entre l’interface et l’API.

Un objet accessible depuis une entité ou un profil qui ne devrait pas y avoir accès.

Une dépendance vulnérable.

Une chaîne de traitements permettant de transformer plusieurs faiblesses mineures en vulnérabilité exploitable.

Tu travailleras notamment sur des problématiques de XSS, injections SQL, contrôle d’accès, authentification, MFA, élévation de privilèges, exposition de données, accès aux documents, manipulation de fichiers, API et dépendances.

Concrètement

Tu analyses le code et l’architecture applicative avec une lecture orientée attaque.

Tu recherches et qualifies les vulnérabilités.

Tu reproduis un comportement, construis un PoC et identifies précisément ses préconditions.

Tu détermines le périmètre réellement affecté et les scénarios d’exploitation possibles.

Tu qualifies la vulnérabilité en t’appuyant notamment sur CWE, OWASP et CVSS v4.

Tu remontes jusqu’à la cause technique plutôt que de t’arrêter au symptôme.

Puis tu travailles avec les développeurs pour définir une correction qui traite cette cause sans introduire de régression.

La sécurité ne s’arrête donc pas à la découverte de la vulnérabilité : tu suis le sujet jusqu’au correctif et à sa validation.

Ton outillage

Selon le sujet, tu peux travailler avec des outils de :

SAST / SCA / DAST, analyse de dépendances et CVE, tests d’intrusion applicatifs, proxy HTTP type Burp Suite / OWASP ZAP, analyse Composer, revue de code et tests automatisés.

L’environnement de développement GLPI comprend également notamment PHPStan, Psalm, PHPUnit, Playwright et ESLint.

Mais nous ne cherchons pas quelqu’un qui sait simplement lancer des scanners.

Un rapport automatisé est un point de départ.

Ce qui nous intéresse, c’est ta capacité à déterminer pourquoi un comportement est possible, où se situe réellement la faiblesse et comment elle peut être exploitée dans le contexte particulier de GLPI.

Requirements

Tu es à l’aise lorsqu’on te donne accès à une grosse base de code que tu ne connais pas encore.

Face à un comportement étrange, ton réflexe est d’ouvrir le code, de suivre les appels, les objets, les permissions et les données jusqu’à comprendre ce qui se passe réellement.

Tu sais passer d’une requête HTTP à un contrôleur, du contrôleur à la logique métier, puis jusqu’à la requête SQL ou au mécanisme d’autorisation concerné.

Tu sais utiliser un proxy HTTP, modifier une requête, manipuler un token, tester différents niveaux de privilèges, lire du PHP et construire un environnement permettant de reproduire un problème.

Tu comprends les mécanismes d’authentification, d’autorisation, de sessions, d’API et de contrôle d’accès.

Et surtout, tu sais raisonner en chemins d’attaque.

Tu peux partir d’une porte d’entrée relativement banale et tirer le fil jusqu’à identifier les conséquences qu’elle peut avoir ailleurs dans l’application.

Benefits & conditions

  • 1 jours de télétravail par semaine
  • Titres restaurants à 8.10 euros pris en charge à 60%
  • 35 jours de CP
  • Une mutuelle prise en charge à 60%

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.welcometothejungle.com
Prepare application

Good distractions

Loading talks and stories from around this role…