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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Vba2Graph — Vba2Graph - VBA 코드에서 호출 그래프 생성, 악성 문서 분석을 용이하게 하기 위해. | Kitploit
도구/GitHubGitHub/malwarecantfly/vba2graph
Static AnalysisCode AnalysisReverse EngineeringMalware Analysis
GitHubmalwarecantfly/vba2graph

Vba2Graph

Vba2Graph - VBA 코드에서 호출 그래프 생성, 악성 문서 분석을 용이하게 하기 위해.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Vba2Graph

악성 Office 매크로 분석에 시간을 낭비하는 보안 연구자들을 위한 도구입니다.

VBA 호출 그래프를 생성하며, 잠재적인 악성 키워드를 강조 표시합니다.

악성 매크로의 빠른 분석과 실행 흐름 이해를 쉽게 해줍니다.

@MalwareCantFly

기능

  • 키워드 강조
  • VBA 속성 지원
  • 외부 함수 선언 지원
  • "_Change" 실행 트리거를 사용하는 까다로운 매크로
  • 멋진 색상 구성!

장점

    ✓ 꽤 빠름

    ✓ 야생에서 관찰된 대부분의 악성 매크로에서 잘 작동함

단점

    ✗ 정적 (동적으로 해석된 호출은 인식되지 않음)

예제

예제 1:

Trickbot 다운로더 - 초기 트리거로 객체 Resize 이벤트를 사용하고, 이후 TextBox_Change 트리거를 사용합니다.

Example 1

예제 2:

Example2

더 많은 사례는 Examples 폴더를 확인하세요.

설치

oletools 설치:

root@kitploit:~
https://github.com/decalage2/oletools/wiki/Install

Python 요구사항 설치

root@kitploit:~
pip3 install -r requirements.txt

Graphviz 설치

Windows

Graphviz 설치:

root@kitploit:~
https://graphviz.gitlab.io/download/#windows

PATH 환경 변수에 "dot.exe"를 추가하거나 다음을 실행:

root@kitploit:~
set PATH=%PATH%;C:\Program Files (x86)\Graphviz2.38\bin

Mac

root@kitploit:~
brew install graphviz

Ubuntu

root@kitploit:~
sudo apt-get install graphviz

Arch

root@kitploit:~
sudo pacman -S graphviz

사용법

root@kitploit:~
usage: vba2graph.py [-h] [-o OUTPUT] [-c {0,1,2,3}] (-i INPUT | -f FILE)

optional arguments:
  -h, --help            show this help message and exit
  -o OUTPUT, --output OUTPUT
                        output folder (default: "output")
  -c {0,1,2,3}, --colors {0,1,2,3}
                        color scheme number [0, 1, 2, 3] (default: 0 - B&W)
  -i INPUT, --input INPUT
                        olevba generated file or .bas file
  -f FILE, --file FILE  Office file with macros

사용 예제 (모든 플랫폼)

Python 2 릴리스는 Releases 섹션에서 사용 가능하지만 더 이상 지원되지 않습니다.

root@kitploit:~
# Office 파일에서 직접 호출 그래프 생성 [tnx @doomedraven]
python3 vba2graph.py -f malicious.doc -c 2    

# olevba로 VBA 코드 생성 후 vba2graph로 전달
olevba3 malicious.doc | python3 vba2graph.py -c 1

# VBA 코드에서 호출 그래프 생성
python3 vba2graph.py -i vba_code.bas -o output_folder

출력

출력 폴더에 4개의 폴더가 생성됩니다:

  • png: 찾고 있는 실제 그래프 이미지
  • svg: 동일한 그래프 이미지, 벡터 그래픽 형식
  • dot: 그래프 이미지를 만드는 데 사용된 dot 파일
  • bas: 스크립트가 인식한 VBA 함수 코드 (디버깅용)

배치 처리

Mac/Linux:

batch.sh 스크립트 파일이 포함되어 있으며, 악성 문서가 있는 입력 폴더에서 olevba와 vba2graph를 실행합니다.

output 디렉토리를 삭제합니다. 주의해서 사용하세요.

라이선스

이 프로젝트의 코드는 EPL-2.0 라이선스에 따라 라이선스가 부여됩니다.

이 프로젝트는 다음 타사 오픈소스 도구 및 라이브러리를 사용합니다. 해당 라이선스를 참고하시기 바랍니다.

  • oletools (라이선스)
  • networkx (라이선스)
  • pydot (라이선스)
  • graphviz (라이선스)
도구 다운로드