Communitygithub.com

binary-ninja-reverse

Binary Ninja를 사용한 바이너리 역공학 분석을 지원합니다. HLIL/MLIL/LLIL 검사, 문자열/임포트/익스포트 조회, 참조 추적, 타입 분석, 패치 검토, Python API 자동화 및 Binary Ninja MCP/로컬호스트 HTTP 통합을 포함합니다.

binary-ninja-reverse란 무엇인가요?

이 스킬은 Binary Ninja를 활용한 바이너리 역공학 분석을 수행합니다. HLIL, MLIL(SSA), LLIL과 같은 중간 표현(IL)을 지원하여 데이터 흐름 분석과 제어 흐름 분석을 강화합니다. 사용자는 문자열, 임포트, 익스포트, 참조 추적, 타입 정의, 함수 디컴파일, 바이트 패치 등을 직관적인 워크플로우로 수행할 수 있습니다. 상용툴인 Binary Ninja는 별도 라이선스가 필요하며, 오픈소스 MCP 브리지(fosdickio/binary_ninja_mcp)를 통해 선택적으로 통합할 수 있습니다. 이 스킬은 IDA, Ghidra, radare2 분석 결과의 독립적인 검증 도구로도 사용되며, 모든 분석 결과는 증거 → 발견 → 경로 체인으로 보고됩니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/binary-ninja-reverse

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Binary Ninja 역공학 엔지니어링

사용자가 Binary Ninja를 명시적으로 선택했거나, Binary Ninja의 중간 표현(IL)이 데이터 흐름 분석에 실질적으로 도움이 될 때, 또는 IDA/Ghidra/radare2 결과에 독립적인 교차 검증이 필요할 때 Binary Ninja를 사용합니다.

안전하게 시작하기

  1. 대상에 대해 작업을 수행하기 전에 관련 리포지토리 케이스 범위가 준비되었는지 확인합니다.
  2. skills/tool-index.md에서 binaryninja를 확인합니다. Binary Ninja는 상용 소프트웨어이며 유효한 Vector 35 라이선스로 수동 설치해야 합니다.
  3. 패치를 적용하거나 데이터베이스를 저장할 때는 복사본에서 작업합니다.
  4. 분석 결과를 보고하기 전에 임포트/익스포트, 엔트리 포인트, 아키텍처, 파일 해시를 기록합니다.

통합 방식 선택

  • GUI 또는 Python API: Binary Ninja가 이미 실행 중이거나 사용자가 직접 대화형 분석을 원할 때 선호합니다.
  • 커뮤니티 MCP 브리지: 명시적으로 요청된 경우에만 사용하며, 타사 플러그인 경계를 검토한 후 사용합니다. Binary Ninja HTTP 리스너는 127.0.0.1:9009에 유지하고, 기본적으로 네트워크 노출을 활성화하지 않습니다.
  • 대체: Binary Ninja를 사용할 수 없거나 라이선스/API로 대상을 열 수 없는 경우 ghidra-reverse, ida-reverse 또는 radare2를 사용합니다.

검토된 커뮤니티 통합은 fosdickio/binary_ninja_mcp이며, GPL-3.0 라이선스, 플러그인 메타데이터 버전 1.1.0, 최소 Binary Ninja 빌드 4000을 요구합니다. 이 리포지토리는 공식 Vector 35 구성 요소가 아닙니다. 이 스킬은 2026-09-03일자 커밋 8c5134ee46e2bf44f9a4d846bd971c3e39b3e306에 대해 확인되었습니다.

Binary Ninja 측은 플러그인 관리자 또는 검토된 소스에서 설치합니다. MCP stdio 브리지의 경우, 제한 없는 패키지 대신 게시된 브리지 버전을 고정하여 사용합니다:

npx -y [email protected] --host 127.0.0.1 --port 9009

해당 명령은 사용자가 선택한 MCP 클라이언트에만 등록합니다. Binary Ninja가 실행 중이고 바이너리가 열려 있으며 localhost 플러그인 엔드포인트가 응답할 때까지 브리지는 준비되지 않습니다.

분석 워크플로우

  1. 열려 있는 바이너리를 열거하고 의도한 뷰를 선택합니다.
  2. 바이너리 상태, 엔트리 포인트, 세그먼트, 임포트, 익스포트, 대표 문자열을 캡처합니다.
  3. 함수를 단독으로 해석하기 전에 호출 사이트와 참조를 추적합니다.
  4. 읽기 쉬운 로직에는 HLIL을, 데이터 흐름에는 MLIL SSA를, 리프팅 시 명령어 수준 동작이 손실되는 경우에는 LLIL/디스어셈블리를 사용합니다.
  5. 이름, 주석, 타입을 점진적으로 적용하고 증거에 원래 주소를 유지합니다.
  6. 바이트 패치, 프로토타입 변경, 저장된 파일 쓰기를 변형으로 간주합니다. 요청된 경우에만 수행하고 원본 아티팩트를 보존합니다.
  7. 영향력이 큰 결론은 두 번째 증거 소스 또는 다른 디스어셈블러로 교차 검증합니다.

유용한 MCP 기능 패밀리에는 바이너리/뷰 선택, list_imports, list_exports, list_strings, decompile_function, get_il, 호출자/피호출자, 참조, 타입, 주석, 이름 변경, 바이트 패치가 포함됩니다. 모든 업스트림 함수가 존재한다고 가정하지 말고, 실시간 도구 목록을 확인하십시오.

출력

구체적인 주소, 함수 이름, IL 레벨, 지원 문자열/임포트, 신뢰도 및 재현 단계를 보고합니다. 리포지토리 전체에서 사용되는 증거 → 발견 → 경로 체인을 유지합니다.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

관련 스킬