Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
picard — Adaptateur de chunks introspectant les protocoles pour des données résilientes | Kitploit
Outils/GitHubGitHub/neitzert/picard
Sécurité BluetoothOutils de Chiffrement/DéchiffrementExfiltration de DonnéesStéganographieCryptographieSécurité MatérielleUtilitaires et FrameworksArticles et RechercheAnalyse DNS
GitHubneitzert/picard

picard

Adaptateur de chunks introspectant les protocoles pour des données résilientes

14118il y a 1 jourPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Voir le dépôt

PICARD

Adaptateur de chunks introspectant les protocoles pour des données résilientes

Pour les autodidactes, les non-conformistes, et tous ceux à qui on a un jour dit de rester à leur place. Continuez à construire, continuez à explorer.


PICARD chiffre vos données, les découpe en chunks et disperse ces chunks à travers tous les points de terminaison de protocole que vous configurez : enregistrements DNS TXT, API de réseaux sociaux, courtiers MQTT, buckets S3, annonces Bluetooth, ou tout cela à la fois. Récupérez-les et il les réassemble. Avec la dispersion multi-adaptateurs, aucun point de terminaison unique ne détient suffisamment de texte chiffré pour reconstruire quoi que ce soit. Aucun serveur central. Aucuns frais de stockage mensuels. Il se monte comme un système de fichiers classique.

Pas efficace. Agnostique au protocole.

[!IMPORTANT] Projet de recherche. PICARD est une expérience informatique fonctionnelle, pas un système de stockage de production. Lisez l'avis de recherche et de nature juridique avant de poursuivre.


Nouveau dans la 0.3.0 : stockage sur vulnérabilités matérielles

[!WARNING] Expérimental : à utiliser à vos risques et périls. Ces adaptateurs utilisent des vulnérabilités matérielles comme primitives de stockage. Les résultats dépendent du matériel, sont non déterministes d'une machine à l'autre et irréversibles en cas de basculements de bits en DRAM. À n'utiliser que sur du matériel que vous possédez et contrôlez. L'exécution contre une infrastructure partagée ou cloud constitue un accès non autorisé dans la plupart des juridictions.

PICARD peut désormais stocker des chunks dans les états de bits de la DRAM et la résidence en cache CPU -- entièrement hors de la vue du système d'exploitation.

AdaptateurCe qu'il fait
rowhammerÉcrit des bits en martelant les rangées DRAM adjacentes jusqu'à ce que les fuites de charge fassent basculer les bits cibles. Lit en examinant directement la rangée victime. Local, éphémère, DDR3/4 non-ECC.
halfdoubleVariante à deux sauts. Le ratio agresseur proche/lointain contourne le Target Row Refresh (TRR) de la DDR4. Atteint du matériel que le rowhammer classique n'affecte plus.
throwhammerMartèle la DRAM d'un hôte distant via RDMA. Le CPU distant n'est pas du tout impliqué -- la carte réseau effectue des lectures DMA directement vers la DRAM. Nécessite une infrastructure RDMA.
cpu-cacheStocke des bits dans la SRAM L3 du CPU via Flush+Reload. Encodage par vote majoritaire N_REPS=5 sur des emplacements isolés par page. BER inférieur à 5e-4 sur i7-12700KF. Inter-processus sur le même hôte ; inter-VM là où la déduplication de pages est active.

Les quatre sont éphémères (un cycle d'alimentation les efface). Voir docs/adapters.md pour les prérequis matériels et le modèle de menace.


Comment ça fonctionne

plaintext
  → AES-256-GCM encrypt     (Argon2id key, per-block salt + nonce)
  → PCHK chunk              (protocol-sized pieces)
  → scatter across adapters (DNS, Redis, Reddit, S3, MQTT, …)
  → sealed envelope          (HKDF sub-key, correlation tag per adapter)

retrieve
  ← fan out to all adapters
  ← collect, verify, assemble
  ← decrypt

Chaque bloc est chiffré indépendamment avec son propre sel et nonce aléatoires. Les fragments sont répartis en round-robin ou via des profils RAID. Aucun adaptateur ne voit le texte en clair ; aucun adaptateur ne voit suffisamment de texte chiffré pour reconstruire quoi que ce soit.

L'index local (une base de données SQLite chiffrée en AES-256-GCM) associe les chemins aux emplacements des fragments. Perdez la phrase secrète, perdez les données.

L'origine : un mur et quelques oiseaux

C'était un matin frais à Berlin. Depuis mon patio, je fixais un mur en stuc nu surmonté de briques rouges. Un flou d'ailes attira mon regard, un petit oiseau bifurquant vers un trou de drainage près de la ligne de toit et disparaissant. Une autre tête apparut d'un autre trou, piaillant. Cinq trous de drainage, cinq nids. Les gouttières étaient censées évacuer l'eau, pas héberger des familles, et pourtant les oiseaux y avaient trouvé un abri, une couverture et un accès facile. Je ne l'avais jamais remarqué parce que je ne m'étais jamais donné la peine de regarder.

Notre infrastructure numérique transporte plus que ce pour quoi elle a été conçue pour stocker. Les enregistrements TXT du DNS acceptent du texte arbitraire dans les limites de la spécification. Les messages retenus MQTT persistent des données sur le broker. Les paquets ICMP echo transportent un champ de charge utile. Les API de réseaux sociaux acceptent du texte structuré libre. Chacun de ces protocoles définit des champs destinés aux métadonnées, à la découverte ou aux diagnostics. Ces champs peuvent tout aussi bien transporter des octets que remplir les cas d'usage prévus par leurs concepteurs.

Medium: A Wall, Some Birds, and The Internet Protocols We Aren't Looking At, Christopher Neitzert, mai 2025


Tableau de bord web

picard web ouvre un tableau de bord dans le navigateur à l'adresse http://localhost:8471.

PICARD dashboard overview Surface de stockage par catégorie, état des adaptateurs et détails de chiffrement en un coup d'œil.

PICARD adapter registry 259 adaptateurs parcourables par catégorie, avec les paramètres requis et l'ajout en un clic.


Démarrage rapide

pip install picard-store

export PICARD_PASSPHRASE="your-passphrase"   # or picard will prompt

picard init                                  # create picard.toml

# edit picard.toml to add your adapters, then:
picard put myfile.txt --as /docs/myfile.txt
picard get /docs/myfile.txt -o recovered.txt
picard ls
picard tree /

Depuis la source :

git clone https://github.com/neitzert/picard
cd picard
pip install -e ".[dev]"
python -m pytest --tb=short -q

Configuration

# picard.toml

[general]
block_size = 65536

[[adapters]]
name       = "dns-primary"
type       = "dns"
enabled    = true
params     = { nameserver = "10.10.10.10", domain = "chunks.example.com" }

[[adapters]]
name       = "s3-backup"
type       = "s3"
enabled    = true
tor_proxy  = true              # route through Tor SOCKS5
params     = { bucket = "picard-chunks", prefix = "data/" }

[[adapters]]
name         = "reddit-stash"
type         = "reddit"
enabled      = true
browser_mode = "headed"        # api | headless | headed
params       = { subreddit = "u_myuser" }

[[raid]]
level    = "raid5"
adapters = ["dns-primary", "s3-backup", "filesystem"]

[scatter.paranoid]
raid_level   = "raid10"
min_adapters = 4

Profils de dispersion : quiet, resilient, speed, paranoid


Référence CLI

Opérations de base

Télécharger l’outil