Votre profiler Symfony est-il vraiment coupé en prod ?

Test d'intrusion ciblé de vos applications Symfony : profiler exposé, secrets, injections Doctrine, voters mal câblés. Rapport sous 48 h après la fin des tests.

Symfony

Symfony est solide. Les applications, moins.

Le framework sécurise beaucoup par défaut. Mais un _profiler laissé en production, un APP_SECRET faible, un voter oublié sur une route sensible ou du DQL concaténé suffisent. Les failles Symfony vivent dans votre code et votre configuration, pas dans le framework — je les cherche là où elles vivent.

Symfony 3.4 → 7 API Platform & legacy Twig · Doctrine · Messenger

Ce que couvre l'audit Symfony.

Les classes de failles les plus fréquentes sur une application Symfony réelle, testées à la main sur votre code et vos endpoints. OWASP WSTG + API Top 10, en authentifié comme en non authentifié.

Périmètre testé06 classes de failles
01

Injections Doctrine

DQL / SQL concaténé, requêtes natives, QueryBuilder mal employé

02

Profiler & debug en prod

_profiler / _wdt accessibles, pages d'erreur verbeuses

03

Voters & contrôle d'accès

security.yaml trop permissif, voters absents, hiérarchie de rôles bancale

04

Secrets & APP_SECRET

APP_SECRET faible ou fuité, .env exposé, secrets en dépôt

05

Twig & SSTI

templates dynamiques, |raw imprudents, injection de template

06

API Platform & sérialisation

groupes trop larges, opérations exposées par défaut, désérialisation

Déroulement d'un audit Symfony.

Cadrage, test, rapport, contre-test. Vous savez à tout moment ce qui a été couvert sur votre app Symfony et ce qu'il reste à passer. Prix fixe défini au cadrage.

  1. ~ 1 appel

    Cadrage

    Un court appel, un prix fixe, des règles d'engagement écrites. La stack et le périmètre sont notés ici.

  2. 5–10 jours

    Test

    Exploitation manuelle des classes de failles propres à cette stack, en plus du parcours OWASP complet. Le critique part le jour même.

  3. 48 h

    Rapport

    Chaque faille : criticité, reproduction pas à pas, impact réel, et le correctif au niveau du code. Vos devs corrigent sans me relancer.

  4. gratuit · 30 j

    Contre-test

    Vous patchez, je rejoue chaque faille et délivre l'attestation. Compris dans le forfait.

Quand tester une application Symfony.

Un pentest n'attend pas l'incident. Les déclencheurs récurrents quand une équipe Symfony prend contact.

Avant de signer

  • Un client grand compte exige une preuve de test avant de signer
  • Une levée de fonds et sa due diligence technique approchent

Avant de mettre en ligne

  • Une migration Symfony majeure (5 → 6, 6 → 7) vient d'être livrée
  • Une API Platform expose peut-être plus d'opérations que prévu

Avant d'en répondre

  • Une revue SOC 2 / ISO 27001 réclame un pentest annuel
  • Un doute sur un voter, une route admin ou security.yaml

Questions sur l'audit Symfony.

Les vraies questions d'un premier appel de cadrage sur une application Symfony. Si la vôtre manque, elle a sa réponse en un e-mail.

Quelles versions de Symfony ?

Du legacy 3.4 à Symfony 7, monolithe Twig ou API-first. Le périmètre s'adapte à votre stack réelle.

Testez-vous API Platform ?

Oui. Groupes de sérialisation trop larges, opérations exposées par défaut, filtres et autorisations par ressource : c'est souvent là que ça casse.

Faut-il le code source ?

Utile, pas obligatoire. La boîte grise accélère la revue de security.yaml, des voters et des requêtes Doctrine.

Le framework n'est-il pas déjà sûr ?

Le cœur de Symfony est bien audité. Les failles vivent dans votre code : un voter oublié, un profiler en production, un DQL concaténé. C'est là que je cherche.

Le prix dépend-il de la taille du dépôt ?

Du périmètre exposé, surtout : nombre d'écrans, de rôles et d'endpoints. Un gros dépôt avec trois rôles se teste plus vite qu'un petit dépôt qui en compte douze. Forfait fixe, jamais de TJM, validé avant que je commence.

Et après le déploiement des correctifs ?

Je rejoue chaque faille sur la version patchée et je vous dis laquelle tient et laquelle non. Gratuit, sous 30 jours, puis attestation à jour.

Testez-vous aussi les bundles tiers ?

Oui. EasyAdmin, Sonata, API Platform, les bundles OAuth : ils font partie de la surface exposée et concentrent une bonne part des mauvaises surprises.

Le rapport Symfony,
point par point.

Le correctif nomme le service, le bundle ou la requête Doctrine en cause. Jamais une généralité.

  1. Couverture du rapport de test d'intrusion base16 01 · Couverture
  2. Synthèse exécutive : six vulnérabilités, dont une critique 02 · Synthèse exécutive
  3. Registre des vulnérabilités et méthodologie de test 03 · Registre & méthodo
  4. Fiche de la faille F-01 : accès aux factures d'autres clients, CVSS 9.1 04 · Faille F-01 9.1
  5. Fiche de la faille F-02 : rejeu d'une requête de remboursement, CVSS 8.2 05 · Faille F-02 8.2
  6. Fiche de la faille F-03 : élévation de privilège par mass assignment, CVSS 8.1 06 · Faille F-03 8.1
  7. Contre-test, cadrage et attestation transmissible 07 · Contre-test & attestation

Qui mène votre test.

Saïd, expert en pentest et audit de sécurité

Saïd Mimouni

Pentest & audit de sécurité · applications web & API

Je teste des applications web et des API à la main, en solo, pour des startups et des agences. Vous parlez à la personne qui ouvre le terminal, du premier e-mail au contre-test.

À distance dans la plupart des missions. Si vous voulez l'auditeur sur site, je me déplace partout en France.

Une app Symfony à mettre à l'épreuve ?

Dites-moi la version de Symfony, le périmètre et votre échéance. Je vous réponds sous 24 h ouvrées avec un périmètre et un prix fixe.

Le cadrage passe par un questionnaire de deux minutes.

  • Ce qu'il faut tester : application, API, périmètre.
  • Votre échéance, même approximative.
  • Le contexte, si vous voulez : stack, certification, audit client.