VirusTotal MCP 서버
VirusTotal API 쿼리를 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 자동 관계 데이터 가져오기 기능을 갖춘 포괄적인 보안 분석 도구를 제공합니다. Claude Desktop 과 같은 MCP 호환 애플리케이션과 완벽하게 통합됩니다.
빠른 시작(권장)
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 VirusTotal Server를 자동으로 설치하려면:
지엑스피1
수동 설치
npm을 통해 서버를 전역으로 설치합니다.
Claude Desktop 구성 파일에 다음을 추가합니다.
구성 파일 위치:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Claude Desktop을 다시 시작하세요
Related MCP server: MCP Tunnel
대체 설정(소스에서)
소스에서 실행하거나 코드를 수정해야 하는 경우:
복제 및 빌드:
Claude Desktop 구성에 다음을 추가합니다.
특징
종합 분석 보고서 : 각 분석 도구는 기본 보고서와 함께 관련 관계 데이터를 자동으로 가져와 단일 요청으로 완전한 보안 개요를 제공합니다.
URL 분석 : 연락된 도메인, 다운로드된 파일 및 위협 행위자를 자동으로 가져오는 보안 보고서
파일 분석 : 동작, 삭제된 파일, 네트워크 연결을 포함한 파일 해시의 상세 분석
IP 분석 : 과거 데이터, 해결 방법 및 관련 위협을 포함하는 보안 보고서
도메인 분석 : DNS 정보, WHOIS 데이터, SSL 인증서 및 하위 도메인
상세 관계 분석 : 페이지네이션 지원을 통해 특정 유형의 관계를 쿼리하기 위한 전용 도구
풍부한 포맷팅 : 분석 결과 및 관계 데이터의 명확한 분류 및 표현
도구
보고서 도구(자동 관계 가져오기 포함)
1. URL 보고 도구
이름:
get_url_report설명: 보안 검사 결과 및 주요 관계(통신 파일, 연락된 도메인/IP, 다운로드된 파일, 리디렉션, 위협 행위자)를 포함하는 포괄적인 URL 분석 보고서를 받으세요.
매개변수:
url(필수): 분석할 URL
2. 파일 보고 도구
이름:
get_file_report설명: 해시(MD5/SHA-1/SHA-256)를 사용하여 포괄적인 파일 분석 보고서를 받으세요. 탐지 결과, 파일 속성 및 주요 관계(동작, 삭제된 파일, 네트워크 연결, 내장 콘텐츠, 위협 행위자)가 포함됩니다.
매개변수:
hash(필수): 파일의 MD5, SHA-1 또는 SHA-256 해시
3. IP 보고 도구
이름:
get_ip_report설명: 지리적 위치, 평판 데이터, 주요 관계(파일 통신, 과거 인증서/WHOIS, 해결 방법)를 포함한 포괄적인 IP 주소 분석 보고서를 받으세요.
매개변수:
ip(필수): 분석할 IP 주소
4. 도메인 보고 도구
이름:
get_domain_report설명: DNS 레코드, WHOIS 데이터, 주요 관계(SSL 인증서, 하위 도메인, 기록 데이터)를 포함한 포괄적인 도메인 분석 보고서를 받으세요.
매개변수:
domain(필수): 분석할 도메인 이름relationships(선택 사항): 보고서에 포함할 특정 관계 배열
관계 도구(상세 분석용)
1. URL 관계 도구
이름:
get_url_relationship설명: 페이지 매김 기능을 지원하는 URL에 대한 특정 관계 유형을 쿼리합니다. 분석, 통신 파일, 접속된 도메인/IP, 다운로드된 파일, 그래프, 리퍼러, 리디렉션, 위협 행위자 등 17가지 관계 유형 중에서 선택하세요.
매개변수:
url(필수): 관계를 가져올 URLrelationship(필수): 쿼리에 대한 관계 유형사용 가능한 관계: 분석, 댓글, 통신 파일, 연락 도메인, 연락 IP, 다운로드 파일, 그래프, 마지막 제공 IP 주소, 네트워크 위치, 참조 파일, 참조 URL, 리디렉션 URL, 리디렉션 대상, 관련 댓글, 관련 참조, 관련 위협 행위자, 제출
limit(선택 사항, 기본값: 10): 검색할 관련 객체의 최대 개수(1-40)cursor(선택 사항): 페이지 매김을 위한 연속 커서
2. 파일 관계 도구
이름:
get_file_relationship설명: 페이지 매김 기능을 지원하는 파일에 대한 특정 관계 유형을 쿼리합니다. 동작, 네트워크 연결, 삭제된 파일, 내장 콘텐츠, 실행 체인, 위협 행위자 등 41가지 관계 유형 중에서 선택합니다.
매개변수:
hash(필수): 파일의 MD5, SHA-1 또는 SHA-256 해시relationship(필수): 쿼리에 대한 관계 유형사용 가능한 관계: 분석, 동작, bundled_files, carbonblack_children, carbonblack_parents, ciphered_bundled_files, ciphered_parents, 단서, 컬렉션, 댓글, compressed_parents, contacted_domains, contacted_ips, contacted_urls, dropped_files, email_attachments, email_parents, embedded_domains, embedded_ips, embedded_urls, execution_parents, 그래프, itw_domains, itw_ips, itw_urls, memory_pattern_domains, memory_pattern_ips, memory_pattern_urls, overlay_children, overlay_parents, pcap_children, pcap_parents, pe_resource_children, pe_resource_parents, related_references, related_threat_actors, similar_files, 제출, 스크린샷, urls_for_embedded_js, 투표
limit(선택 사항, 기본값: 10): 검색할 관련 객체의 최대 개수(1-40)cursor(선택 사항): 페이지 매김을 위한 연속 커서
3. IP 관계 도구
이름:
get_ip_relationship설명: 페이지 매김 기능을 지원하는 특정 관계 유형에 IP 주소를 쿼리합니다. 통신 파일, 이전 SSL 인증서, WHOIS 레코드, 해결 방법, 위협 행위자 등 12가지 관계 유형 중에서 선택합니다.
매개변수:
ip(필수): 분석할 IP 주소relationship(필수): 쿼리에 대한 관계 유형사용 가능한 관계: comments, communicating_files, downloaded_files, graphs, historical_ssl_certificates, historical_whois, related_comments, related_references, related_threat_actors, referrer_files, resolutions, urls
limit(선택 사항, 기본값: 10): 검색할 관련 객체의 최대 개수(1-40)cursor(선택 사항): 페이지 매김을 위한 연속 커서
4. 도메인 관계 도구
이름:
get_domain_relationship설명: 페이지 매김 기능을 지원하는 도메인에 대한 특정 관계 유형을 쿼리합니다. SSL 인증서, 하위 도메인, 기록 데이터, DNS 레코드를 포함한 21가지 관계 유형 중에서 선택하세요.
매개변수:
domain(필수): 분석할 도메인 이름relationship(필수): 쿼리에 대한 관계 유형사용 가능한 관계: caa_records, cname_records, comments, communicating_files, downloaded_files, historical_ssl_certificates, historical_whois, immediate_parent, mx_records, ns_records, parent, referrer_files, related_comments, related_references, related_threat_actors, resolves, soa_records, brothers, subdomains, urls, user_votes
limit(선택 사항, 기본값: 10): 검색할 관련 객체의 최대 개수(1-40)cursor(선택 사항): 페이지 매김을 위한 연속 커서
요구 사항
Node.js(v18 이상)
유효한 VirusTotal API 키
문제 해결
API 키 문제
"잘못된 API 키" 오류가 표시되는 경우:
API 키 상태를 확인하려면
/tmp/mcp-virustotal-server.log)의 로그 파일을 확인하세요.API 키를 확인하세요:
유효한 VirusTotal API 키(일반적으로 64자)여야 합니다.
키 주위에 추가 공백이나 따옴표가 없습니다.
VirusTotal 계정의 API 키 섹션에서 가져와야 합니다.
구성이 변경된 후에는:
구성 파일을 저장합니다
Claude Desktop을 다시 시작하세요
새 API 키 상태에 대한 로그를 확인하세요.
모듈 로딩 문제
ES 모듈 로딩 경고가 표시되는 경우:
글로벌 설치의 경우: 빠른 시작에 표시된 간단한 구성을 사용하세요.
소스 설치의 경우: 인수에
--experimental-modules포함해야 합니다.
개발
핫 리로딩을 사용하여 개발 모드에서 실행하려면:
오류 처리
서버에는 다음에 대한 포괄적인 오류 처리 기능이 포함되어 있습니다.
잘못된 API 키
속도 제한
네트워크 오류
잘못된 입력 매개변수
잘못된 해시 형식
잘못된 IP 형식
잘못된 URL 형식
잘못된 관계 유형
페이지 매김 오류
버전 기록
v1.0.0: 핵심 기능이 포함된 초기 릴리스
v1.1.0: URL, 파일 및 IP 주소에 대한 관계 분석 도구가 추가되었습니다.
v1.2.0: 향상된 오류 처리 및 로깅이 추가되었습니다.
v1.3.0: 관계 쿼리에 대한 페이지 매김 지원이 추가되었습니다.
v1.4.0: 보고서 도구 및 도메인 분석 지원에 자동 관계 가져오기 기능이 추가되었습니다.
기여하다
저장소를 포크하세요
기능 브랜치를 생성합니다(
git checkout -b feature/amazing-feature)변경 사항을 커밋하세요(
git commit -m 'Add amazing feature')브랜치에 푸시(
git push origin feature/amazing-feature)풀 리퀘스트 열기
특허
이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.