Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
pe_tree — pefile과 PyQt5를 사용하여 Portable Executable (PE) 파일을 트리 뷰로 볼 수 있는 Python 모듈입니다. IDA Pro 및 Rekall과 함께 사용하여 메모리 내 PE 파일을 덤프하고 임포트를 재구성할 수도 있습니다. | Kitploit
도구/GitHubGitHub/blackberry/pe_tree
Memory ForensicsVulnerability AnalysisReverse EngineeringDebuggersForensicsMalware AnalysisDigital ForensicsBinary AnalysisArchived
GitHubblackberry/pe_tree

pe_tree

pefile과 PyQt5를 사용하여 Portable Executable (PE) 파일을 트리 뷰로 볼 수 있는 Python 모듈입니다. IDA Pro 및 Rekall과 함께 사용하여 메모리 내 PE 파일을 덤프하고 임포트를 재구성할 수도 있습니다.

1.3k173194년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

PE Tree

PE Tree는 pefile과 PyQt5를 사용하여 Portable Executable (PE) 파일을 트리 뷰로 보여주는 Python 모듈입니다. 또한 IDA Pro, Ghidra, Volatility, Rekall, minidump와 함께 사용하여 메모리 내 PE 파일을 보고 덤프하며, 임포트 테이블 재구성을 수행할 수 있습니다.

목차

  1. 기능
  2. 애플리케이션
    • 요구 사항
    • 기능
    • 설치
      • Windows
      • Mac/Linux
      • 개발자용
    • 사용법
    • 다크 모드
  3. IDAPython
    • 요구 사항
    • 기능
    • 설치
      • setuptools 사용
      • 수동 설치
      • 개발자용
    • 사용법
    • 예제
      • 메모리 내 PE 파일 덤프
  4. Rekall
    • 요구 사항
    • 기능
    • 설치
    • 사용법
  5. Volatility
    • 요구 사항
    • 기능
    • 설치
    • 사용법
  6. Ghidra
    • 요구 사항
    • 기능
    • 설치
    • 사용법
  7. Minidump
    • 요구 사항
    • 기능
    • 설치
    • 사용법
  8. 설정
    • 개요
    • 옵션
    • 위치
    • 타사 데이터 공유
  9. 문제 해결
  10. 기여
    • 개발자 문서
  11. 라이선스

기능

  • 다음을 위한 플러그인이 포함된 독립형 애플리케이션:
    • IDA Pro
    • Ghidra
    • Volatility
    • Rekall
    • Minidump
    • Carving
  • Windows, Linux, Mac 지원
  • 다음에서 PE 파일 및 메모리 이미지 파싱:
    • 파일 시스템
    • ZIP 아카이브 (암호 보호 포함)
    • Windows 메모리 덤프 (raw, EWF, vmem 등)
    • 활성 Windows 메모리 (rekall 사용)
    • Windows Minidump
    • IDA Pro 데이터베이스
    • Ghidra 데이터베이스
    • 바이너리 파일 카빙
  • 무지개 PE 맵:
    • PE 구조, 크기 및 파일 위치의 개략적인 개요 제공
    • PE 샘플의 빠른 시각적 개요 및 비교 가능
  • 다음 PE 헤더를 트리 뷰로 표시:
    • MZ 헤더
    • DOS 스텁
    • Rich 헤더
    • NT/파일/옵션 헤더
    • 데이터 디렉터리
    • 섹션
    • 임포트
    • 익스포트
    • 디버그 정보
    • 로드 구성
    • TLS
    • 리소스
    • 버전 정보
    • 인증서
    • 오버레이
  • 다음에서 데이터 추출 및 저장:
    • DOS 스텁
    • 섹션
    • 리소스
    • 인증서
    • 오버레이
    • 추가 조작을 위해 CyberChef로 내보내기
  • VirusTotal 검색 수행:
    • 파일 해시
    • PDB 경로
    • 타임스탬프
    • 섹션 해시/이름
    • 임포트 해시/이름
    • 익스포트 이름
    • 리소스 해시
    • 인증서 일련번호
  • 메모리에서 로드된 PE 이미지 덤프:
    • 섹션 포인터 및 크기 수정
    • PE 헤더 수정:
      • 불필요한 데이터 디렉터리 포인터 제거
      • PE 체크섬 재계산
      • 엔트리 포인트 업데이트
    • 여러 방법을 사용하여 임포트 주소 및 디렉터리 테이블(IAT/IDT) 재구성:
      1. 기존 IAT/IDT 사용
      2. 기존 IAT에서 IDT 재구성
      3. 디스어셈블리(IDA Pro, Ghidra 또는 capstone 사용)에서 IAT 및 IDT 재구성

애플리케이션

PE Tree 독립형 애플리케이션은 파일, 폴더 및 ZIP 아카이브에서 휴대용 실행 파일을 찾습니다.

PE Tree 독립형 애플리케이션

요구 사항

  • Python 3.5+

기능

  • PE 파일에 대한 파일 및 폴더 스캔
  • ZIP 아카이브에서 PE 파일 추출 (infected 포함 암호 보호)
  • 바이너리 파일에서 PE 파일 카빙
  • VA/RVA를 더블 클릭하여 capstone으로 디스어셈블
  • 헥스 덤프 데이터

설치

pip 사용 (권장)

새로운 가상 환경에서 pip를 사용하여 GitHub에서 직접 설치:

Windows
> virtualenv env
> env\Scripts\activate
> pip install --upgrade pip
> pip install git+https://github.com/blackberry/pe_tree.git
Mac/Linux
$ python3 -m venv env
$ source ./env/bin/activate
$ pip install --upgrade pip
$ pip install git+https://github.com/blackberry/pe_tree.git

개발자용

Git 클론 및 개발용 설정:

Windows
> git clone https://github.com/blackberry/pe_tree.git
> cd pe_tree
> virtualenv env
> env\Scripts\activate
> pip install -e .
Mac/Linux
$ git clone https://github.com/blackberry/pe_tree.git
$ cd pe_tree
$ python3 -m venv env
$ source ./env/bin/activate
$ pip install -e .

사용법

PE Tree를 실행하고 파일, 폴더 및 ZIP 아카이브에서 휴대용 실행 파일을 스캔:

$ pe-tree -h
usage: pe-tree [-h] [filenames [filenames ...]]

PE-Tree

positional arguments:
  filenames   Path(s) to file/folder/zip

optional arguments:
  -h, --help  show this help message and exit

PE Tree를 실행하고 바이너리 파일에서 휴대용 실행 파일을 카빙 시도:

$ pe-tree-carve -h
usage: pe-tree-carve [-h] filename

PE-Tree (Carve)

positional arguments:
  filename    Path to file to carve

optional arguments:
  -h, --help  show this help message and exit

다크 모드

다크 모드는 QDarkStyle 설치로 활성화 가능:

$ pip install qdarkstyle

IDAPython

PE Tree IDAPython 플러그인은 IDA 데이터베이스에서 휴대용 실행 파일을 찾습니다.

PE Tree IDAPython 플러그인

요구 사항

  • IDA Pro 7.0+ (Python 2.7)
  • IDA Pro 7.4+ (Python 2.7 또는 3.5+)

기능

  • PE 파일 구조의 쉬운 탐색
  • PE Tree에서 메모리 주소를 더블 클릭하여 IDA-view 또는 hex-view에서 보기
  • IDB에서 메모리 내 PE 이미지 검색 및;
    • 임포트 재구성 (IAT + IDT)
    • 재구성된 PE 파일 덤프
    • IDB에 PE 파일 구조 자동 주석 처리
    • IDB에 IAT 오프셋 자동 레이블 지정

설치

IDAPython 플러그인으로 설치 및 실행하려면 setuptools를 사용하거나 수동으로 설치할 수 있습니다.

setuptools 사용

  1. pe_tree를 다운로드하고 IDA에서 사용하는 전역 Python 인터프리터에 설치:

    $ git clone https://github.com/blackberry/pe_tree.git
    $ cd pe_tree
    $ python setup.py develop --ida
    
  2. pe_tree_ida.py를 IDA 플러그인 폴더에 복사

수동 설치

  1. pe_tree를 다운로드하고 IDA에서 사용하는 전역 Python 인터프리터에 요구 사항 설치:

    $ git clone https://github.com/blackberry/pe_tree.git
    $ cd pe_tree
    $ pip install -r requirements.txt
    
  2. pe_tree_ida.py 및 ./pe_tree/의 내용을 IDA 플러그인 폴더에 복사

개발자용

플러그인으로 설치하지 않고 IDA에서 스크립트로 실행하려면 먼저 전역 Python 설치에 pe_tree 패키지 요구 사항을 설치:

$ pip install -r requirements.txt

그런 다음 IDA에서 pe_tree_ida.py 실행:

File -> Script file... -> pe_tree_ida.py -> Open

IDA 플러그인 폴더

OS플러그인 폴더
Windows%ProgramFiles%\IDA Pro 7.X\plugins
Linux/opt/ida-7.X/plugins
Mac~/.idapro/plugins

사용법

  1. IDA Pro를 실행하고 PE 파일 디스어셈블 (최상의 결과를 위해 항상 Manual Load 및 Load Resources 선택!)

  2. PE Tree 플러그인 로드:

    Edit -> Plugins -> PE Tree

예제

메모리 내 PE 파일 덤프

다음은 패킹된 PE 파일(예: MPRESS 또는 UPX)을 덤프하고 임포트를 재구성하는 기본 단계입니다 (이미지 베이스/엔트리 포인트가 표준적이라고 가정):

  1. IDA Pro를 실행하고 MPRESS 또는 UPX로 패킹된 PE 파일 디스어셈블 (Manual Load 및 Load Resources 선택)

  2. 디버거(Windows 또는 Bochs)를 선택하고 OEP(보통 0x00401000, 항상 그렇지는 않음!)까지 실행

  3. 이 시점에서 메모리 스냅샷(모든 세그먼트 저장)을 찍고 나중을 위해 IDB 저장 가능

  4. IDA가 모든 코드를 찾았는지 확인:

    Options -> General -> Analysis -> Reanalyze program

  5. PE Tree IDAPython 플러그인 열기, 오른쪽 창에서 마우스 오른쪽 버튼 클릭 후 선택:

    Add PE -> Search IDB

    IDB에서 MZ/PE 헤더를 스캔하고 찾은 모듈을 표시합니다.

  6. HEADER-0x00400000 (또는 적절한 모듈 이름)에서 마우스 오른쪽 버튼 클릭 후 Dump... 선택

  7. AddressOfEntryPoint 지정 (보통 0x1000, 항상 그렇지는 않음!)

  8. Rebuild IDT/IAT가 선택되었는지 확인

  9. 덤프!

도구 다운로드