11P by GN⁺ 7일전 | ★ favorite | 댓글 1개
  • ghidraMCP는 대형 언어 모델(LLM)이 애플리케이션을 자율적으로 리버스 엔지니어링할 수 있도록 지원하는 Model Context Protocol (MCP) 서버
  • Ghidra의 핵심 기능을 MCP 클라이언트에 노출하여 LLM이 분석 도구를 직접 활용할 수 있게 함
  • 기존의 수동 분석 프로세스를 자동화함으로써 리버스 엔지니어링 속도 및 효율성 향상에 기여
  • AI 기반의 보안 분석, 악성코드 분석, 바이너리 디버깅 등 다양한 분야에 활용 가능

주요 기능

  • MCP 서버 및 Ghidra 플러그인 구성
    • LLM과 Ghidra 간의 연결 인터페이스 제공
    • Ghidra 기능을 API 형태로 MCP 프로토콜에 노출
  • 바이너리 디컴파일 및 분석
    • Ghidra를 통해 ELF, PE 등 다양한 형식의 실행 파일을 디컴파일하고 분석 수행
  • 자동 메서드 및 데이터 이름 지정
    • 난독화되거나 이름이 없는 메서드 및 데이터에 의미 있는 이름 자동 부여
    • 코드 가독성과 분석 속도 향상
  • 코드 구조 조회 기능
    • 메서드, 클래스, import 및 export 리스트를 추출
    • 코드 흐름 및 의존성 분석에 유용함
Hacker News 의견
  • 언젠가 모든 독점 바이너리를 소스 코드로 변환할 수 있는 도구가 생기길 바라는 의견이 있음. 모든 게임의 "오픈 소스" 버전을 갖는 것이 재미있을 것임

    • 현재 <a href="https://github.com/Try/OpenGothic" rel="nofollow">OpenGothic</a>과 <a href="https://github.com/SFTtech/openage" rel="nofollow">openage</a> 같은 프로젝트가 있지만, 이는 커뮤니티의 오랜 노력이 필요함
  • LLMs가 코드를 해결하려면 AST-네이티브여야 한다고 생각함. 코드는 트리 구조인데, 우리는 이를 선형적으로 모델에 입력함

    • 오늘날의 모델은 반복성이나 진정한 기억력이 부족하여 계층적 구조를 효과적으로 추론할 수 없음
  • 현재 MCP를 호출할 수 있는 도구에 대한 질문이 있음. Claude의 데스크톱 애플리케이션이 MCP를 로컬에서 사용할 수 있다는 것을 알게 되었음

    • 원격으로 MCP를 사용할 수 있는 채팅 인터페이스가 있는지 궁금함
    • ChatGPT, Claude, Gemini의 웹 인터페이스에서 MCP 엔드포인트와 기능을 지정하여 서버를 원격으로 호출할 수 있기를 바람
  • Ghidra와 LLM의 이전 통합에 대한 좋은 비디오가 있었음

    • Malimite – iOS 및 macOS 디컴파일러에 대한 정보가 있음
    • 그녀의 유튜브 채널을 본 적이 없다면 확인해보기를 추천함. 기술적인 내용 외에도 레트로 OS 그래픽으로 편집된 것이 재미있음
  • radare2에 대한 정보도 있음

    • <a href="https://github.com/dnakov/radare2-mcp" rel="nofollow">radare2-mcp</a>
  • Ghidra에서 LLM으로 복사하여 붙여넣기만 하는 경험은 성공적이지 않았음. 이러한 것들에 대한 벤치마크가 있으면 좋겠음

  • MCP 서버에 프로그램의 임의 읽기 및 쓰기와 같은 더 많은 기능이 있으면 좋겠다는 의견이 있음

    • 예를 들어, XOR된 명령어를 사용하는 셀프 언패킹 CTF 챌린지를 작업 중이었음. XOR된 주소의 값을 읽을 수 있으면 좋겠음
  • 모든 바이너리를 즉시 완벽하게 리버스 엔지니어링할 수 있다면 보안이 어떻게 변할지에 대한 사고 실험이 있음

  • MCP 서버의 "카탈로그"를 작업 중인 사람이 있는지 궁금함. Github에서 검색하는 것이 이를 발견하는 최선의 방법은 아님