IDA Pro를 LLM 클라이언트에 연결해 리버스 엔지니어링 중 AI 어시스턴트가 바이너리를 디컴파일하고 주석을 달거나 이름을 바꿀 수 있게 하는 MCP 서버입니다.
JusticeRage/Gepetto
디컴파일된 함수를 LLM에 보내 기능 설명, 주석 추가, 변수명 제안을 받을 수 있는 IDA Pro 플러그인입니다.
- 스타
- 3,487
- 포크
- 333
- 열린 이슈
- 16
- 마지막 커밋
- 3개월 전
어떤 프로젝트인가요?
Gepetto는 IDA Pro(7.6 이상)용 Python 플러그인으로, 대규모 언어 모델을 활용해 Hex-Rays 디컴파일러가 생성한 함수의 의미를 파악할 수 있도록 돕습니다. 의사 코드 뷰에서 모델에 함수의 동작을 설명하거나 코드에 주석을 추가하고 변수명을 바꾸도록 요청할 수 있습니다.
Anthropic, OpenAI, Google Gemini, Azure OpenAI, Groq, Together, Novita AI, Kluster.ai를 비롯한 다양한 제공자를 지원하며, Ollama 또는 LM Studio로 실행하는 로컬 모델도 사용할 수 있습니다. 사용자는 Edit > Gepetto 메뉴에서 모델을 선택하고 설정 파일에 API 키를 지정합니다. 사용자 지정 제공자는 바로 사용할 수 있는 Python 파일이나 설치 가능한 패키지로 추가할 수 있습니다.
이 플러그인을 사용하려면 Hex-Rays 디컴파일러가 필요합니다. 결과는 범용 모델이 생성하므로 틀릴 수 있으며, 분석가가 확인해야 합니다.
핵심 기능
- 01디컴파일된 함수의 목적을 알기 쉬운 말로 설명합니다.
- 02디컴파일된 코드에 주석을 추가하고 더 나은 변수명을 제안합니다.
- 03Ollama와 LM Studio를 통한 로컬 모델 및 다양한 클라우드 제공자를 지원합니다.
- 04IDA의 Edit 메뉴에서 모델을 전환할 수 있습니다.
- 05바로 사용할 수 있는 Python 파일이나 entry point 패키지 형태로 사용자 지정 제공자를 추가할 수 있습니다.
활용 사례
- IDA Pro에서 낯선 바이너리를 더 빠르게 분석합니다.
- 리버스 엔지니어링 중 크거나 난독화된 함수의 요약을 빠르게 확인합니다.
- 코드를 사내 환경에 유지해야 할 때 로컬 모델로 분석을 실행합니다.
빠른 시작
- 1
hcli 도구를 설치하세요
pip install ida-hcli - 2
Gepetto 플러그인을 IDA에 설치하세요
hcli plugin install gepetto - 3
IDA 사용자 디렉터리의 config.ini에 API 키를 추가하세요
사용 전 알아둘 점
- Hex-Rays 디컴파일러가 포함된 IDA Pro 7.6 이상이 필요합니다.
- 지원되는 클라우드 모델 대부분은 유료 API 키와 해당 제공업체의 결제 수단이 필요합니다.
- 모델 출력은 범용적이며 틀릴 수 있으므로 확인이 필요합니다.
- 카피레프트 라이선스인 GPL-3.0에 따라 라이선스가 부여됩니다.
포함된 컬렉션
토픽
자주 묻는 질문
- Gepetto은(는) 무엇인가요?
- 디컴파일된 함수를 LLM에 보내 기능 설명, 주석 추가, 변수명 제안을 받을 수 있는 IDA Pro 플러그인입니다. Gepetto는 IDA Pro(7.6 이상)용 Python 플러그인으로, 대규모 언어 모델을 활용해 Hex-Rays 디컴파일러가 생성한 함수의 의미를 파악할 수 있도록 돕습니다. 의사 코드 뷰에서 모델에 함수의 동작을 설명하거나 코드에 주석을 추가하고 변수명을 바꾸도록 요청할 수 있습니다.
- Gepetto은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- Gepetto은(는) GPL-3.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- Gepetto은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. Gepetto의 마지막 커밋은 2026년 8월 15일입니다.
- Gepetto은(는) 어디에 사용할 수 있나요?
- IDA Pro에서 낯선 바이너리를 더 빠르게 분석합니다. 리버스 엔지니어링 중 크거나 난독화된 함수의 요약을 빠르게 확인합니다. 코드를 사내 환경에 유지해야 할 때 로컬 모델로 분석을 실행합니다.
- Gepetto는 어떻게 설치하나요?
- hcli 도구를 설치하세요: pip install ida-hcli Gepetto 플러그인을 IDA에 설치하세요: hcli plugin install gepetto IDA 사용자 디렉터리의 config.ini에 API 키를 추가하세요
- Gepetto은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/JusticeRage/Gepetto
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
LLM 클라이언트가 바이너리를 디컴파일하고 분석하도록 Ghidra의 리버스 엔지니어링 기능을 제공하는 MCP 서버입니다.
진입점에서 실행 경로를 추적하고 관련 함수를 클러스터링하며, Gemini로 바이너리 동작을 설명하는 IDA Pro 플러그인입니다.
AI 에이전트가 네이티브 바이너리, Electron 앱, .NET 어셈블리, 웹사이트를 역공학하도록 돕는 MCP 서버 및 CLI입니다.
JADX GUI에서 디컴파일된 Android APK를 실시간으로 분석하도록 Claude 같은 LLM을 지원하는 JADX 플러그인 및 Python MCP 서버입니다.
리버스 엔지니어링 워크플로에 AI 기반 코드 설명, 채팅, 에이전트 분석 기능을 더하는 Ghidra용 LLM 확장 프로그램입니다.