1. 제품
  2.   압축
  3.   Python
  4.   Unblob
 
  

대용량 ZIP 아카이브를 생성하고 관리하기 위한 무료 파이썬 라이브러리

강력한 오픈 소스이며 매우 빠른 파이썬 라이브러리로, 파이썬 개발자가 30가지가 넘는 다양한 아카이브, 압축 및 파일 시스템 형식에서 데이터를 로드, 추출 및 파싱할 수 있게 합니다.

Unblob 라이브러리란 무엇인가요?

Unblob은 필수적인 Python 라이브러리이자 명령줄 도구로, 펌웨어 이미지, 메모리 덤프, 네트워크 패킷 또는 암호화된 아카이브에서 흔히 발견되는 알려지지 않거나 독점적인 형식의 데이터를 포함하는 바이너리 블롭(파일)의 추출을 단순화하고 가속화하도록 설계되었습니다. 원래 ONEKEY가 자체 생산 분석 플랫폼에서 사용하기 위해 개발 및 유지 관리했으며, Unblob은 30가지가 넘는 다양한 아카이브, 압축 및 파일 시스템 형식을 지원함으로써 이러한 복잡한 파일을 파싱하는 문제를 전문적으로 처리합니다. ZIP, TAR, GZIP, BZIP2, XZ, LZMA, SquashFS, CramFS, JFFS2, UBI/UBIFS 및 YAFFS2와 같은 형식을 효율적으로 처리하고, 콘텐츠를 재귀적으로 추출하며, 아직 식별되지 않은 청크를 남겨두지 않습니다.

MIT 라이선스 하에 무료로 사용할 수 있는 Unblob은 매우 효율적이며 놀라울 정도로 다재다능합니다. 멀티프로세싱, 효율적인 코드, 메모리 매핑 파일, 그리고 고성능 매칭 라이브러리인 Hyperscan을 활용하여 번개 같은 빠른 성능을 제공합니다. 이 도구는 검증된 규칙과 포맷 표준을 사용해 시작 및 종료 오프셋을 식별함으로써 오탐과 겹치는 청크를 최소화합니다. 또한 Unblob은 사용자가 맞춤형 포맷 핸들러와 추출기를 빠르게 작성할 수 있는 사용하기 쉬운 API를 제공하며, 핵심 기능을 확장하기 위해 동적으로 로드되는 플러그인을 지원합니다. 이는 압축, 암호화 또는 임베디드 파일 시스템을 포함한 복잡하고 다계층 바이너리 데이터를 분석해야 하는 모든 사람에게 Unblob을 필수적인 자산으로 만듭니다.

Previous Next

Unblob 시작하기

Unblob을 설치하는 권장 방법은 pypi.org를 이용하는 것입니다. 원활한 설치를 위해 다음 명령을 사용하십시오.

pypi를 통해 Unblob 라이브러리 설치하기

 pip3 install unblob 

GitHub에서 unblob 저장소를 복제하세요

git clone https://github.com/onekey-sec/unblob.git 
수동으로 설치하는 것도 가능합니다; 최신 릴리스 파일을 GitHub 저장소에서 직접 다운로드하십시오.

Python 라이브러리를 사용하여 인식된 포맷 추출하기

오픈 소스 Unblob 라이브러리는 Python 애플리케이션 내에서 다양한 파일 형식의 콘텐츠를 추출하는 기능을 포함하고 있습니다. 이 라이브러리는 30개 이상의 아카이브, 압축 형식 및 파일 시스템을 지원합니다. 모든 지원 형식을 사용하려면 모든 추출기를 설치해야 함을 기억하십시오. 사용자는 출력 디렉터리 지정, 재귀 깊이, 상세 수준, 보고서 형식 등 라이브러리 동작을 맞춤 설정할 수 있는 다양한 옵션을 사용할 수 있습니다. 개발자는 extract_chunk 메서드를 사용하여 각 청크의 내용을 지정된 출력 디렉터리로 추출할 수 있습니다. 아래는 Python 애플리케이션 내에서 라이브러리를 사용해 콘텐츠를 출력 디렉터리로 추출하는 예시 코드 스니펫입니다.

Python 라이브러리를 사용하여 출력 디렉터리로 콘텐츠를 추출하는 방법은?

import unblob

# Scan a file for known formats
file_path = "some_file.bin"
chunks = unblob.scan_file(file_path)

# Extract each chunk to an output directory
output_dir = "some_dir"
for chunk in chunks:
unblob.extract_chunk(chunk, output_dir)

Python API를 통해 ELF 파일 분석 수행하기

오픈 소스 Unblob 라이브러리는 소프트웨어 개발자가 알 수 없는 바이너리 블롭에서 ELF 파일을 감지하고 추출하며, 해당 파일의 기능과 특성을 식별하기 쉽게 해줍니다. 이 라이브러리는 32비트와 64비트 ELF 파일을 모두 지원하고, x86, x86_64, ARM, MIPS, PowerPC와 같은 다양한 아키텍처를 지원합니다. 또한 실행 파일, 공유 라이브러리, 객체 파일, 코어 덤프, 커널 모듈 등 다양한 유형의 ELF 파일을 처리할 수 있습니다.

Python API를 통한 메타데이터 추출

오픈 소스 Unblob 라이브러리는 Python 애플리케이션 내에서 메타데이터 파일을 생성하는 기능을 포함했습니다. 사용자는 Unblob을 명령줄 도구로 실행할 때 --report 옵션을 사용할 수 있습니다. 이 옵션은 추출된 파일의 경로, 크기, 유형, 매직, 엔트로피 및 청크 상세 정보와 같은 정보를 포함하는 JSON 파일을 생성합니다. 사용자는 --report 옵션에 인수로 JSON 파일의 이름과 위치를 지정할 수 있습니다. 그런 다음 사용자는 JSON 뷰어 또는 파서를 사용하여 metadata.json 파일을 확인하거나 분석할 수 있습니다.

 한국인