đŠ bits est en disponibilitĂ© gĂ©nĂ©rale â quatre agents signĂ©s que vous pouvez tĂ©lĂ©charger et vĂ©rifier
La famille bits â les agents qui s'exĂ©cutent sur vos propres machines â est dĂ©sormais tĂ©lĂ©chargeable depuis la page des tĂ©lĂ©chargements. Quatre binaires, tous signĂ©s avec la mĂȘme clĂ©, tous vĂ©rifiables avant que vous ne les exĂ©cutiez.
| Agent | Version | Ce qu'il fait | Plateformes |
|---|---|---|---|
| bitcollector | v0.1.0-ga | Une vérité sur les actifs de qualité probante, depuis un hÎte : processus, paquets, ports, comptes, posture | Linux amd64/arm64, macOS amd64/arm64, Windows amd64 |
| bitscanner | v0.1.3-ga | Trouve les équipements que votre inventaire ne contient pas | Linux amd64/arm64 |
| bitenforcer | v0.1.0-ga | Validation de politique de durcissement et contrÎle préalable | Linux amd64/arm64 |
| bitmapper | v0.1.0-ga | Capture des connexions en direct â extrĂ©mitĂ©s, ports, protocole, compteurs, Ă©tat de la connexion. Aucune attribution par processus dans cette version | Linux amd64 |
v0.1.0-ga n'attribue pas les flux Ă des processusLa ligne ci-dessus indiquait d'abord « Capture des connexions en direct, avec attribution par processus », et l'entrĂ©e bitmapper de la section Ă quoi sert chaque agent affirmait que bitmapper rapporte « quels processus parlent rĂ©ellement Ă quoi, avec une attribution par connexion ». Ces deux affirmations Ă©taient fausses pour le binaire que ce billet annonce, et elles l'Ă©taient dans le sens qui vous coĂ»te : l'attribution par processus est ce qui distingue bitmapper d'un scanner hors hĂŽte, et c'est la raison mĂȘme de le dĂ©ployer.
MesurĂ© sur le 0.1.0-ga publiĂ© â commit 64ebc64, l'artefact prĂ©sent aujourd'hui sur la page des
tĂ©lĂ©chargements â 0 flux capturĂ© sur 12 portait la moindre attribution de processus, y compris
un flux de 60 secondes dont le processus propriétaire est resté vivant et interrogeable de bout en
bout. destination_process n'a jamais été renseigné ailleurs que dans le code de test. Dans cette
compilation, la recherche n'est tentée qu'une seule fois, à la création de la connexion, face
à un instantané de la table des sockets qui ne peut pas contenir le socket d'une connexion
sortante qui vient de naßtre ; aucun paquet ultérieur ne réessaie, et il n'existe aucune inférence
à partir des sockets en écoute sur laquelle se rabattre, car ce code est tout simplement absent de
64ebc64.
Ce que fait réellement v0.1.0-ga, c'est de la capture passive de flux, et cette partie-là est
bien réelle. Chaque connexion suivie est exportée sous forme d'enregistrement de flux :
extrémités source et destination, ports, protocole, état de la connexion, sens, interface,
premiĂšre et derniĂšre observation, durĂ©e, compteurs d'octets et de paquets â sans jamais aucun
octet de charge utile. C'est une réponse utile à « à quoi cette machine parle-t-elle ». Ce n'est
pas une réponse à « quel processus le fait ».
L'attribution par processus est implĂ©mentĂ©e et vĂ©rifiĂ©e â elle n'est simplement pas dans le binaire que vous pouvez tĂ©lĂ©charger. Sur le banc d'essai mĂȘme qui a mesurĂ© 0 sur 12, le remplacement attribue 12 flux sur 12, inscrit la rĂ©ponse du cĂŽtĂ© qui dĂ©tient rĂ©ellement le socket, et distingue une correspondance directe de socket d'une infĂ©rence, en refusant de nommer qui que ce soit lorsqu'un port compte plusieurs processus en Ă©coute. Cela arrivera dans la prochaine version de bitmapper. Nous n'y accolons pas de date ici : nous vous avons dĂ©jĂ dit une fois que cette capacitĂ© Ă©tait livrĂ©e alors qu'elle ne l'Ă©tait pas.
Si vous avez téléchargé bitmapper sur la foi de la phrase d'origine, l'erreur est la nÎtre. L'attribution de processus expose exactement ce que le binaire d'aujourd'hui résout, et ce qui le remplacera.
Pourquoi certains agents affichent moins de plateformes que d'autresâ
Parce qu'un binaire qui s'installe, se déclare sain et ne collecte rien est pire que pas de binaire du tout.
Chaque plateforme de ce tableau est une plateforme oĂč l'agent fait son travail. LĂ oĂč il ne le ferait pas, nous ne l'avons pas publiĂ©, et nous prĂ©fĂ©rons le dire plutĂŽt que vous laisser le dĂ©couvrir aprĂšs un dĂ©ploiement :
- bitenforcer est réservé à Linux. Toute sa surface, c'est
iptables,sysctl,systemdet SELinux. Sur macOS, ces éléments n'existent pas : l'agent ne validerait rien, et ses primitives de retour arriÚre n'auraient rien à restaurer. - bitmapper est réservé à Linux
amd64. Il lui faut une vĂ©ritable bibliothĂšque de capture de paquets compilĂ©e dedans. Une compilation qui en est dĂ©pourvue produit malgrĂ© tout un binaire exĂ©cutable â un binaire qui ne capture strictement rien â c'est pourquoi notre chaĂźne de publication refuse de signer un artefact incapable de dĂ©montrer qu'il capture. - bitscanner est rĂ©servĂ© Ă Linux, pour la mĂȘme catĂ©gorie de raison : ses lecteurs de voisins et de routes sont implĂ©mentĂ©s pour Linux.
Nous nous attendons à ce que ces listes s'allongent. Quand ce sera le cas, ce sera parce que l'agent aura été éprouvé sur cette plateforme, pas parce qu'il aura compilé.
VĂ©rifiez avant d'exĂ©cuterâ
Chaque version publiée livre une signature détachée, un SBOM et une attestation de compilation
par binaire, ainsi qu'un SHA256SUMS signé couvrant l'ensemble. Les compilations sont
reproductibles : la chaßne compile deux fois en repartant de zéro et refuse de publier si les
deux résultats ne sont pas identiques au bit prÚs.
La clé de signature est publiée à trois endroits indépendants qui doivent concorder : le site de
documentation, un enregistrement DNS TXT portant son empreinte, et un second enregistrement
TXT portant la clĂ© elle-mĂȘme. Recoupez-en au moins deux. Une signature ne vaut que l'ancre de
confiance qui la sous-tend, et une source unique relÚve du rituel plut Ît que de la vérification.
# RĂ©cupĂ©rer la clĂ© via DNS â fonctionne dans la CI, oĂč la protection anti-bots bloque les rĂ©cupĂ©rations HTTPS simples
dig +short TXT _cosign-key.cert-ix.com | tr -d '"' | sed 's/.*key=//' \
| base64 -d | openssl pkey -pubin -inform DER -out cosign.pub
# Confirmer que c'est bien NOTRE clé, face à l'empreinte publiée sur le site de documentation
openssl pkey -pubin -in cosign.pub -outform DER | sha256sum
# attendu : 552839f6b1b1eb0934557e1886326c7270584fa602fbf56f84754a98be3de822
# Puis vérifier la version que vous avez téléchargée
cosign verify-blob --key cosign.pub --bundle SHA256SUMS.sig \
--insecure-ignore-tlog=true SHA256SUMS
sha256sum --check --ignore-missing SHA256SUMS
cert-ix.com ne publie pas encore d'enregistrement DS : les réponses DNS ne sont donc pas
validées cryptographiquement de bout en bout. Récupérer la clé via DNS est pratique et
fonctionne lĂ oĂč HTTPS est bloquĂ©, mais c'est la comparaison de l'empreinte avec celle du site
de documentation â chargĂ© en HTTPS, avec un certificat validĂ© â qui Ă©tablit la confiance. Ne
l'omettez pas.
Les instructions complÚtes, y compris à quoi sert chaque fichier d'une version publiée et à quoi ressemble une vérification qui échoue, se trouvent dans Vérifier vos téléchargements.
Ă quoi sert chaque agentâ
- bitcollector â ce qui se trouve sur cette machine, sous forme de preuve plutĂŽt que d'affirmation. Chaque lot est attestĂ© et la chaĂźne peut ĂȘtre vĂ©rifiĂ©e hors ligne, sans aucun accĂšs Ă Cert-IX.
- bitscanner â les Ă©quipements qu'un inventaire fondĂ© sur des agents ne peut pas voir par construction, parce que rien n'y est installĂ©. LivrĂ© inerte : il ne met aucun paquet sur votre rĂ©seau tant que vous ne l'avez pas explicitement armĂ©, et l'autorisation ne peut pas venir d'une variable d'environnement.
- bitenforcer â ce qu'une politique de durcissement changerait, avant qu'elle ne change quoi que ce soit. La v1 valide et rapporte ; elle n'applique rien.
- bitmapper â Ă quoi cette machine parle
réellement, flux par flux : extrémités, ports, protocole, compteurs et état de la connexion,
capturés en direct sur ses propres interfaces. En
v0.1.0-ga, ces flux ne portent aucune attribution par processus â lisez le correctif ci-dessus avant de bĂątir quoi que ce soit dessus.
Par oĂč commencerâ
Téléchargez un agent, vérifiez-le, puis lisez la page de celui que vous avez choisi. Si vous hésitez, Qu'est-ce que bits ? explique comment les quatre s'articulent et, tout aussi important, ce que chacun ne fait délibérément pas.
