Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
etherblob-explorer — Rechercher et extraire des fichiers blob sur le réseau de la blockchain Ethereum | Kitploit
Outils/GitHubGitHub/litneet64/etherblob-explorer
OSINT (Renseignement de Sources Ouvertes)Analyse ForensiqueCollecte d'InformationsRécupération de DonnéesCTF
GitHublitneet64/etherblob-explorer

etherblob-explorer

Rechercher et extraire des fichiers blob sur le réseau de la blockchain Ethereum

Voir le dépôt
4311il y a 5 ansVérifié par Kitploit

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

EtherBlob Explorer

GitHub top language GitHub release (latest by date) GitHub

Recherchez et extrayez des fichiers blob sur le réseau Ethereum en utilisant l'API Etherscan.io.

thumbnail

Introduction

EtherBlob Explorer est un outil destiné aux chercheurs, analystes, joueurs de CTF ou toute personne suffisamment curieuse souhaitant rechercher différents types de fichiers ou toute donnée humaine significative sur le réseau de la blockchain Ethereum. Il recherche sur une plage fournie par l'utilisateur d'ID de blocs ou de timestamps UNIX sur l'un des 5 réseaux disponibles : MainNet, Görli, Kovan, Rinkeby et Ropsten.

Pour un cas réel, vous pouvez lire cette expérience réalisée en 2017. L'immuabilité de la blockchain peut vraiment être une épée à double tranchant.

Installation

Exécutez la commande suivante :

root@kitploit:~
$ pip install git+https://github.com/litneet64/etherblob-explorer.git

Il est maintenant prêt à être utilisé depuis votre CLI, vous trouverez quelques exemples d'utilisation courante ci-dessous !

Fonctionnalités

Réseaux

Recherchez sur l'un des cinq réseaux Ethereum :

  • MainNet
  • Görli
  • Kovan
  • Rinkeby
  • Ropsten

Emplacements de recherche

Cet outil peut rechercher dans les emplacements suivants, séparément ou en combinant plusieurs lors d'une même exécution :

  • Données d'entrée de transaction : recherche dans les données d'entrée des transactions (emplacement par défaut).
  • Données d'entrée de bloc : recherche dans les données d'entrée des blocs.
  • Stockage de contrat : recherche dans le tableau de stockage d'un contrat sur les N premières positions de 32 octets, en traitant le tout comme une grande chaîne de données.
  • Adresses de destination : recherche en ajoutant les adresses 'to' comme entrée possible [*] (vérification d'abord des en-têtes de fichiers et revérification lorsque toutes les données sont récoltées en utilisant binwalk).

[*] Stocker des données sur des adresses 'to' est possible sur le réseau Ethereum car il n'y a pas de vérification si l'envoi se fait vers une adresse qui n'a pas de clés de compte associées. Cela signifie que vous pouvez effectuer des transactions vers des adresses arbitraires pour créer une charge utile sur plusieurs transactions de 20 octets (c'est très rare, mais certains défis CTF le sont aussi).


Méthodes de recherche et d'extraction

Toutes ces méthodes peuvent être utilisées séparément ou en combinaison :

  • Fichiers intégrés : recherche de fichiers intégrés dans les données à l'aide de binwalk.
  • En-têtes de fichiers / Octets magiques : recherche à l'aide d'en-têtes + octets magiques en utilisant l'utilitaire Linux file (méthode par défaut).
  • Extraction de chaînes ASCII : recherche de chaînes ASCII dans les données.
  • Recherche basée sur l'entropie : utilise l'entropie de Shannon comme outil de mesure pour rechercher du texte en langage naturel (par exemple, UTF-8 Unicode), des fichiers chiffrés/compressés ou tout ce que l'utilisateur juge viable avec des limites d'entropie fournies par l'utilisateur.

IMPORTANT : L'ordre présenté ici est utilisé en interne pour écarter les recherches avec d'autres méthodes (par exemple, si un fichier est trouvé via fichiers intégrés, il ne tentera pas de rechercher avec en-têtes de fichiers, extraction de chaînes ASCII ni entropie) car il est peu probable de trouver quelque chose de significatif si les méthodes précédentes ont déjà réussi.


Divers
  • Accepte les horodatages UNIX (au lieu des ID de blocs) qui sont résolus en ID de blocs les plus proches validés à ces moments.
  • Sauvegarde toutes les données des transactions visitées dans un fichier pour examen ultérieur.
  • Stocke les logs affichés dans le CLI dans un fichier pour une analyse ultérieure des fichiers extraits.
  • Ignore les formats de fichiers fournis par l'utilisateur (insensible à la casse) pour l'extraction et accepte les sous-chaînes du format de fichier complet pour le blocage.
  • Affiche les métriques générales de progression (par exemple, combien de blocs/transactions ont été analysés, combien de blocs restent) chaque minute et affiche également quelques métriques intéressantes à la fin de l'exécution en cours.
  • Plus de fonctionnalités utiles dans le manuel (-h) !

Utilisation

Cas d'utilisation courants

  • Recherche standard (recherche dans les transactions via les en-têtes de fichiers) sur MainNet avec la clé API à l'emplacement par défaut (.api-key) et entre ces deux ID de blocs (inclus) :
root@kitploit:~
$ etherblob 4081599 4081600
  • Recherche plus approfondie (recherche de fichiers intégrés + méthode de recherche standard) sur le réseau goerli avec la clé dans un fichier arbitraire :
root@kitploit:~
$ etherblob -K api.key 3134050 3145570 -M -H --network goerli
  • Recherche sur les en-têtes de blocs et les transactions en même temps et sauvegarde les fichiers extraits dans 'extracted' :
root@kitploit:~
$ etherblob 4081599 4081600 --blocks --transactions -D extracted/
  • Recherche uniquement dans les adresses 'to' dans la plage des blocs validés entre Jan 25 2021 19:00:00 et Jan 26 2021 19:00:00 :
root@kitploit:~
$ etherblob -t 1611601200 1611687600 --addresses
  • Recherche de chaînes uniquement sur le stockage des contrats et pour les 4 premières positions du tableau de stockage (128 octets de données) :
root@kitploit:~
$ etherblob 3911697 3912697 -S --contracts -C 4
  • Recherche uniquement dans les transactions pour les données chiffrées/compressées (en ignorant tout autre format de fichier) :
root@kitploit:~
$ etherblob 4081599 4081600 --encrypted
  • Recherche dans les transactions pour des fichiers d'entropie personnalisés tout en sauvegardant les transactions dans un fichier :
root@kitploit:~
$ etherblob  3911697 3912697 -E 4.0 5.0 -s
  • Extraction uniquement des chaînes ASCII sur les blocs et transactions effectués la veille de Noël (entre le 24 et le 25) :
root@kitploit:~
$ etherblob -t 1608836400 1608922800 --blocks --transactions --strings
  • Recherche complète (lente, attendez-vous à de nombreux faux positifs) :
root@kitploit:~
$ etherblob 4081599 4081600 -U -S -M -H --blocks --transactions --addresses --contracts

Cas d'utilisation avancés

Il y a plus d'explications pour les cas d'utilisation avancés et les choses trouvées avec eux sur le wiki !

Manuel

root@kitploit:~
usage: etherblob [-h] [--transactions] [--blocks] [--addresses] [--contracts]
                 [--network {main,goerli,kovan,rinkeby,ropsten}] [-H] [-M] [-U] [-E CUSTOM_ENTROPY CUSTOM_ENTROPY]
                 [--encrypted] [-S] [-C CONTRACT_POSITION] [-t] [-K API_KEY_PATH] [-k API_KEY] [-D OUTPUT_DIR]
                 [-o OUT_LOG] [-s] [-i [IGNORED_FMT [IGNORED_FMT ...]]] [--version]
                 start_block end_block

Tool to search and extract blob files on the Ethereum Network.

positional arguments:
  start_block           Start of block id range.
  end_block             End of block id range.

optional arguments:
  -h, --help            show this help message and exit
  --transactions        Search for blob files on transaction inputs. Default search mode.
  --blocks              Search for blob files on block inputs. If enabled then transaction input check is disabled unless
                        explicitly enabled.
  --addresses           Search for blob files on 'to' transaction addresses, as on Ethereum anyone can make transactions
                        to an arbitrary address even if it has no related owner (still not very common). If enabled then
                        transaction's input check is disabled unless explicitly enabled.
  --contracts           Search for blob files on contract's storage. If enabled then transaction input check is disabled
                        unless explicitly enabled.
  --network {main,goerli,kovan,rinkeby,ropsten}, -N {main,goerli,kovan,rinkeby,ropsten}
                        Choose blockchain network to search in. Available choices are Main, Goerli (Görli), Kovan, Rinkeby
                        and Ropsten. MainNet is the default network. Case-insensitive.
  -H, --file-header     If enabled, search for file formats via magic bytes/file headers on data (from blocks,
                        transactions or addresses). Enabled by default unless another method is enabled too.
  -M, --embedded        If enabled, search for embedded files on data (from blocks, transactions or addresses) via
                        binwalk. Disabled by default as parsing now takes longer.
  -U, --unicode         If enabled, attempt to search and dump files containing UTF-8 text from harvested data (blocks,
                        transactions, addresses) using Shannon's Entropy (between 3.5 and 5.0) if no other discernible
                        file is found first on that data. Yields many false positives.
  -E CUSTOM_ENTROPY CUSTOM_ENTROPY, --custom-entropy CUSTOM_ENTROPY CUSTOM_ENTROPY
                        Define your own entropy limits (min and max) to search for files/data on harvested data.
  --encrypted           If enabled, attempt to search and dump encrypted/compressed data found via different search
                        methods (blocks, transactions, addresses) using Shannon's Entropy (between 7.0 and 8.0) if no
                        other discernible file is found first on that data.
  -S, --strings         If enabled, attempt to search and dump ASCII strings into files found inside harvested data
                        (blocks, transactions, addresses) if no other discernible file is found first on that data.
  -C CONTRACT_POSITION, --contract-position CONTRACT_POSITION
                        Search inside contract's data until reaching the (N-1)th position on its storage array. Positions
                        contain 32 bytes worth of data. Count starts at 0 and default pos is the 15th pos (16 indexes in
                        total) if no custom position is given.
  -t, --timestamps      If enabled, then start and end block IDs are interpreted as UNIX timestamps that are then resolved
                        to the closest commited blocks for those specific times.
  -K API_KEY_PATH, --api-key-path API_KEY_PATH
                        Path to file with Etherscan API key for queries. Default search location is '.api-key'.
  -k API_KEY, --api-key API_KEY
                        Etherscan API key as parameter. If given then '--api-key-path' is ignored.
  -D OUTPUT_DIR, --output-dir OUTPUT_DIR
                        Out-dir for extracted files. Default is 'ext_{start block}-{end block}'.
  -o OUT_LOG, --out-log OUT_LOG
                        Out-file for logs. Default is 'etherblob_{start block}-{end block}.log'.
  -s, --save-transactions
                        If enabled, all transactions and their info are stored at file 'transactions_{start-block}-{end-
                        block}.txt'
  -i [IGNORED_FMT [IGNORED_FMT ...]], --ignored-fmt [IGNORED_FMT [IGNORED_FMT ...]]
                        Ignored file formats for extraction. Default ignored/common file formats are 'ISO-8859 text' and
                        'Non-ISO extended-ASCII text'. The 'data' file format is always ignored. Accepts file format
                        substrings and makes case-insensitive matches. '*' is a wildcard to ignore all file formats.
  --version             show program's version number and exit

Official GitHub repo 'https://github.com/litneet64/etherblob-explorer'
Télécharger l’outil