Stockage externe et identité
- Utilisez uniquement des buckets ou conteneurs externes précréés, appartenant au client.
- Refusez l’accès public et l’administration à l’échelle du compte.
- Utilisez les chaînes d’identité de charge de travail/identifiants par défaut avec les permissions de bucket/conteneur et de préfixe les plus étroites requises par le web et le worker.
- Séparez l’administration, l’attestation preflight, les opérations objet d’exécution, la migration et les responsabilités de rétention lorsque la plateforme le permet.
- Stockez les secrets dans le gestionnaire de secrets de la plateforme. Ne les placez jamais dans le code source, les ConfigMaps, les images, les arguments/l’historique de shell, les journaux, la télémétrie, les lots de support ou les preuves de certification.
- Conservez la vérification TLS activée. Montez les fichiers CA privés en lecture seule et effectuez leur rotation avec une procédure de chevauchement.
Trois profils d’usage
quarantine: tous les téléversements contrôlés par l’utilisateur entrent ici.records: seuls les téléversements utilisateur approuvés par le scanner et les exports de serveur de confiance étroitement définis deviennent disponibles ici.ephemeral: canaries profonds et données de courte durée avec un cycle de vie borné.
L’analyse de malware échoue en mode fermé
La production exige unclamd externe via CLAMD_SOCKET_PATH ou
CLAMD_HOST. Le TLS du scanner distant utilise CLAMD_TLS=true et
CLAMD_CA_FILE ; une exception en clair sur réseau privé est une exception
de risque explicite, pas le défaut.
CaseBender calcule le SHA-256, écrit une intention de téléversement, relit
l’objet exact et met en file la vérification. Si le scanner est
indisponible, expire, renvoie une sortie malformée ou ne peut pas analyser
la taille configurée, l’objet reste en quarantaine. Les tentatives sont
durables ; l’épuisement devient une lettre morte. Seul un verdict terminal
CLEAN autorise la copie vers records.
Un résultat INFECTED reste en quarantaine et crée un événement d’audit de
sécurité sensible. Ne téléchargez jamais un échantillon de malware vivant
pour le dépannage.
Échantillons de malware intentionnels
Les tests autorisés peuvent stocker un échantillon avec une confiance de contenuMALWARE_SAMPLE et quarantineOnly. Il reste en quarantaine, n’est
jamais promu et a l’état d’analyse SKIPPED. Utilisez des fixtures inertes
équivalentes à EICAR lorsque c’est possible. Exigez une autorisation écrite,
une manipulation isolée, une rétention/destruction approuvée et aucune pièce
jointe de ticket de support. N’affaiblissez pas la politique d’analyse pour
faire passer un test.
Intégrité et versions exactes
- Persistez le SHA-256 applicatif, la taille, la somme de contrôle du fournisseur et la version/génération du fournisseur lorsqu’elles sont disponibles.
- Vérifiez les octets téléchargés après téléversement, promotion, migration, sauvegarde et restauration.
- Traitez les ETags comme opaques ; les ETags multipartie/chiffrés peuvent ne pas être MD5.
- Utilisez la création conditionnelle pour empêcher les courses d’écrasement.
- Adressez la rétention, la conservation légale, la restauration et la migration par version exacte d’objet — pas un objet latest flottant.
- Alertez sur
storage.checksum_mismatch, les objets attendus manquants et les orphelins confirmés.
Chiffrement, WORM et conservation légale
Exigez TLS et le chiffrement côté serveur géré par le fournisseur. Utilisez des clés gérées par le client lorsque c’est mandaté et vérifiez la rotation/reprise des clés séparément. Pour lesrecords réglementés, définissez requireWorm: true et
STORAGE_REQUIRE_WORM=true, puis qualifiez le versioning du fournisseur, la
rétention/immuabilité des objets et la conservation légale. La readiness
échoue avec la catégorie capability lorsque ces contrôles sont absents.
CaseBender ne contourne pas par défaut la rétention de gouvernance, et la
rétention de conformité bloque intentionnellement la suppression anticipée.
Une capacité WORM dans un SDK ne prouve pas que le bucket/conteneur a été
créé avec les paramètres immuables requis.
Pas d’URL signées
Les adaptateurs de stockage CaseBender ne génèrent pas d’URL S3 pré-signées, d’URL signées GCS ni d’URL SAS Azure. Les téléchargements doivent passer par l’authentification CaseBender, l’autorisation, les contrôles de locataire, les contrôles de cycle de vie, l’approbation du scanner et les frontières d’audit.Santé
/api/health/liveest uniquement processus et n’a aucune dépendance externe./api/health/readyvérifie les fournisseurs configurés et exige un canary profond write/read/copy/delete frais surephemeral.- La réponse n’expose que des catégories assainies :
configuration,authentication,tls,storage,capabilityoucanary_stale.