AI 어시스턴트가 바이너리를 분석하도록 Ghidra를 제어하는 MCP 서버로, 디컴파일·이름 변경·주석 추가 등에 쓰이는 도구를 200개 이상 제공합니다.
radareorg/r2ai
radare2에 AI 지원 리버스 엔지니어링용 r2ai 명령과 decai 디컴파일 플러그인을 추가하는 LLM 기반 플러그인입니다.
- 스타
- 532
- 포크
- 69
- 열린 이슈
- 4
- 마지막 커밋
- 14시간 전
어떤 프로젝트인가요?
r2ai는 바이너리 분석에 대규모 언어 모델을 연결하는 radare2 플러그인 모음입니다. radare2 셸에 r2ai 명령을 추가해 REPL이나 배치 모드에서 대화형으로 사용하거나, r2pipe를 통해 스크립트에서 사용할 수 있습니다. Ollama, OpenAI, Anthropic, Grok 등의 로컬 또는 원격 모델을 실행할 수 있으며 역할과 프롬프트를 맞춤 설정할 수 있습니다.
패키지에는 LLM을 활용한 디컴파일에 초점을 둔 r2js 기반 플러그인 decai도 포함됩니다. 그 밖에도 함수 호출을 활용해 작업을 진행하는 자동 ReAct 모드, 내장 벡터 데이터베이스를 이용해 Markdown·코드·텍스트 파일을 검색하는 기능, radare2 명령 출력을 임베딩해 모델이 관련 질문에 답하도록 하는 기능을 제공합니다. 내장 프롬프트로 함수 설명, 변수명과 함수 시그니처 제안, 취약점 검색 등의 작업을 수행할 수 있습니다.
프로젝트는 C로 작성되었으며 MIT 라이선스로 배포됩니다. r2pm으로 설치할 수 있고, API 키는 환경 변수나 설정 파일을 통해 지정할 수 있습니다.
핵심 기능
- 01radare2 셸에 REPL 및 배치 모드를 지원하는 r2ai 명령을 추가합니다.
- 02Ollama, OpenAI, Anthropic, Grok 등의 로컬 및 원격 모델을 지원합니다.
- 03LLM을 활용한 디컴파일 플러그인 decai를 포함합니다.
- 04함수 호출을 사용하는 자동 ReAct 모드를 지원합니다.
- 05내장 벡터 데이터베이스를 통해 로컬 파일을 검색할 수 있습니다.
- 06일반적인 분석 작업에 사용할 맞춤 역할과 프롬프트를 정의할 수 있습니다.
활용 사례
- radare2에서 바이너리를 리버싱하면서 정체를 알 수 없는 함수나 변수를 설명합니다.
- 심볼이 제거된 코드에 적합한 이름과 함수 시그니처를 작성합니다.
- r2pipe를 통해 LLM 지원 분석을 스크립트로 실행합니다.
- 초기 분류 과정에서 모델의 도움을 받아 악성코드 샘플을 분석합니다.
빠른 시작
- 1
r2pm으로 r2ai 플러그인을 설치합니다
r2pm -Uci r2ai - 2
환경 변수에 API 키를 설정합니다(예: OpenAI 또는 Anthropic)
export OPENAI_API_KEY=<your-key> - 3
r2ai 명령을 사용할 수 있도록 radare2를 실행합니다
r2 -qc r2ai
사용 전 알아둘 점
- radare2와 LLM 제공업체가 필요합니다. 유료 API 키를 사용하거나 로컬 모델을 설정해야 할 수 있습니다.
포함된 컬렉션
토픽
자주 묻는 질문
- r2ai은(는) 무엇인가요?
- radare2에 AI 지원 리버스 엔지니어링용 r2ai 명령과 decai 디컴파일 플러그인을 추가하는 LLM 기반 플러그인입니다. r2ai는 바이너리 분석에 대규모 언어 모델을 연결하는 radare2 플러그인 모음입니다. radare2 셸에 r2ai 명령을 추가해 REPL이나 배치 모드에서 대화형으로 사용하거나, r2pipe를 통해 스크립트에서 사용할 수 있습니다. Ollama, OpenAI, Anthropic, Grok 등의 로컬 또는 원격 모델을 실행할 수 있으며 역할과 프롬프트를 맞춤 설정할 수 있습니다.
- r2ai은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- r2ai은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- r2ai은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. r2ai의 마지막 커밋은 2026년 11월 6일입니다.
- r2ai은(는) 어디에 사용할 수 있나요?
- radare2에서 바이너리를 리버싱하면서 정체를 알 수 없는 함수나 변수를 설명합니다. 심볼이 제거된 코드에 적합한 이름과 함수 시그니처를 작성합니다. r2pipe를 통해 LLM 지원 분석을 스크립트로 실행합니다. 초기 분류 과정에서 모델의 도움을 받아 악성코드 샘플을 분석합니다.
- r2ai는 어떻게 설치하나요?
- r2pm으로 r2ai 플러그인을 설치합니다: r2pm -Uci r2ai 환경 변수에 API 키를 설정합니다(예: OpenAI 또는 Anthropic): export OPENAI_API_KEY=<your-key> r2ai 명령을 사용할 수 있도록 radare2를 실행합니다: r2 -qc r2ai
- r2ai은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/radareorg/r2ai
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
AI 언어 모델이 작고 집중적인 도구를 통해 리버스 엔지니어링 분석을 수행하도록 지원하는 Ghidra용 MCP 서버 확장입니다.
Unix 계열 시스템에서 바이너리를 분석·디스어셈블·디버깅·에뮬레이션하는 오픈소스 리버스 엔지니어링 프레임워크 및 CLI 도구 모음입니다.
AI 에이전트가 CLI, r2 플러그인 또는 HTTP를 통해 radare2로 바이너리를 분석할 수 있게 해주는 MCP 서버입니다.
파일 안에 포함된 파일과 데이터를 식별하고 선택적으로 추출하는 Rust 기반 펌웨어 분석 도구입니다.
웹사이트, 게임, 앱, 바이너리, 펌웨어, 프로토콜 리버스 엔지니어링 도구와 사례 연구, 논문을 모은 큐레이션형 이중 언어 색인입니다.