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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
blutter — Flutter 모바일 애플리케이션 리버스 엔지니어링 도구 | Kitploit
도구/GitHubGitHub/worawit/blutter
Android SecurityReverse EngineeringMobile SecurityBinary Analysis
GitHubworawit/blutter

blutter

Flutter 모바일 애플리케이션 리버스 엔지니어링 도구

저장소 보기
2.6k3593일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

B(l)utter

Flutter 모바일 애플리케이션 리버스 엔지니어링 도구 (Dart AOT 런타임 컴파일 방식)

현재 이 도구는 Android libapp.so (arm64 전용)만 지원합니다. 또한 최신 Dart 버전에서만 작동합니다.

높은 우선순위의 누락된 기능은 TODO를 참조하세요.

환경 설정

이 애플리케이션은 C++20 Formatting 라이브러리를 사용합니다. g++>=13, Clang>=16과 같은 매우 최신의 C++ 컴파일러가 필요합니다.

Linux OS 사용을 권장합니다 (Debian sid/trixie에서만 테스트됨). 설정이 쉽기 때문입니다.

Debian Unstable (gcc 13)

참고: gcc>=13을 자체 메인 저장소에서 제공하는 Debian/Ubuntu 버전만 사용하세요. 오래된 Debian/Ubuntu 버전에 포팅된 gcc는 작동하지 않습니다.

  • 빌드 도구 및 종속성 설치
root@kitploit:~
apt install python3-pyelftools python3-requests git cmake ninja-build \
    build-essential pkg-config libicu-dev libcapstone-dev

Windows

  • git과 Python 3 설치
  • "C++를 사용한 데스크톱 개발" 및 "C++ CMake 도구"가 포함된 최신 Visual Studio 설치
  • 필수 라이브러리 (libcapstone 및 libicu4c) 설치
root@kitploit:~
python scripts\init_env_win.py
  • "x64 Native Tools 명령 프롬프트" 시작

macOS Sequoia

  • XCode 설치
  • 필수 도구 설치
root@kitploit:~
brew install cmake ninja pkg-config icu4c capstone
pip3 install pyelftools requests

macOS Ventura 및 Sonoma (clang 16)

  • XCode 설치
  • clang 16 및 필수 도구 설치
root@kitploit:~
brew install llvm@16 cmake ninja pkg-config icu4c capstone
pip3 install pyelftools requests

사용법

apk 파일에서 "lib" 디렉토리 추출

root@kitploit:~
python3 blutter.py path/to/app/lib/arm64-v8a out_dir

blutter.py는 flutter 엔진에서 Dart 버전을 자동으로 감지하고 blutter 실행 파일을 호출하여 libapp.so에서 정보를 가져옵니다.

필요한 Dart 버전에 대한 blutter 실행 파일이 없으면 스크립트가 자동으로 Dart 소스 코드를 체크아웃하고 컴파일합니다.

업데이트

git pull을 사용하여 업데이트한 후, --rebuild 옵션과 함께 blutter.py를 실행하여 실행 파일을 강제로 재빌드할 수 있습니다.

root@kitploit:~
python3 blutter.py path/to/app/lib/arm64-v8a out_dir --rebuild

출력 파일

  • asm/* libapp 디스어셈블리 (심볼 포함)
  • blutter_frida.js 대상 애플리케이션용 Frida 스크립트 템플릿
  • objs.txt Object Pool의 완전한 (중첩된) 객체 덤프
  • pp.txt Object Pool의 모든 Dart 객체

디렉토리

  • bin "blutter_dartvm<ver>_<os>_<arch>" 형식의 각 Dart 버전에 대한 blutter 실행 파일 포함
  • blutter 소스 코드 포함. Dart VM 라이브러리와 함께 빌드 필요
  • build 빌드 프로젝트 포함. 빌드 프로세스 완료 후 삭제 가능
  • dartsdk Dart 런타임 체크아웃 포함. 빌드 프로세스 완료 후 삭제 가능
  • external Windows 전용 타사 라이브러리 포함
  • packages Dart 런타임 정적 라이브러리 포함
  • scripts Dart 가져오기/빌드용 Python 스크립트 포함

개발을 위한 Visual Studio 솔루션 생성

Windows에서 Blutter를 개발할 때 Visual Studio를 사용합니다. --vs-sln 옵션을 사용하여 Visual Studio 솔루션을 생성할 수 있습니다.

root@kitploit:~
python blutter.py path\to\lib\arm64-v8a build\vs --vs-sln

TODO

  • 추가 코드 분석
    • 함수 인자 및 반환 타입
    • 코드 패턴에 대한 일부 의사 코드
  • 더 나은 Frida 스크립트 생성
    • 더 많은 내부 클래스
    • 객체 수정
  • 난독화된 앱 (여전히 많은 함수 누락)
  • iOS 바이너리 읽기
  • apk 또는 ipa를 입력으로 지원
도구 다운로드