
Reste de chaîne d'approvisionnement de T3 Code 61c3794c. Le programme de mise à jour vérifie SHA256SUMS depuis la même origine que l'archive. Aucune signature. Laboratoire en boucle locale.
Le programme de mise à jour vérifie un fichier SHA-256 qui se trouve à côté du téléchargement. Volez l'hôte de téléchargement et vous volez aussi la somme de contrôle. Il n'y a pas de signature sur ce chemin. Une corruption accidentelle échoue toujours. Une paire substituée provenant de la même origine s'installe.
Classe : Chaîne d'approvisionnement
Portée : Chaîne d'approvisionnement (quiconque contrôle releaseBaseUrl)
T3 Code 61c3794c - Ping
| ID | pas encore de CVE |
| Classe | Chaîne d'approvisionnement |
| Portée | Chaîne d'approvisionnement (hôte de publication compromis, CDN, ou DNS/TLS sur cette origine) |
| CWE | CWE-345 / CWE-494 |
| CVSS | Moyen : 6.8 CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Produit | T3 Code |
| Affecté | 61c3794c32b0eeebfac09add43e403618c65d2d7 |
| Auth | aucune sur la victime une fois l'éditeur compromis ; la victime lance une installation ou une mise à jour |
| Licence | GNU Affero GPL v3.0 |
| Lab | éditeur en boucle locale 127.0.0.1:18192 ; tar simulé afin que les octets de l'archive ne soient jamais exécutés |
Nécessite le contrôle de l'origine qui sert à la fois SHA256SUMS et l'archive (releaseBaseUrl / GitHub Releases pour cette build). Ne nécessite pas de compte T3 sur la victime.
| Privilège | Méthode / sink | Recon / intégrité / disponibilité | Prouvé en lab ou déduit |
|---|---|---|---|
| Publier une archive + somme de contrôle correspondantes depuis une même origine | ensurePinnedRuntimeInstalled récupère ${baseUrl}/SHA256SUMS puis ${baseUrl}/${fileName}, comparaison SHA-256 | Intégrité (installation acceptée) | Prouvé en lab. checksum-pass=1, témoin t3f02s9m4 dans les deux fichiers |
| Piloter l'auto-mise à jour / le service de démarrage via le même helper | selfUpdate.ts, bootService.ts passent releaseBaseUrl | Intégrité | Source. Le lab a appelé le helper directement |
| Exécuter le binaire installé après extraction | tar -xf puis exécution de t3 | Intégrité / disponibilité | Déduit. Le lab a simulé tar et n'a pas exécuté les octets |
| Contrôle négatif : somme de contrôle non concordante | même helper, des zéros dans SHA256SUMS | n/a | Prouvé en lab. étape verifying the t3 release archive checksum |
Reste fermé sur ce reliquat
| Axe | Méthode / sink | Pourquoi c'est fermé |
|---|---|---|
| Intégrité | Bit-flip accidentel en transit | Une non-concordance SHA-256 refuse l'extraction |
| Intégrité | Origine supplémentaire non signée | Le lab a utilisé une seule URL de base ; une seconde origine n'est jamais consultée car il n'en existe aucune |
| Intégrité | Exécution des octets de l'attaquant par ce lab | tar simulé ; extracted-binary-executed=0 |
signature-check=0 sur le bloc téléchargement+digest et les appelants de l'auto-mise à jour / du service de démarrage (aucun minisign, cosign, GPG ou sigstore).
pinnedRuntime.ts construit les deux URL à partir de cliReleaseDownloadBaseUrl. Les tests in-tree verrouillent déjà le succès de la somme de contrôle de même origine et l'échec en cas de non-concordance. Ils n'exigent pas de signature.
Fausses pistes : traiter une somme de contrôle comme un authentificateur d'éditeur.
python3 t3code-release-checksum-same-origin-Abraxas-Labs.py
ou :
cd lab
./run.sh
Publication HTTP en boucle locale sur 127.0.0.1:18192. En production, ensurePinnedRuntimeInstalled utilise Effect fetch vers cette origine. Les paires correspondantes s'installent (extraction simulée). Une paire non correspondante s'arrête à la vérification.
IOC loopback-bound=127.0.0.1:18192
IOC same-origin=1
IOC checksum-pass=1
IOC checksum-fail=1
IOC signature-check=0
IOC tar-mocked=1
IOC extracted-binary-executed=0
SUCCESS T3-F02-CHECKSUM t3f02s9m4
Signez le manifeste de somme de contrôle (minisign, cosign ou GPG) et intégrez la clé publique dans le binaire. Vérifiez la signature avant d'analyser SHA256SUMS. Épinglez l'origine de la version à une référence signée immuable.
61c3794c32b0eeebfac09add43e403618c65d2d7pinnedRuntime.ts téléchargement+empreinteGNU Affero GPL v3.0. Voir LICENSE. Laboratoire en boucle locale uniquement. Aucune garantie.
Abraxas Labs [email protected]
Veuillez attribuer le CVE à Abraxas Labs.