Bearer - Guide de flux de données sensibles et SAST
Bearer est un outil open-source de test d’application security statique avec un angle distinctif : il est construit autour du flux de données sensibles. Plutôt que de ne correspondre qu’à des patterns de code vulnérable, Bearer découvre où vivent les données PII, PHI et autres données sensibles dans votre codebase, cartographie comment cette data circule, et signale quand elle fuit vers les logs, les services tiers, ou la communication non-sécurisée. C’est ce qui la rend exceptionnellement bien adaptée au travail privacy et conformité (GDPR, HIPAA, PCI) à côté du scanning de sécurité conventionnel.
Installation
Scanning
| Commande | Description |
|---|
bearer scan . | Scan complet de sécurité + privacy |
bearer scan . --scanner secrets | Détection de secrets uniquement |
bearer scan . --scanner sast | Règles SAST uniquement |
bearer scan . --report dataflow | Montrer les flux de données sensibles |
bearer scan . --report privacy | Rapport privacy/conformité |
bearer scan . --format json -o out.json | Sortie JSON |
Types de rapports
| Rapport | Montre |
|---|
security (défaut) | Violations de règles par severity |
dataflow | Où les données sensibles sont détectées et où elles vont |
privacy | Sujets de données/types par composant tiers |
stats | Résumé de composition de codebase |
# Quels tiers reçoivent des données personnelles ?
bearer scan . --report privacy --format json
Détection de données sensibles
| Catégorie | Exemples |
|---|
| Personnel | Nom, email, téléphone, adresse |
| Financier | Numéros de carte, comptes bancaires |
| Santé (PHI) | Diagnostics, identifiants médicaux |
| Identifiants | Mots de passe, tokens, clés |
| Appareil/tracking | IPs, device IDs |
Bearer classifie la data par type et sujet (client, employé, user), c’est ce qui rend le rapport privacy significatif.
Découvertes courantes
| Découverte | Risque |
|---|
| PII écrite dans les logs | Fuite de data dans l’agrégation de logs |
| Données sensibles vers tiers | Processeur non-examiné / problème GDPR |
| Transmission non-chiffrée | Data sur HTTP |
| Crypto faible | Algorithmes non-sécurisés sur des champs sensibles |
| Secrets en source | Identifiants hardcodés |
Severity et filtrage
| Flag | Effet |
|---|
--severity critical,high | Signaler uniquement ces niveaux |
--skip-path "tests/**,vendor/**" | Exclure des chemins |
--only-rule RULE_ID | Exécuter une seule règle |
--skip-rule RULE_ID | Supprimer une règle |
--exit-code 1 | Échouer CI sur les découvertes |
Configuration
# bearer.yml
scan:
skip-path:
- "**/tests/**"
- "**/node_modules/**"
severity:
- critical
- high
report:
format: json
Intégration CI
# Gater une PR sur les problèmes data-flow de haute severity
bearer scan . --severity critical,high --exit-code 1
# Produire SARIF pour GitHub code scanning
bearer scan . --format sarif -o bearer.sarif
Règles personnalisées
Les règles Bearer sont en YAML et peuvent définir de nouveaux patterns sensibles ou détections :
| Champ | Objectif |
|---|
patterns | Formes de code à analyser |
languages | Langages applicables |
severity | Severity de découverte |
metadata.cwe_id | Mapper vers CWE |
Bearer vs autre SAST
| Aspect | Bearer | Semgrep/Opengrep | TruffleHog |
|---|
| Idée core | Flux de données sensibles | Règles pattern/taint | Scanning de secrets |
| Rapport privacy | Première classe | Non | Non |
| Mapping de conformité | GDPR/HIPAA/PCI | Manuel | Non |
| Idéal pour | Examen data-risk + privacy | Couverture SAST générale | Identifiants leakés |
Complète Semgrep/Opengrep pour SAST général et TruffleHog pour les secrets — l’avantage de Bearer est de connaître quelles données sont à risque.
Ressources