
정적, 동적 및 리버스 엔지니어링 도구를 통합하여 모바일 애플리케이션의 포괄적인 취약점 평가 및 침투 테스트를 수행하는 모듈식 Android APK 보안 분석 프레임워크
____ __ ____ __
/ /\ \__ ______ _____/ /________ _/ _/___ _________ ___ _____/ /_
/ / / / / / / __ `/ __ / ___/ __ `// // __ \/ ___/ __ \/ _ \/ ___/ __/
/ /_/ / /_/ / /_/ / /_/ / / / /_/ // // / / (__ ) /_/ / __/ /__/ /_
\___\\_\__,_/\__,_/\__,_/_/ \__,_/___/_/ /_/____/ .___/\___/\___/\__/
/_/
QuadraInspect는 AndroPass, APKUtil, RMS 및 MobFS를 통합한 Android 프레임워크로, Android 애플리케이션의 보안을 분석하기 위한 강력한 도구를 제공합니다. AndroPass는 Android 애플리케이션의 인증 및 권한 부여 메커니즘의 보안을 분석하는 데 초점을 맞춘 도구이며, APKUtil은 APK 파일에서 가치 있는 정보를 추출하는 도구입니다. 마지막으로, MobFS와 RMS는 애플리케이션의 스토리지를 가상 환경에 마운트하여 애플리케이션의 파일 시스템 분석을 용이하게 합니다.
이 세 가지 도구를 결합함으로써 QuadraInspect는 Android 애플리케이션의 취약점 분석에 대한 포괄적인 접근 방식을 제공합니다. 이 프레임워크는 개발자, 보안 연구원 및 침투 테스터가 자신 또는 타사 애플리케이션의 보안을 평가하는 데 사용할 수 있습니다. QuadraInspect는 세 가지 도구 모두를 위한 통합 인터페이스를 제공하여 사용하기 쉽게 만들고 포괄적인 취약점 분석을 수행하는 데 필요한 시간을 단축합니다. 궁극적으로 이 프레임워크는 Android 애플리케이션의 보안을 강화하고 사용자의 민감한 데이터를 잠재적인 위협으로부터 보호하는 것을 목표로 합니다.
QuadraInspect는 표준 Python 프로젝트로 패키징되어 있으며
uv 패키지 관리자로 관리됩니다.
가장 빠른 방법 — uv, 모든 Python 의존성, 그리고 모든
통합 도구와 애드온을 단일 명령으로 설치합니다:
git clone https://github.com/morpheuslord/QuadraInspect
cd QuadraInspect
./install.sh # Linux / macOS (use sudo where tools require it)
Windows에서는 복제된 디렉터리에서 install.bat을 실행하세요. --deps-only를 전달하면
Python 의존성만 설치하고 도구는 건너뜁니다.
아래의 단계별 지침은 동일한 작업을 수동으로 수행합니다.
curl -LsSf https://astral.sh/uv/install.sh | sh
(Windows 및 대체 방법은 uv 설치 가이드를 참조하세요.)
git clone https://github.com/morpheuslord/QuadraInspect
cd QuadraInspect
uv sync
uv sync는 격리된 가상 환경을 생성하고 잠긴 의존성 세트(uv.lock)에서
QuadraInspect를 설치합니다. 번들된 분석 스크립트는 몇 가지 추가 라이브러리를 가져옵니다.
다음으로 설치하세요:
uv sync --extra tools
uv run quadrainspect # interactive (frame) mode
모듈로 실행하거나 레거시 진입점을 통해 실행할 수도 있습니다:
uv run python -m quadrainspect
uv run python main.py
Linux/macOS에서는 일부 통합 도구가 상승된 권한을 필요로 합니다. 필요한 경우
sudo로 명령을 실행하세요.
QuadraInspect가 로드되면 다음을 실행하세요:
QuadraInspect Main>> START install_tools
통합 도구 와 모든 선택적 애드온을 한 단계로 설치하려면 다음을 사용하세요:
QuadraInspect Main>> START full_install
도구는 tools 디렉터리에 다운로드되며 각 도구의 자체 설정 단계가
자동으로 실행됩니다.
애드인은 선택적이며 커뮤니티에서 기여한 도구입니다. 이들은
quadrainspect/tools/addins.py에 AddOn 객체로 선언되므로, 새로운 애드인을 기여하는 것은
의존성과 설치 콜러블을 가진 단일 항목을 추가하는 것일 뿐입니다 — 편집할
switch/match 문이 없습니다.
update addins 또는
update-addins 명령을 사용하여 업데이트할 수 있으며, 이는 체크아웃에서 git pull을 수행합니다.START addins 명령으로
설치하세요. 둘 다 Java 런타임 환경이 필요합니다.각 모듈에는 명령과 설명이 상세하고 작동을 위해 변경할 수 있도록 도와주는 도움말 기능이 있습니다.
sudo 사용자로 실행해야 합니다Admin으로 수행할 수 있으며 나머지는 모두 일반 사용자로 수행할 수 있습니다원활한 작동을 위해 반드시 해결해야 할 핵심 사항은 다음과 같습니다:
args를 사용하거나 도구 내에서 SET target을 사용하여 선언할 수 있습니다.target 폴더에 배치되어야 합니다. 모든 도구가 해당 폴더에서 대상 파일을 검색하기 때문입니다.2가지 모드가 있습니다:
|
└─> F mode
└─> A mode
f 모드는 프롬프트 등과 함께 프레임워크의 대화형 변형을 사용하기 위한 활성 인터페이스를 얻는 모드입니다.

F 모드는 일반 모드이며 쉽게 사용할 수 있습니다
A 모드 또는 인수 모드는 인수를 통해 입력을 받고 사용자의 개입 없이 명령을 실행합니다. 이는 현재 메인 메뉴로 제한되며 향후 통합된 코드까지 이 기능을 확장할 계획입니다.
uv run quadrainspect --target <APK_file> --mode argm --command install_tools/tools_name/apkleaks/mobfs/rms/apkleaks

전체 도구의 메인 메뉴에는 다음과 같은 옵션과 명령이 있습니다:
Frame mode:
| Command | Description |
|---|---|
SET target | SET the name of the targetfile |
START install_tools | If not installed this will install the tools |
START full_install | Install all tools and add-ons at once |
LIST tools_name | List out the Tools Integrated |
START apkleaks | Use APKLeaks tool |
START mobfs | Use MOBfs for dynamic and static analysis |
START andropass | Use AndroPass APK analizer |
START addins | Starts the Extra tools installer |
update addins | Updates the extra tools installer |
help | Display help menu |
SHOW banner | Display banner |
quit | Quit the program |
Args mode:
| Command | Description |
|---|---|
install_tools | If not installed this will install the tools |
full-install | Install all tools and add-ons at once |
tools_name | List out the Tools Integrated |
apkleaks | Use APKLeaks tool |
mobfs | Use MOBfs for dynamic and static analysis |
andropass | Use AndroPass APK analizer |
addins | Starts the Extra tools installer |
addins | Updates the extra tools installer |
help | Display help menu |
banner | Display banner |
위에서 언급했듯이 대상은 도구를 사용하기 전에 설정되어야 합니다.
APKLeaks 메뉴도 매우 간단하며 고려해야 할 사항은 몇 가지뿐입니다:
SET output 및 SET json-out 옵션은 실제 파일이 아닌 파일 이름을 받으며 result 디렉터리에 출력을 생성합니다.SET pattern 옵션은 json 패턴 파일의 이름을 받습니다. JSON 파일은 pattern 디렉터리에 위치해야 합니다| OPTION | SET Value |
|---|---|
SET output | Output for the scan data file name |
SET arguments | Additional Disassembly arguments |
SET json-out | JSON output file name |
SET pattern | The pre-searching pattern for secrets |
help | Displays help menu |
return | Return to main menu |
quit | Quit the tool |
Mobfs는 매우 간단하며 기본적으로 포트 5000인 포트 번호만 주의하면 됩니다. 프로그램을 시작하고 브라우저에서 127.0.0.1:5000으로 연결하기만 하면 됩니다.
AndroPass도 매우 간단하며 파일을 입력으로 받아 다른 입력 없이 작업을 수행합니다.
QuadraInspect는 모듈식 객체 지향 아키텍처를 따릅니다. 프레임워크 코어는
quadrainspect 패키지에 있으며 각 통합 도구는 자체 포함된
클래스입니다.
quadrainspect/
├── cli.py # argument parsing / process entry point
├── app.py # orchestrator + shared frame/argument menu spec
├── shell.py # interactive REPL base class
├── registry.py # command registry (dispatch + auto-generated help)
├── runner.py # centralised subprocess execution (no shell injection)
├── platform.py # OS abstraction
├── session.py # workspace layout + runtime state (target, paths)
├── console.py # shared console, logging, banner
├── net.py # dependency-free downloads
├── exceptions.py # typed error hierarchy
└── tools/ # one class per integrated tool
├── base.py # Tool / OneShotTool / InteractiveTool + ToolContext
├── apkleaks.py, apkeditor.py, andropass.py, backdoor.py,
├── mobfs.py, rms.py, installer.py, addins.py, updater.py
주요 설계 포인트: