Skip to main content
Glama
emeryray2002

VirusTotal MCP Server

by emeryray2002

VirusTotal MCP 서버

대장간 배지

VirusTotal API 쿼리를 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 자동 관계 데이터 가져오기 기능을 갖춘 포괄적인 보안 분석 도구를 제공합니다. Claude Desktop 과 같은 MCP 호환 애플리케이션과 완벽하게 통합됩니다.

빠른 시작(TBD)

Smithery를 통해 설치

Smithery를 통해 Claude Desktop에 대한 Virustotal-mcp를 자동으로 설치하려면 다음을 수행합니다.

지엑스피1

수동 설치

미정

Related MCP server: ADEO CTI MCP Server

특징

  • 종합 분석 보고서 : 각 분석 도구는 기본 보고서와 함께 관련 관계 데이터를 자동으로 가져와 단일 요청으로 완전한 보안 개요를 제공합니다.

  • URL 분석 : 연락된 도메인, 다운로드된 파일 및 위협 행위자를 자동으로 가져오는 보안 보고서

  • 파일 분석 : 동작, 삭제된 파일, 네트워크 연결을 포함한 파일 해시의 상세 분석

  • IP 분석 : 과거 데이터, 해결 방법 및 관련 위협을 포함하는 보안 보고서

  • 도메인 분석 : DNS 정보, WHOIS 데이터, SSL 인증서 및 하위 도메인

  • 상세 관계 분석 : 페이지네이션 지원을 통해 특정 유형의 관계를 쿼리하기 위한 전용 도구

  • 고급 검색 : VirusTotal 데이터 세트 전반에 걸친 복잡한 쿼리에 대한 VT Intelligence 검색 기능

  • 풍부한 포맷팅 : 분석 결과 및 관계 데이터의 명확한 분류 및 표현

도구

보고서 도구(자동 관계 가져오기 포함)

1. URL 보고 도구

  • 이름: get_url_report

  • 설명: 보안 검사 결과 및 주요 관계(통신 파일, 연락된 도메인/IP, 다운로드된 파일, 리디렉션, 위협 행위자)를 포함하는 포괄적인 URL 분석 보고서를 받으세요.

  • 매개변수:

    • url (필수): 분석할 URL

  • 예:

await get_url_report(url="http://example.com/suspicious")

2. 파일 보고 도구

  • 이름: get_file_report

  • 설명: 해시(MD5/SHA-1/SHA-256)를 사용하여 포괄적인 파일 분석 보고서를 받으세요. 탐지 결과, 파일 속성 및 주요 관계(동작, 삭제된 파일, 네트워크 연결, 내장 콘텐츠, 위협 행위자)가 포함됩니다.

  • 매개변수:

    • hash (필수): 파일의 MD5, SHA-1 또는 SHA-256 해시

  • 예:

await get_file_report(hash="44d88612fea8a8f36de82e1278abb02f")

3. IP 보고 도구

  • 이름: get_ip_report

  • 설명: 지리적 위치, 평판 데이터, 주요 관계(파일 통신, 과거 인증서/WHOIS, 해결 방법)를 포함한 포괄적인 IP 주소 분석 보고서를 받으세요.

  • 매개변수:

    • ip (필수): 분석할 IP 주소

  • 예:

await get_ip_report(ip="8.8.8.8")

4. 도메인 보고 도구

  • 이름: get_domain_report

  • 설명: DNS 레코드, WHOIS 데이터, 주요 관계(SSL 인증서, 하위 도메인, 기록 데이터)를 포함한 포괄적인 도메인 분석 보고서를 받으세요.

  • 매개변수:

    • domain (필수): 분석할 도메인 이름

  • 예:

await get_domain_report(domain="example.com")

관계 도구(상세 분석용)

1. URL 관계 도구

  • 이름: get_url_relationship

  • 설명: 페이지 매김 지원을 통해 URL에 대한 특정 관계 유형을 쿼리합니다.

  • 매개변수:

    • url (필수): 관계를 가져올 URL

    • relationship (필수): 쿼리에 대한 관계 유형

      • 사용 가능한 관계: 분석, 댓글, 통신 파일, 연락 도메인, 연락 IP, 다운로드 파일, 그래프, 마지막 제공 IP 주소, 네트워크 위치, 참조 파일, 참조 URL, 리디렉션 URL, 리디렉션 대상, 관련 댓글, 관련 참조, 관련 위협 행위자, 제출

    • limit (선택 사항, 기본값: 10): 검색할 관련 객체의 최대 개수(1-40)

    • cursor (선택 사항): 페이지 매김을 위한 연속 커서

  • 예:

await get_url_relationship( url="http://example.com/suspicious", relationship="communicating_files", limit=20 )

2. 파일 관계 도구

  • 이름: get_file_relationship

  • 설명: 페이지 매김 지원이 있는 파일의 특정 관계 유형을 쿼리합니다.

  • 매개변수:

    • 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 (선택 사항): 페이지 매김을 위한 연속 커서

  • 예:

await get_file_relationship( hash="44d88612fea8a8f36de82e1278abb02f", relationship="behaviours", limit=20 )

3. IP 관계 도구

  • 이름: get_ip_relationship

  • 설명: 페이지 매김 지원을 통해 IP 주소에 대한 특정 관계 유형을 쿼리합니다.

  • 매개변수:

    • 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 (선택 사항): 페이지 매김을 위한 연속 커서

  • 예:

await get_ip_relationship( ip="8.8.8.8", relationship="communicating_files", limit=20 )

4. 도메인 관계 도구

  • 이름: get_domain_relationship

  • 설명: 페이지네이션 지원이 있는 도메인에 대한 특정 관계 유형을 쿼리합니다.

  • 매개변수:

    • 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 (선택 사항): 페이지 매김을 위한 연속 커서

  • 예:

await get_domain_relationship( domain="example.com", relationship="historical_ssl_certificates", limit=20 )

5. 고급 검색 도구

  • 이름: advanced_corpus_search

  • 설명: VT Intelligence 쿼리 구문을 사용하여 VirusTotal 데이터 세트에서 고급 검색을 수행합니다.

  • 매개변수:

    • query (필수): VT Intelligence 검색 쿼리 문자열

    • limit (선택 사항, 기본값: 20): 페이지당 반환할 최대 결과 수

    • cursor (선택 사항): 페이지 매김을 위한 연속 커서

    • descriptors_only (선택 사항): true인 경우 전체 객체 대신 객체 설명자만 검색합니다.

  • 예:

await advanced_corpus_search( query="type:peexe size:100kb+ positives:5+", limit=20, cursor=None )

요구 사항

  • 파이썬 >= 3.11

  • 유효한 VirusTotal API 키

  • 필요한 Python 패키지:

    • aiohttp >= 3.9.0

    • mcp[cli] >= 1.4.1

    • 파이썬-dotenv >= 1.0.0

    • 타이핑 확장 >= 4.8.0

오류 처리

서버에는 다음에 대한 포괄적인 오류 처리 기능이 포함되어 있습니다.

  • 잘못된 API 키

  • 속도 제한

  • 네트워크 오류

  • 잘못된 입력 매개변수

  • 잘못된 해시 형식

  • 잘못된 IP 형식

  • 잘못된 URL 형식

  • 잘못된 관계 유형

  • 페이지 매김 오류

개발

개발 모드에서 실행하려면:

python -m virustotal_mcp

기여하다

  1. 저장소를 포크하세요

  2. 기능 브랜치를 생성합니다( git checkout -b feature/amazing-feature )

  3. 변경 사항을 커밋하세요( git commit -m 'Add amazing feature' )

  4. 브랜치에 푸시( git push origin feature/amazing-feature )

  5. 풀 리퀘스트 열기

특허

이 프로젝트는 Apache License 2.0에 따라 라이선스가 부여되었습니다. 자세한 내용은 LICENSE 파일을 참조하세요.

감사의 말

  • API 및 위협 인텔리전스 플랫폼을 제공하는 VirusTotal

  • 서버 프레임워크를 위한 MCP 프로젝트

  • 기여자 및 유지 관리자

지원하다

지원을 원하시면 다음을 클릭하세요.

  1. 문서를 확인하세요

  2. 기존 이슈 검색

  3. 필요한 경우 새로운 이슈를 생성하세요

보안

  • API 키나 중요한 자격 증명을 절대 커밋하지 마세요.

  • 구성을 위해 환경 변수를 사용하세요

  • 위협 인텔리전스 데이터를 처리할 때 보안 모범 사례를 따르세요.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/emeryray2002/virustotal-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server