Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
etherblob-explorer — 이더리움 블록체인 네트워크에서 blob 파일을 검색하고 추출합니다. | Kitploit
도구/GitHubGitHub/litneet64/etherblob-explorer
OSINT (Open Source Intelligence)ForensicsInformation GatheringData RecoveryCTF
GitHublitneet64/etherblob-explorer

etherblob-explorer

이더리움 블록체인 네트워크에서 blob 파일을 검색하고 추출합니다.

저장소 보기
43115년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

EtherBlob Explorer

GitHub top language GitHub release (latest by date) GitHub

Etherscan.io API를 사용하여 이더리움 네트워크에서 블롭 파일을 검색하고 추출합니다.

thumbnail

소개

EtherBlob Explorer는 연구자, 분석가, CTF 플레이어 또는 이더리움 블록체인 네트워크에서 다양한 종류의 파일이나 의미 있는 사람이 입력한 데이터를 검색하려는 모든 호기심 많은 사람들을 위해 설계된 도구입니다. 사용자가 제공한 블록 ID 범위 또는 UNIX 타임스탬프를 기준으로 5개의 사용 가능한 네트워크(MainNet, Görli, Kovan, Rinkeby 및 Ropsten)에서 검색합니다.

실제 사례에 대해서는 2017년에 진행된 이 실험을 읽을 수 있습니다. 블록체인의 불변성은 정말 양날의 검일 수 있습니다.

설치

다음 명령을 실행하세요:

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

이제 CLI에서 사용할 준비가 되었습니다. 아래에서 몇 가지 일반적인 사용 예제를 찾을 수 있습니다!

기능

네트워크

다섯 가지 이더리움 네트워크에서 검색:

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

검색 위치

이 도구는 다음 위치에서 개별적으로 또는 동일한 실행에서 이들 중 임의의 조합으로 검색할 수 있습니다:

  • 트랜잭션 입력 데이터: 트랜잭션의 입력 데이터 내 검색 (기본 위치).
  • 블록 입력 데이터: 블록의 입력 데이터 내 검색.
  • 컨트랙트 스토리지: 컨트랙트의 스토리지 배열에서 처음 _N_개의 32바이트 크기 위치를 하나의 큰 데이터 문자열로 처리하여 검색.
  • 수신 주소: '수신' 주소를 가능한 입력으로 추가하여 검색 [ * ] (먼저 파일 헤더를 확인하고 binwalk를 사용하여 모든 데이터가 수집된 후 다시 확인).

[*] 이더리움 네트워크에서는 연결된 계정 키가 없는 주소로 전송할 때 검증이 이루어지지 않으므로 '수신' 주소에 데이터를 저장할 수 있습니다. 즉, 여러 개의 20바이트 크기 트랜잭션을 통해 페이로드를 만들기 위해 임의의 주소로 트랜잭션을 보낼 수 있습니다 (매우 드물지만 일부 CTF 챌린지에서도 발생합니다).


검색 및 추출 방법

이러한 모든 방법은 개별적으로 또는 임의의 조합으로 사용할 수 있습니다:

  • 내장 파일: binwalk를 사용하여 데이터 내에 포함된 파일 검색.
  • 파일 헤더 / 매직 바이트: Linux 유틸리티 file을 사용하여 헤더 + 매직 바이트로 검색 (기본 방법).
  • ASCII 문자열 덤프: 데이터 내에서 ASCII 문자열 검색.
  • 엔트로피 기반 검색: 섀넌 엔트로피를 측정 도구로 사용하여 자연어 텍스트(예: UTF-8 유니코드), 암호화/압축 파일 또는 사용자가 제공한 엔트로피 제한 내에서 적합하다고 판단하는 모든 것을 검색.

중요: 여기에 표시된 순서는 다른 방법으로 검색을 폐기하기 위해 내부적으로 사용됩니다(예: 내장 파일을 통해 파일이 발견되면 파일 헤더, ASCII 문자열 덤프 또는 엔트로피를 사용한 검색을 시도하지 않습니다). 이전 방법이 이미 성공했다면 의미 있는 결과를 찾을 가능성이 낮기 때문입니다.


기타
  • 해당 시간에 커밋된 가장 가까운 블록 ID로 해석되는 UNIX 타임스탬프(블록 ID 대신)를 허용합니다.
  • 방문한 모든 트랜잭션의 데이터를 파일에 저장하여 나중에 검토할 수 있습니다.
  • CLI에 표시된 로그를 파일에 저장하여 나중에 추출된 파일을 분석할 수 있습니다.
  • 추출을 위해 사용자가 제공한 파일 형식(대소문자 구분 없음)을 무시하고 블랙리스트 목적으로 완전한 파일 형식의 부분 문자열을 허용합니다.
  • 매분마다 일반 진행 상황 메트릭(예: 구문 분석된 블록/트랜잭션 수, 남은 블록 수)을 출력하고 현재 실행 종료 시 흥미로운 메트릭을 표시합니다.
  • 매뉴얼(-h)에서 더 많은 유용한 기능을 확인할 수 있습니다!

사용법

일반적인 사용 사례

  • 표준 검색(파일 헤더를 통한 트랜잭션 내 검색) - MainNet에서 API 키는 기본 위치(.api-key)에 있고 다음 두 블록 ID 사이(포함):
root@kitploit:~
$ etherblob 4081599 4081600
  • 더 철저한 검색(내장 파일 + 일반 검색 방법) - goerli 네트워크에서 키는 임의의 파일에 있음:
root@kitploit:~
$ etherblob -K api.key 3134050 3145570 -M -H --network goerli
  • 블록 헤더와 트랜잭션을 동시에 검색하고 추출된 파일을 'extracted'에 저장:
root@kitploit:~
$ etherblob 4081599 4081600 --blocks --transactions -D extracted/
  • Jan 25 2021 19:00:00와 Jan 26 2021 19:00:00 사이에 커밋된 블록 범위에서 '수신' 주소만 검색:
root@kitploit:~
$ etherblob -t 1611601200 1611687600 --addresses
  • 컨트랙트 스토리지만 검색하고 처음 4개의 스토리지 배열 위치(128바이트 데이터)에서 문자열 검색:
root@kitploit:~
$ etherblob 3911697 3912697 -S --contracts -C 4
  • 암호화/압축 데이터만 트랜잭션 내에서 검색(다른 모든 파일 형식 무시):
root@kitploit:~
$ etherblob 4081599 4081600 --encrypted
  • 사용자 정의 엔트로피 파일을 트랜잭션 내에서 검색하고 트랜잭션을 파일에 저장:
root@kitploit:~
$ etherblob  3911697 3912697 -E 4.0 5.0 -s
  • 크리스마스 이브(24일과 25일 사이)에 만들어진 블록과 트랜잭션에서 ASCII 문자열만 덤프:
root@kitploit:~
$ etherblob -t 1608836400 1608922800 --blocks --transactions --strings
  • 전체 검색(느림, 많은 오탐 예상):
root@kitploit:~
$ etherblob 4081599 4081600 -U -S -M -H --blocks --transactions --addresses --contracts

고급 사용 사례

고급 사용 사례 및 이와 함께 발견된 사항에 대한 추가 설명은 위키에서 확인할 수 있습니다!

매뉴얼

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

이더리움 네트워크에서 블롭 파일을 검색하고 추출하는 도구입니다.

positional arguments:
  start_block           블록 ID 범위의 시작.
  end_block             블록 ID 범위의 끝.

optional arguments:
  -h, --help            이 도움말 메시지를 표시하고 종료합니다.
  --transactions        트랜잭션 입력에서 블롭 파일을 검색합니다. 기본 검색 모드입니다.
  --blocks              블록 입력에서 블롭 파일을 검색합니다. 활성화되면 명시적으로 활성화하지 않는 한 트랜잭션 입력 확인이 비활성화됩니다.
  --addresses           '수신' 트랜잭션 주소에서 블롭 파일을 검색합니다. 이더리움에서는 누구나 임의의 주소로 트랜잭션을 보낼 수 있으며, 해당 주소에 관련 소유자가 없더라도 가능합니다(여전히 흔하지는 않음). 활성화되면 명시적으로 활성화하지 않는 한 트랜잭션 입력 확인이 비활성화됩니다.
  --contracts           컨트랙트의 스토리지에서 블롭 파일을 검색합니다. 활성화되면 명시적으로 활성화하지 않는 한 트랜잭션 입력 확인이 비활성화됩니다.
  --network {main,goerli,kovan,rinkeby,ropsten}, -N {main,goerli,kovan,rinkeby,ropsten}
                        검색할 블록체인 네트워크를 선택합니다. 선택 가능한 네트워크: Main, Goerli (Görli), Kovan, Rinkeby 및 Ropsten. MainNet이 기본 네트워크입니다. 대소문자를 구분하지 않습니다.
  -H, --file-header     활성화되면 데이터(블록, 트랜잭션 또는 주소에서)에서 매직 바이트/파일 헤더를 통해 파일 형식을 검색합니다. 다른 방법도 활성화되지 않은 경우 기본적으로 활성화됩니다.
  -M, --embedded        활성화되면 binwalk를 사용하여 데이터(블록, 트랜잭션 또는 주소에서)에서 내장 파일을 검색합니다. 파싱 시간이 더 오래 걸리므로 기본적으로 비활성화되어 있습니다.
  -U, --unicode         활성화되면 수집된 데이터(블록, 트랜잭션, 주소)에서 UTF-8 텍스트를 포함하는 파일을 검색하고 덤프하려고 시도합니다. 해당 데이터에서 다른 식별 가능한 파일이 먼저 발견되지 않은 경우 섀넌 엔트로피(3.5에서 5.0 사이)를 사용합니다. 많은 오탐을 생성합니다.
  -E CUSTOM_ENTROPY CUSTOM_ENTROPY, --custom-entropy CUSTOM_ENTROPY CUSTOM_ENTROPY
                        수집된 데이터에서 파일/데이터를 검색하기 위해 고유한 엔트로피 제한(최소 및 최대)을 정의합니다.
  --encrypted           활성화되면 수집된 데이터(블록, 트랜잭션, 주소)에서 다른 식별 가능한 파일이 먼저 발견되지 않은 경우 섀넌 엔트로피(7.0에서 8.0 사이)를 사용하여 암호화/압축 데이터를 검색하고 덤프하려고 시도합니다.
  -S, --strings         활성화되면 수집된 데이터(블록, 트랜잭션, 주소)에서 다른 식별 가능한 파일이 먼저 발견되지 않은 경우 ASCII 문자열을 파일로 검색하고 덤프하려고 시도합니다.
  -C CONTRACT_POSITION, --contract-position CONTRACT_POSITION
                        컨트랙트의 스토리지 배열에서 (N-1)번째 위치까지 컨트랙트 데이터 내부를 검색합니다. 각 위치는 32바이트 데이터입니다. 카운트는 0부터 시작하며, 사용자 정의 위치가 제공되지 않은 경우 기본 위치는 15번째 위치(총 16개 인덱스)입니다.
  -t, --timestamps      활성화되면 시작 및 종료 블록 ID가 UNIX 타임스탬프로 해석되며, 해당 특정 시간에 대해 가장 가까운 커밋된 블록으로 해석됩니다.
  -K API_KEY_PATH, --api-key-path API_KEY_PATH
                        쿼리를 위한 Etherscan API 키가 포함된 파일의 경로입니다. 기본 검색 위치는 '.api-key'입니다.
  -k API_KEY, --api-key API_KEY
                        매개변수로 제공되는 Etherscan API 키입니다. 제공되면 '--api-key-path'는 무시됩니다.
  -D OUTPUT_DIR, --output-dir OUTPUT_DIR
                        추출된 파일의 출력 디렉토리입니다. 기본값은 'ext_{시작 블록}-{종료 블록}'입니다.
  -o OUT_LOG, --out-log OUT_LOG
                        로그 출력 파일입니다. 기본값은 'etherblob_{시작 블록}-{종료 블록}.log'입니다.
  -s, --save-transactions
                        활성화되면 모든 트랜잭션과 해당 정보가 'transactions_{시작 블록}-{종료 블록}.txt' 파일에 저장됩니다.
  -i [IGNORED_FMT [IGNORED_FMT ...]], --ignored-fmt [IGNORED_FMT [IGNORED_FMT ...]]
                        추출을 위해 무시할 파일 형식입니다. 기본적으로 무시되는 일반 파일 형식은 'ISO-8859 text' 및 'Non-ISO extended-ASCII text'입니다. 'data' 파일 형식은 항상 무시됩니다. 파일 형식 부분 문자열을 허용하며 대소문자를 구분하지 않고 일치시킵니다. '*'는 모든 파일 형식을 무시하는 와일드카드입니다.
  --version             프로그램의 버전 번호를 표시하고 종료합니다.

공식 GitHub 저장소 'https://github.com/litneet64/etherblob-explorer'
도구 다운로드