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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
lisa.py — LLDB MCP 통합 + 기타 유용한 명령어 | Kitploit
도구/GitHubGitHub/ant4g0nist/lisa.py
Reverse EngineeringDebuggersUtilities & FrameworksBinary AnalysisAI-Assisted Reversing
GitHubant4g0nist/lisa.py

lisa.py

LLDB MCP 통합 + 기타 유용한 명령어

저장소 보기
7571141년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

LLDB MCP 통합

이 프로젝트는 LLDB에 대한 모델-컨텍스트 프로토콜(MCP) 통합을 제공하여, Claude와 같은 AI 어시스턴트가 표준화된 인터페이스를 통해 디버깅 세션과 상호작용할 수 있도록 합니다.

개요

통합은 두 가지 주요 구성 요소로 이루어져 있습니다:

  1. server.py - Claude(또는 다른 MCP 클라이언트)와 통신하는 MCP 서버
  2. lldb_plugin.py - LLDB 내부에서 실행되며 JSON-RPC를 통해 디버거 기능을 노출하는 플러그인

이 아키텍처를 통해 Claude는 자연어로 직접 LLDB와 상호작용하여 코드 디버깅을 도울 수 있습니다. MCP 서버는 브릿지 역할을 하여 Claude의 요청을 LLDB 명령어로 변환하고 결과를 구조화된 형식으로 반환합니다.

설치

전제 조건

  • Python 3.10 이상
  • Python 바인딩이 포함된 LLDB
  • fastmcp Python 패키지 (Claude Desktop 통합용)

설정

  1. 이 저장소를 클론합니다:

    root@kitploit:~
    git clone https://github.com/ant4g0nist/lldb-mcp.git
    cd lldb-mcp
    
  2. 필요한 종속성을 설치합니다:

    root@kitploit:~
    pip install "fastmcp>=1.2.0" httpx
    

    또는

    root@kitploit:~
    uv install "fastmcp>=1.2.0" httpx
    

사용법

방법 1: Claude for Desktop과 함께 사용

  1. Claude for Desktop이 설치되어 있고 최신 버전으로 업데이트되었는지 확인합니다.

  2. 다음 파일을 편집하여 Claude for Desktop이 LLDB MCP 서버를 사용하도록 설정합니다:

    • 경로: ~/Library/Application Support/Claude/claude_desktop_config.json
  3. 경로를 업데이트하고 LLDB MCP 구성을 추가합니다:

    root@kitploit:~
    {
      "mcpServers": {
        "lldb": {
          "command": "/path/to/your/.local/bin/uv",
          "args": [
            "--directory",
            "/path/to/your/lldb-mcp/llmcp",
            "run",
            "lldb_mcp.py"
          ]
        }
      }
    }
    
  4. Claude for Desktop을 다시 시작합니다.

  5. LLDB에서 디버깅 세션을 시작하고 MCP 서버를 활성화합니다:

    root@kitploit:~
    (lldb) command script import lisa.py
    
  6. 이제 Claude for Desktop에서 LLDB 도구를 볼 수 있습니다. 망치 아이콘을 찾으세요.

방법 2: 직접 LLDB 통합

Claude for Desktop 없이 LLDB에서 직접 플러그인을 사용하려면:

  1. 플러그인을 자동으로 로드하려면 ~/.lldbinit 파일에 다음을 추가합니다:

    root@kitploit:~
    command script import /path/to/lldb_plugin.py
    
  2. LLDB 세션에서 MCP 서버를 시작합니다:

    root@kitploit:~
    (lldb) mcp start
    
  3. 서버는 http://localhost:13338 에서 모든 MCP 클라이언트가 연결할 수 있도록 제공됩니다.

사용 가능한 LLDB 도구

MCP 서버는 AI 어시스턴트에게 다음 메서드를 노출합니다:

  • create_target - 실행 파일 경로에서 디버그 대상 생성
  • launch_process - 선택적 인수, 환경 변수 및 작업 디렉터리로 프로세스 실행
  • attach_to_process - PID로 실행 중인 프로세스에 연결
  • detach_from_process - 현재 프로세스에서 분리
  • continue_process - 프로세스 실행 계속
  • step_over - 현재 라인 또는 명령어 넘어가기
  • step_into - 함수 호출로 들어가기
  • step_out - 현재 함수에서 나오기
  • set_breakpoint - 지정된 위치에 중단점 설정
  • delete_breakpoint - ID로 중단점 삭제
  • list_breakpoints - 모든 중단점 나열
  • get_backtrace - 현재 스레드 또는 지정된 스레드의 역추적 가져오기
  • get_variables - 현재 프레임의 변수 가져오기
  • get_disassembly - 지정된 주소 또는 현재 PC 주변의 디스어셈블리 가져오기
  • read_memory - 특정 주소에서 메모리 읽기
  • get_metadata - 현재 디버깅 세션에 대한 메타데이터 가져오기
  • run_lldb_command - 임의의 LLDB 명령어 실행
  • evaluate_expression - 현재 컨텍스트에서 표현식 평가

Claude와의 예제 상호작용

설정이 완료되면 자연어를 통해 Claude와 LLDB를 상호작용할 수 있습니다. 몇 가지 예:

  • "/path/to/executable에서 이 프로그램 디버깅하기"
  • "main에 중단점 설정하기"
  • "인수 -v input.txt로 프로그램 실행하기"
  • "현재 프레임의 변수 보여줘"
  • "다음 함수 호출로 들어가기"
  • "지금 역추적이 뭐야?"
  • "표현식 ptr->data[i] 평가하기"
  • "현재 명령어의 어셈블리 코드 보여줘"

문제 해결

  • 플러그인이 로드되지 않음: LLDB의 Python 환경에서 필요한 모듈에 액세스할 수 있는지 확인하세요.
  • 서버 연결 문제: 포트 13338이 다른 애플리케이션에서 이미 사용 중인지 확인하세요.
  • Claude가 도구를 감지하지 못함: claude_desktop_config.json의 설정이 올바른지 확인하세요.
  • 명령어 오류: 플러그인은 LLDB 콘솔에 오류를 기록하므로 자세한 내용은 해당 콘솔을 확인하세요.

기여

기여는 환영합니다! 버그나 기능 요청에 대해 자유롭게 풀 리퀘스트를 제출하거나 이슈를 생성해 주세요.

라이선스

Apache License

TODO

  • 사용 설명서 업데이트
  • 더 많은 테스트 케이스 추가

크레딧

  • voltron
  • lldb
  • chisel
  • gef
  • pixd
  • hexdump
  • idaref
  • ida-pro-mcp
도구 다운로드