S.01SaaS et startups

Le pentest des SaaS qui livrent chaque semaine et répondent aux questionnaires.

Le questionnaire sécurité de votre client grand compte, votre auditeur ISO 27001 ou SOC 2 et votre comité de direction posent la même question : quelqu'un a-t-il vraiment essayé de casser le produit ? Darkmoon mène un test d'intrusion autonome sur votre application multi-tenant, vos API, vos comptes cloud et vos pipelines, et prouve chaque faille avec la requête qui l'a exploitée. Exécutez le moteur open source dans votre CI, ou commandez une mission managée quand il vous faut un rapport externe produit par des experts.

3
pipelines CI : GitHub Actions, GitLab CI, Jenkins
50
agents IA spécialisés, 142 outils
OTP
espace client sécurisé pour le rapport
Local
option auto-hébergée, modèle chez vous

S.03Technologie et SaaS
Pourquoi un éditeur SaaS est exposé.

Un SaaS concentre les données de tous ses clients derrière une seule base de code, un seul compte cloud et un seul pipeline de déploiement. L'ANSSI a observé en 2025 davantage de compromissions d'environnements cloud et des exfiltrations de données consécutives à la compromission d'un prestataire : pour un éditeur, ce prestataire, c'est vous.

FindingsCVSS
SQL injection9.8
SSRF to metadata9.1
Broken access control8.7
JWT signature bypass7.5
Path traversal6.9

Un bug, tous les tenants

Un contrôle d'autorisation défaillant ou un identifiant d'objet prévisible ne fuit pas un compte, il fuit le compte d'à côté. L'isolation des tenants est la propriété que vos clients supposent acquise et que vos tests automatisés ne prouvent presque jamais.

$darkmoon run --scope identity
→AS-REP roast · 3 accounts
→Kerberoast · svc_sql cracked
→NTLM relay → DCSync
✓Domain Admin, proven

La cadence dépasse la revue

Avec une mise en production hebdomadaire ou quotidienne, l'application couverte par votre dernier pentest n'existe plus. Un rapport annuel décrit un produit remplacé trois sprints plus tôt.

Attack surfaceexposure

Les secrets vivent dans le pipeline

Les runners CI/CD détiennent des identifiants cloud, des clés de signature et des jetons de registre. Un jeton qui fuit ou un rôle IAM trop permissif transforme un job de build en administrateur de votre compte de production.

darkmoon-licence.dmeDocker
LicencePro · annual
Machine code7F3A-…-C21E
Seats1 node
Statussealed ✓

La preuve est devenue un document commercial

Audits ISO 27001 et SOC 2, questionnaires sécurité des grands comptes, clauses de sous-traitance RGPD (article 28) : tous demandent si le produit a été testé et ce qui a été trouvé. Sans rapport, le contrat attend.

S.04Surface d'attaque
La surface d'attaque d'un produit SaaS.

Six familles de systèmes qu'une campagne Darkmoon énumère et attaque sur une pile SaaS, de la page de connexion au runner de build.

Web app / API
Application multi-tenant et API REST ou GraphQL

Autorisations au niveau objet et fonction entre tenants, mass assignment, limites de débit, fonctions d'export et d'import, introspection et batching GraphQL.

SSO / OAuth
Authentification, SSO et flux OAuth

Assertions SAML et OIDC, redirections OAuth et PKCE, fixation de session, liens de réinitialisation et d'invitation, clés d'API et jetons personnels.

AWS / Azure / GCP / OVH
Comptes cloud et IAM

Buckets publics, rôles et comptes de service trop privilégiés, service de métadonnées joignable, consoles d'administration exposées, environnements oubliés chez votre hébergeur.

CI/CD
Pipelines, runners et secrets

Jobs GitLab CI, GitHub Actions ou Jenkins porteurs d'identifiants cloud, workflows déclenchés par merge request, registres d'artefacts, fichiers d'état infrastructure-as-code.

Kubernetes
Clusters et charges de travail

Exposition de l'API server, RBAC, jetons de compte de service montés dans les pods, network policies, ingress controllers, images de conteneurs vulnérables.

Webhooks / LLM
Intégrations tierces et fonctions IA

Webhooks entrants sans vérification de signature, appels sortants ouverts au SSRF, périmètres d'applications OAuth, et fonctions adossées à un LLM testées contre l'OWASP LLM Top 10 (la page /for/ai-developers/ approfondit ce volet, en anglais).

S.05Chemins d'attaque

D'un jeton qui fuit aux données de tous vos clients.

Quatre chaînes que les agents Darkmoon tentent sur une cible SaaS. Chaque étape est exécutée, pas déduite, et la preuve de chaque saut est conservée.

01
Du jeton CI au compte de production

Un jeton de registre ou de cloud commité dans un fichier de pipeline ou affiché dans les logs de build est rejoué contre l'API du cloud ; un rôle trop large le transforme en accès en lecture aux snapshots de la base de production.

Comment fonctionne le moteur

S.06Ce que Darkmoon teste
Ce que Darkmoon teste sur une pile SaaS.

L'orchestrateur distribue les agents spécialisés par surface et conserve la preuve de chaque exploitation ; 142 outils de sécurité s'exécutent derrière une liste blanche imposée à la compilation et le modèle n'a jamais de shell.

web / API
FindingsCVSS
SQL injection9.8
SSRF to metadata9.1
Broken access control8.7
JWT signature bypass7.5
Path traversal6.9

Isolation des tenants et autorisations

Accès inter-tenants sur chaque objet et chaque fonction, élévation de privilèges entre rôles, mass assignment, abus GraphQL. Les failles sont qualifiées EXPLOITED, CONFIRMED ou UNCONFIRMED par une grille adversariale, jamais par un score de probabilité.

AWS, Azure, GCP, k8s
$darkmoon run --scope identity
→AS-REP roast · 3 accounts
→Kerberoast · svc_sql cracked
→NTLM relay → DCSync
✓Domain Admin, proven

Cloud, Kubernetes et CI/CD

Rôles IAM et comptes de service, exposition du stockage, RBAC des clusters et jetons montés, secrets de pipeline et accessibilité des runners, posés sur le graphe d'infrastructure des hôtes, chemins et relations.

SSO, webhooks, LLM
Attack surfaceexposure

Identité, intégrations et endpoints IA

Traitement SAML et OIDC, flux OAuth, signature des webhooks et SSRF, et vos fonctions LLM ou serveurs MCP face à l'OWASP LLM Top 10.

S.07Comment se déroule une mission

De la commande au rapport, en cinq étapes.

Un processus conçu pour être simple côté client et rigoureux côté sécurité.

01
Décrivez votre cible

Un formulaire guidé : type de cible, périmètre et objectifs.

Comment fonctionne le moteur

S.08Preuves et rapport
Des livrables concrets et actionnables.

Pas juste un scan automatisé, un audit structuré, validé et débriefé.

classé
FindingsCVSS
SQL injection9.8
SSRF to metadata9.1
Broken access control8.7
JWT signature bypass7.5
Path traversal6.9

Rapport de pentest détaillé

Vulnérabilités classées par sévérité, preuves techniques, impact business et guidance de remédiation priorisée.

email + OTP
darkmoon-licence.dmeDocker
LicencePro · annual
Machine code7F3A-…-C21E
Seats1 node
Statussealed ✓

Espace client sécurisé

Accès par email et code OTP. Documents contractuels, rapport et échanges centralisés, dispo quand vous voulez.

appel vidéo
Attack surfaceexposure

Réunion de débrief

Un appel vidéo avec un expert pour passer en revue les findings, répondre aux questions et vous guider sur les correctifs.

S.09Où vont vos données
Les données de vos clients restent dans votre cloud.

Pointez Darkmoon sur un tenant de préproduction, ou sur la production sous autorisation signée : la Privacy Gateway tokenise IP, noms d'hôtes, URL, e-mails, identifiants et chemins internes de votre côté avant que quoi que ce soit n'atteigne le modèle, et vous pouvez exécuter tout le moteur sur un LLM local via Ollama ou llama.cpp. Preuves, rapports et graphe d'infrastructure restent sur la machine ou le runner que vous contrôlez ; vers les intégrations, seules des métadonnées sûres quittent l'hôte (sévérité, statut, identifiants, tags MITRE, horodatages), jamais les corps de preuve ni les requêtes brutes.

S.10Contexte réglementaire
Où se situe un éditeur SaaS face au RGPD, à ISO 27001, SOC 2 et NIS2.

Le SaaS n'est pas un secteur listé aux annexes I ou II de NIS2. Les obligations qui atteignent un éditeur viennent de ses auditeurs, des contrats de ses clients et du RGPD, et de NIS2 seulement lorsqu'il est lui-même fournisseur de services cloud, de services gérés ou fournisseur numérique.

ISO 27001 et SOC 2 : une preuve, pas une obligation nommée

Les Trust Services Criteria de l'AICPA (SOC 2) ne nomment aucun test d'intrusion obligatoire, mais les auditeurs en demandent couramment un comme preuve au titre des critères de surveillance et d'exploitation des systèmes ; un auditeur ISO 27001 pose la même question sur la gestion des vulnérabilités techniques. Darkmoon produit un rapport documenté et reproductible que vous remettez à votre auditeur ; son acceptation relève de l'auditeur, et Darkmoon ne certifie pas la conformité.

RGPD articles 28 et 32 : les devoirs du sous-traitant

Un éditeur SaaS est le plus souvent sous-traitant au sens de l'article 28, tenu par contrat de mettre en œuvre les mesures techniques et organisationnelles appropriées de l'article 32 et d'aider ses clients à notifier une violation à la CNIL dans les 72 heures de l'article 33. Un test d'intrusion est l'un des moyens de documenter ces mesures.

NIS2 : concerné seulement comme fournisseur cloud, MSP ou fournisseur numérique

Un éditeur relève de NIS2 au titre de l'annexe I point 8 (fournisseurs de services d'informatique en nuage), de l'annexe I point 9 (fournisseurs de services gérés) ou de l'annexe II point 6 (places de marché en ligne, moteurs de recherche, réseaux sociaux) uniquement si son activité correspond à l'un de ces types et s'il est au moins une moyenne entreprise : 50 salariés ou plus, ou un chiffre d'affaires annuel et un total de bilan supérieurs à 10 M€, outre les cas indépendants de la taille de l'article 2(2) et de l'article 3. Sinon NIS2 l'atteint indirectement : ses clients entités essentielles ou importantes répercutent la mesure de sécurité de la chaîne d'approvisionnement de l'article 21(2)(d) dans leurs contrats.

Synthèse informative, pas un avis juridique : savoir si votre entreprise est un fournisseur cloud, de services gérés ou numérique au sens de NIS2 dépend de votre activité réelle, de votre taille et de l'identification nationale. La loi française de transposition n'est pas en vigueur au 4 octobre 2026 (séance publique à l'Assemblée nationale prévue le 7 octobre 2026). Darkmoon ne certifie pas la conformité.

S.11Cas d'usage
Un SaaS B2B avant son premier audit ISO 27001.

Un éditeur SaaS B2B qui vend à des grands comptes entre dans sa phase de certification ISO 27001 avec plusieurs questionnaires sécurité en attente, dont un client américain qui réclame un pentest récent pour son propre SOC 2. L'équipe clone le moteur Community, le pointe sur un environnement de préproduction peuplé de tenants de test et l'exécute depuis GitLab CI à chaque release ; les failles inter-tenants et IAM sont corrigées et retestées dans les sprints suivants. Avant l'audit, elle commande une mission Pentest on Demand pour que les experts d'ASC-IT mènent le test externe, débriefent les résultats et livrent le rapport dans l'espace client sécurisé.

Résultat

Un rapport avec les failles exploitées, confirmées et non confirmées, les preuves jointes et les correctifs retestés, remis à l'auditeur et joint aux questionnaires clients. Savoir s'il satisfait une exigence donnée relève de l'auditeur ; l'équipe a désormais le test dans son pipeline plutôt que dans son backlog.

S.12Exécutez-le vous-même
Open source, auto-hébergé, sur un modèle local si vous le souhaitez.

L'édition Community est sous GPLv3 : clonez-la, installez-la, pointez-la sur une cible que vous êtes autorisé à tester. Pro ajoute le dashboard, le planificateur, les rapports brandés et l'agent de remédiation. La mission managée reste disponible si vous préférez nous la confier.

S.13Questions fréquentes
Ce qu'un CTO de SaaS demande en premier.

ISO 27001 ou SOC 2 exigent-ils un test d'intrusion ?

Pas nommément : ISO 27001 demande une gestion des vulnérabilités techniques et les Trust Services Criteria de SOC 2 une surveillance et une évaluation des contrôles, en laissant la méthode à l'organisation. En pratique, la plupart des auditeurs demandent un pentest récent comme preuve, et les grands comptes le réclament dans leurs questionnaires. Darkmoon fournit un rapport avec preuve d'exploitation ; savoir s'il satisfait une exigence donnée relève de votre auditeur.

Puis-je remettre le rapport Darkmoon à mon auditeur ou à un client ?

Oui. L'édition Community produit des rapports Markdown et JSON ; Pro ajoute des rapports PDF et web brandés avec CVSS 3.1, MITRE ATT&CK et correspondance ISO 27001. La mission managée Pentest on Demand livre un rapport produit et débriefé par les experts sécurité d'ASC-IT dans un espace client sécurisé, ce que la plupart des questionnaires entendent par test externe.

Puis-je l'intégrer à GitLab CI ou GitHub Actions ?

Oui. La CLI open source s'exécute comme une étape de GitLab CI, GitHub Actions ou Jenkins contre une URL de préproduction autorisée, à la demande ou à chaque déploiement, et dépose le rapport en artefact de build. Les campagnes planifiées, le dashboard en direct et l'agent de remédiation qui ouvre des pull requests validées en sandbox sont des fonctions Pro ; les pages /ci/ et /integrations/ (en anglais) donnent les exemples à copier.

Mon SaaS est-il concerné par NIS2 ?

Le SaaS n'est pas un secteur listé aux annexes I ou II de NIS2. Un éditeur est concerné uniquement si son activité réelle en fait un fournisseur de services cloud, un fournisseur de services gérés ou un fournisseur numérique (place de marché, moteur de recherche, réseau social) et s'il atteint le seuil de taille. Sinon, il rencontre NIS2 par ses clients : les entités essentielles et importantes doivent traiter la sécurité de leur chaîne d'approvisionnement (article 21(2)(d)) et l'écrivent dans leurs contrats. En France, la loi de transposition n'est pas en vigueur au 4 octobre 2026.

Le test va-t-il toucher la production et les données des autres clients ?

Vous choisissez la cible : la plupart des équipes pointent Darkmoon sur une préproduction peuplée de tenants de test, et la mission managée cadre avec vous la cible, les comptes de test et la fenêtre d'intervention avant tout lancement. Aucun test ne démarre sans autorisation signée.

Le modèle voit-il les données de nos clients ou notre infrastructure ?

Non. La Privacy Gateway tokenise IP, noms d'hôtes, URL, e-mails, identifiants et chemins internes sur votre machine avant qu'ils n'atteignent le modèle, puis les réhydrate localement. Vous pouvez aussi faire tourner tout le moteur sur un modèle local via Ollama ou llama.cpp : rien ne quitte votre réseau, ce qui compte si vous visez un hébergement souverain ou répondez à un client public.

Community, Pro ou mission managée : que choisir pour une startup ?

Commencez par le moteur Community sous GPLv3 si vous avez un ingénieur pour l'exploiter et voulez le test dans votre CI. Pro ajoute le dashboard, le planificateur, les rapports brandés et les pull requests de remédiation pour les équipes qui testent en continu. La mission managée à 799 € forfaitaires (indicatif, ajusté au périmètre final) répond au moment où il vous faut un rapport externe, un débrief et un cadre légal pris en charge.

Que se passe-t-il après le rapport ?

Vous recevez une liste de corrections priorisée avec la preuve de chaque constat, un débrief pour la parcourir, et la possibilité de retester une fois les corrections appliquées. Les équipes qui auto-hébergent peuvent planifier des campagnes récurrentes (Pro) pour rejouer les mêmes vérifications après chaque changement ; l'agent de remédiation Pro peut aussi ouvrir des pull requests de correctifs validés en sandbox, à relire par vos développeurs.

S.14Pour aller plus loin
Approfondir

S.15Suite
Prouvez que le produit tient avant que l'auditeur ne le demande.

Clonez le moteur GPLv3 et lancez-le sur un tenant de préproduction qui vous appartient, ou commandez une mission managée pour obtenir le rapport externe et son débrief.