Repository navigation
ClawkWerk v1.0.0
Première version publiée avec intégration continue et binaires.
Ajouté
- Drapeau
-scope: le périmètre d'audit (client, machines, OS, transport,
port, compte de service) est lu depuis un fichier JSON validé strictement
(champs inconnus, doublons, plages réseau et plateformes inconnues
refusés). Exemple fourni :sample/scope.json. L'identifiant de session est
horodaté (<client>-AAAAMMJJ-HHMMSS). - Mode remote :
-credsobligatoire et vérifié contre chaquecred_refdu
périmètre avant toute connexion. - Questionnaire web : drapeau
-level basic|important|essential(71, 269 ou
439 questions), jeton anti-CSRF, contrôle des en-têtes Origin et Host,
en-têtes anti-clickjacking, écriture des réponses uniquement après une
soumission acceptée. - Démo complète : preuves pour les 16 contrôles scannables Basic sur deux
machines Windows, une machine Linux (sorties réelles capturées sur un
conteneur Debian) et un pare-feu MikroTik ; questionnaire rempli pour les
trois niveaux. Le verdict est complet à chaque niveau. - Support d'iptables dans la sonde pare-feu Linux ; détection des
anti-malwares tiers courants dans la sonde antivirus Linux. - Intégration continue (
.github/workflows/ci.yml) : gofmt, go mod verify,
go vet, staticcheck, tests-raceavec et sans-tags history,
govulncheck, build statique et reproductible, démo de bout en bout. - Publication (
.github/workflows/release.yml) : sur un tagv*, binaires
statiques Linux et Windows amd64 (orchestrateur, orchestrateur consultant,
questionnaire) et fichierSHA256SUMS. - README orienté présentation, captures du rapport et du questionnaire.
Corrigé
- PR.AA-05.3 sur Linux :
grep -csortait avec le code 1 quand aucun
protocole legacy n'écoutait, et une machine saine était classée « collecte
échouée ». Sansss, la sonde échoue désormais explicitement. - DE.CM-01.1 sur Linux : une machine sans aucun pare-feu était classée
« collecte échouée » ; c'est maintenant une non-conformité (niveau 1). Un
pare-feu présent mais illisible pour le compte de service devient un trou
de collecte « droits insuffisants ». - DE.CM-01.2 sur Linux (Key Measure) : même défaut de code de sortie sans
ClamAV, et une unité systemd inconnue passait pour ClamAV installé. - ID.AM-01.x (inventaire matériel) : même défaut de
grep -c; échec
explicite si nilspcinilsusbn'est installé. - PR.DS-11.1 : le minuteur système
dpkg-db-backupn'est plus pris pour une
sauvegarde des données. - Les sondes concernées complètent PATH avec
/usr/sbinet/sbin, absents
du PATH d'un compte de service non root sur Debian. - Preflight : « Périmètre de droits suffisant » s'affichait même quand toutes
les collectes échouaient. Le verdict n'est désormais suffisant que si toutes
les collectes applicables sont lisibles, et le preflight vérifie aussi que
la sortie est interprétable.
Sécurité
- Go 1.26.4 vers 1.26.8,
golang.org/x/crypto0.53.0 vers 0.57.0,
github.com/Azure/go-ntlmsspvers 0.1.1 : govulncheck passe de 10
vulnérabilités atteignables à 0.
Modifié
- Module Go renommé
github.com/warrox1993/clawkwerk; recette live-boot
renommée (/opt/clawkwerk, serviceclawkwerk-questionnaire). - Outils d'analyse épinglés dans le Makefile (staticcheck 2026.2.1,
govulncheck 1.8.0) ;make checkinclut les tests-tags history. - Documentation : README et CHANGELOG réécrits (l'ancienne version annonçait
une CI inexistante, 7 contrôles scannables et 155 tests) ; source publique
du référentiel citée ; documents de conception regroupés dans
docs/methode.
Mesures
- 371 tests et 282 sous-tests, verts avec et sans
-tags historyet sous
-race(version initiale : 339 et 238). - 200 fichiers Go, 22 750 lignes dont 8 612 de tests.