Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
GhidrAssist — Ghidra용 LLM 확장 프로그램: 리버스 엔지니어링(RE)에서 AI 지원을 가능하게 합니다. | Kitploit
도구/GitHubGitHub/symgraph/ghidrassist
Static AnalysisVulnerability AnalysisReverse EngineeringDebuggersMalware AnalysisBinary AnalysisLearning & EducationAI-Assisted Reversing
GitHubsymgraph/ghidrassist

GhidrAssist

Ghidra용 LLM 확장 프로그램: 리버스 엔지니어링(RE)에서 AI 지원을 가능하게 합니다.

저장소 보기
697622개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

GhidrAssist

저자: Jason Tang

고급 LLM 기반 플러그인으로, Ghidra 내 인터랙티브 리버스 엔지니어링 지원을 제공합니다.

설명

GhidrAssist는 대규모 언어 모델(LLM)을 Ghidra에 통합하여 바이너리 탐색 및 리버스 엔지니어링을 위한 지능형 지원을 제공합니다. 로컬 모델(Ollama, LM-Studio, Open-WebUI)과 클라우드 제공자(OpenAI, Anthropic, Azure)를 포함한 모든 OpenAI v1 호환 API를 지원합니다.

주요 기능

핵심 기능:

  • 코드 설명 - 디스어셈블리 및 디컴파일된 의사 C에서 함수와 명령어를 설명합니다.
    • 위험 수준, 활동 프로필, API 사용량을 표시하는 보안 분석 패널
    • 사용자가 편집 가능한 요약, 자동 덮어쓰기로부터 보호
  • 대화형 채팅 - 지속적인 채팅 기록이 있는 다중 턴 대화형 질의
  • 사용자 정의 질의 - 현재 함수/위치의 선택적 컨텍스트와 함께 직접 LLM 질의

Graph-RAG 지식 시스템:

  • 의미론적 지식 그래프 - 바이너리 분석의 계층적 표현
    • 5단계 의미 계층: 명령문 → 블록 → 함수 → 모듈 → 바이너리
    • 미리 계산된 LLM 요약으로 LLM 없이 빠른 질의 가능
    • JGraphT 그래프 알고리즘을 사용한 SQLite 영구 저장
    • 요약 및 보안 주석에 대한 전체 텍스트 검색(FTS5)
  • 커뮤니티 탐지 - Leiden 알고리즘을 통한 자동 모듈 발견
    • 관련 함수들을 논리적 모듈로 그룹화
    • 요약이 포함된 계층적 커뮤니티 구조
    • 구성 가능한 깊이로 시각적 그래프 탐색
  • 보안 기능 추출 - 종합적인 보안 분석
    • 네트워크 API: POSIX 소켓, WinSock, DNS, SSL/TLS, WinHTTP, WinINet
    • 파일 I/O API: POSIX, Windows, C 라이브러리 함수
    • 암호화 API: OpenSSL, Windows 암호화, 플랫폼별
    • 문자열 패턴: IP 주소, URL, 도메인, 파일 경로, 레지스트리 키
    • 위험 수준 분류(LOW/MEDIUM/HIGH) 및 활동 프로파일링
  • 의미 그래프 탭 - 시각적 지식 그래프 인터페이스
    • N-홉 깊이 탐색이 가능한 그래프 보기
    • 모든 인덱싱된 함수의 목록 보기
    • 요약 전체에 대한 의미 검색
    • 원클릭 재인덱싱 및 보안 분석

고급 기능:

  • 확장된 사고/추론 제어 - 품질과 속도 간의 균형을 위해 LLM 추론 깊이 조정
    • OpenAI o1/o3/o4, 확장된 사고를 지원하는 Claude, 로컬 추론 모델 지원
    • 구성 가능한 노력 수준: 낮음(빠름), 중간(균형), 높음(철저)
    • 프로그램별 영속성 - 다른 바이너리에서 다른 추론 수준 사용 가능
    • 제공자에 구애받지 않는 구현(Anthropic, OpenAI, Azure, LiteLLM, LMStudio, Ollama)
  • ReAct 에이전트 모드 - 구조화된 추론(Think-Act-Observe)을 사용하는 자율 조사
    • LLM이 사용자의 질의에 기반하여 조사 단계를 제안
    • 할 일 목록을 통한 진행 상황 추적으로 체계적인 도구 실행
    • 모든 조사 단계를 보여주는 반복 기록 보존
    • 포괄적인 답변과 주요 발견 사항을 포함한 최종 종합
    • 정확한 지표(반복 횟수, 도구 호출 횟수, 소요 시간)
  • MCP 통합 - 도구 기반 분석을 위한 Model Context Protocol 클라이언트
    • Ghidra 특정 도구를 위해 GhidrAssistMCP와 함께 작동
    • 자동 함수 실행이 가능한 대화형 도구 호출
    • SSE(Server-Sent Events) 전송 지원
  • 함수 호출 - LLM이 바이너리 탐색 및 분석 수정을 자율적으로 수행
    • 함수 및 변수 이름 변경
    • 주소 및 교차 참조로 이동
    • Ghidra 명령 실행
  • 액션 탭 - 대량 분석 개선 제안 및 적용
    • 보안 취약점 탐지
    • 코드 품질 분석
    • 자동 리팩토링 제안
  • RAG(Retrieval Augmented Generation) - 컨텍스트 문서로 질의 강화
    • 사용자 정의 문서, 익스플로잇 노트, 아키텍처 참조 추가
    • Lucene 기반 전체 텍스트 검색
    • 질의에 컨텍스트 주입
  • RLHF 데이터셋 생성 - 모델 파인튜닝을 위한 피드백 수집

아키텍처

이 플러그인은 모듈식 서비스 지향 아키텍처를 사용합니다:

핵심 서비스:

  • 질의 모드: 일반 질의, MCP 강화 질의, 또는 완전 에이전트 조사
  • ReAct 오케스트레이터: 할 일 추적 및 발견 사항 누적을 통한 자율 조사 루프 관리
  • 대화형 도구 핸들러: 다중 턴 도구 호출 세션 관리
  • MCPToolManager: 특수 도구를 위한 외부 MCP 서버와 인터페이스

Graph-RAG 백엔드:

  • BinaryKnowledgeGraph: 의미 지식을 위한 하이브리드 SQLite + JGraphT 저장소
  • GraphRAGEngine: 미리 계산된 요약을 사용하는 LLM 없는 질의 엔진
  • SemanticExtractor: 배치 처리를 통한 LLM 기반 함수 요약
  • SecurityFeatureExtractor: 네트워크, 파일 I/O, 암호화 API에 대한 정적 분석
  • CommunityDetector: 모듈 발견을 위한 Leiden 알고리즘 구현

데이터 계층:

  • AnalysisDB: 채팅 기록, RLHF 피드백 및 지식 그래프를 위한 SQLite 데이터베이스
  • SchemaMigrationRunner: 투명한 업그레이드를 위한 버전 관리 데이터베이스 마이그레이션
  • RAGEngine: 사용자 정의 컨텍스트 주입을 위한 Lucene 기반 문서 검색

UI 구성 요소:

  • 탭 기반 인터페이스: 설명, 질의, 액션, 의미 그래프, RAG 관리, MCP 서버
  • TabController를 통한 서비스 오케스트레이션

향후 로드맵:

  • 수집된 RLHF 데이터셋을 사용한 모델 파인튜닝
  • 추가 MCP 도구 통합
  • 향상된 에이전트 기능, 다중 에이전트 협업
  • 임베딩 기반 유사도 검색

스크린샷

Screenshot

https://github.com/user-attachments/assets/bd79474a-c82f-4083-b432-96625fef1387

빠른 시작

  • 필요한 경우, 바이너리 릴리즈 ZIP 아카이브를 Ghidra_Install/Extensions/Ghidra 디렉토리에 복사합니다.
  • Ghidra 실행 -> 파일 -> 확장 기능 설치 -> GhidrAssist 활성화.
  • 바이너리 로드 및 CodeBrowser 실행.
  • CodeBrowser -> 파일 -> 구성 -> 기타 -> GhidrAssist 활성화.
  • CodeBrowser -> 창 -> GhidraAssistPlugin.
  • RLHF 및 RAG 데이터베이스 경로가 사용자 환경에 적합한지 확인합니다.
  • API 호스트를 원하는 API 제공자로 지정하고 API 키를 설정합니다.
  • (선택 사항) 분석 옵션 탭에서 확장된 사고를 지원하는 모델의 경우 추론 노력 수준(없음/낮음/중간/높음)을 설정합니다.
  • Windows 메뉴의 GhidrAssist 옵션으로 GhidrAssist를 열고 탐색을 시작합니다.

LLM 설정

GhidrAssist는 모든 OpenAI v1 호환 API와 함께 작동합니다. 설정 세부 사항은 제공자별로 다릅니다. 다음은 유용한 리소스입니다:

로컬 LLM 제공자:

  • LM Studio - GUI를 통한 쉬운 로컬 모델 호스팅
  • Ollama - 명령줄 로컬 모델 관리
  • Open-WebUI - 로컬 모델을 위한 웹 인터페이스

클라우드 제공자:

  • OpenAI API
  • Anthropic Claude
  • Azure OpenAI

LiteLLM 프록시(다중 제공자 게이트웨이):

  • LiteLLM - 100개 이상의 LLM 제공자를 위한 통합 API
  • AWS Bedrock, Google Vertex AI, Azure 등 지원
  • GhidrAssist 설정에서 제공자 유형으로 "LiteLLM" 선택
  • 올바른 메시지 형식을 위한 자동 모델 패밀리 감지

권장 모델

에이전트 모드용(강력한 추론 및 도구 사용 필요):

  • 클라우드: GPT-5.1, Claude Sonnet 4.5
  • 로컬: GPT-OSS, Llama 3.3 70B, DeepSeek-R1 70B, Qwen2.5 72B

확장된 사고/추론 지원 모델:

  • OpenAI: o1-preview, o1-mini, o3-mini, o4-mini, gpt-5(reasoning_effort 매개변수 사용)
  • Anthropic: Claude Sonnet 4.5, Claude Opus 4.5, Claude Haiku 4.5, Claude Opus 4.1/4, Claude Sonnet 4(thinking.budget_tokens 매개변수 사용)
  • 로컬: openai/gpt-oss-20b (Ollama/LMStudio를 통해, 노력 수준 지원)

추론 노력 지침:

  • 낮음: 빠른 분석, 최소 추론 토큰(~5-10초, 저비용)
  • 중간: 균형 잡힌 추론 깊이(~15-30초, 중간 비용)
  • 높음: 심층 보안 분석(~30-60초, 2배 비용, 취약점 헌팅에 권장)

참고: 에이전트 모드는 강력한 함수 호출 및 다단계 추론 기능을 갖춘 모델이 필요합니다. 작은 모델은 복잡한 조사에 어려움을 겪을 수 있습니다. 확장된 사고는 선택 사항이지만 복잡한 리버스 엔지니어링 작업에 대한 분석 품질을 크게 향상시킬 수 있습니다.

도구 기반 분석에 GhidrAssistMCP 사용하기

GhidrAssistMCP는 LLM이 Ghidra의 분석 기능과 직접 상호 작용할 수 있는 MCP 도구를 제공합니다.

설정

  1. MCP 서버 시작

  2. GhidrAssist 구성:

    • 도구 → GhidrAssist 설정 → MCP 서버 탭 열기
    • 전송 유형 SSE로 서버 추가: http://127.0.0.1:8081 (GhidrAssistMCP)
  3. 질의에 MCP 활성화:

    • 사용자 정의 질의 탭에서 "MCP 사용" 체크
    • 선택적으로 자율 조사 모드를 위해 "에이전트" 활성화

사용 모드

일반 MCP 질의:

  • "MCP 사용" 체크박스 활성화
  • "현재 함수는 무엇을 합니까?"와 같은 질문
  • LLM이 디컴파일, 교차 참조 등을 얻기 위해 도구 호출 가능

에이전트 모드(권장):

  • "MCP 사용" 및 "에이전트" 체크박스 모두 활성화
  • "이 함수에서 취약점 찾기" 또는 "호출 그래프 분석"과 같은 복잡한 질문
  • ReAct 에이전트가 수행:
    1. 할 일 목록으로 조사 단계 제안
    2. 정보 수집을 위해 체계적으로 도구 실행
    3. 진행 상황 추적 및 발견 사항 누적
    4. 증거와 함께 포괄적인 답변 종합

예시 질의:

  • "이 함수에 존재하는 보안 취약점은 무엇입니까?"
  • "사용자 입력에서 이 호출까지의 데이터 흐름을 추적하십시오."
  • "전역 변수 X를 수정하는 모든 함수를 찾으십시오."
  • "현재 함수의 오류 처리를 분석하십시오."

의미 그래프(Graph-RAG) 사용하기

의미 그래프 탭은 모든 질의에 LLM 호출 없이 바이너리 분석 결과를 탐색할 수 있는 지식 그래프 인터페이스를 제공합니다.

시작하기

  1. 바이너리 인덱싱:

    • 의미 그래프 탭 열기
    • "바이너리 재인덱싱" 클릭하여 구조적 관계 추출
    • "의미 분석" 클릭하여 LLM 요약 생성(API 필요)
    • 진행 상태는 상태 표시줄에 표시됨
  2. 그래프 탐색:

    • 목록 보기: 요약 및 보안 플래그와 함께 모든 인덱싱된 함수 찾아보기
    • 그래프 보기: 구성 가능한 N-홉 깊이로 호출 관계 시각화
    • 검색 보기: 요약 및 보안 주석 전체에 대한 전체 텍스트 검색
  3. 보안 분석:

    • "보안 분석" 클릭하여 보안 관련 기능 스캔
    • 결과: 네트워크 API, 파일 I/O, 암호화 사용, 문자열 패턴
    • 감지된 기능에 따라 위험 수준(LOW/MEDIUM/HIGH) 할당

설명 탭 통합

설명 탭에서 함수를 볼 때:

  • 함수가 인덱싱된 경우, 미리 계산된 요약이 즉시 표시됨
  • 보안 패널 표시: 위험 수준, 활동 프로필, 사용된 API
  • "편집" 클릭하여 요약 수정(자동 덮어쓰기로부터 보호됨)
  • "새로고침" 사용하여 LLM으로 요약 재생성

이점

  • 빠른 질의: 미리 계산된 요약으로 반복 질의에서 LLM 지연 시간 제거
  • 오프라인 분석: API 연결 없이 인덱싱된 데이터 탐색
  • 보안 초점: 보안 관련 코드 패턴 자동 감지
  • 모듈 발견: 커뮤니티 탐지가 관련 함수를 자동으로 그룹화

홈페이지

https://symgraph.ai

최소 버전

이 플러그인은 다음 최소 버전의 Ghidra가 필요합니다:

  • 11.0

라이선스

이 플러그인은 MIT 라이선스 하에 배포됩니다.

도구 다운로드