
VirusTotal API를 사용하여 폴더를 재귀적으로 스캔하여 악성코드를 탐지합니다. 주요 기능으로 해시 조회, CSV 내보내기, 실시간 진행률 및 자동화된 파일 분석을 위한 속도 제한 처리가 포함됩니다.
VirusTotal API를 사용하여 모든 파일을 분석하는 Python 스크립트로, 폴더와 하위 폴더를 재귀적으로 스캔합니다. Windows에 최적화되었습니다.
파일을 컴퓨터에 다운로드하세요.
종속성 설치:
pip install -r requirements.txt
.env.example 파일을 .env로 복사:
cp .env.example .env
.env 파일을 편집하고 구성을 추가하세요:
VIRUSTOTAL_API_KEY=your_actual_api_key_here
SCAN_FOLDER=C:\Users\username\Desktop\my_files
스크립트 실행:
python virustotal_scanner.py
스크립트가 자동으로 .env 파일에서 구성을 로드합니다.
.env 파일을 사용하지 않으려면 스크립트가 정보를 요청합니다.
python virustotal_scanner.py
스크립트가 다음을 요청합니다:
사용 예시:
Enter your VirusTotal API key: a1b2c3d4e5f6...
Enter the folder path to scan: C:\Users\username\Desktop\my_files
Do you want to continue? (y/n): y
C:\Users\username\Documents\my_filesC:\Users\username\Desktop\folder. (점 = 현재 폴더)스크립트 실행 후 다음 파일이 자동으로 생성됩니다.
모든 이벤트가 포함된 로그 파일:
결과가 포함된 CSV 파일 (세미콜론으로 구분):
CSV는 Excel, Google Sheets 또는 모든 스프레드시트 프로그램에서 열 수 있습니다.
================================================================================
VIRUSTOTAL SCANNER - COMPLETE FOLDER SCAN
================================================================================
Folder: C:\Users\username\Desktop\my_files
API limit: 4 files per minute
Maximum file size: 32 MB
================================================================================
Counting files...
Total files found: 15
Starting analysis...
================================================================================
Progress: [1/15]
================================================================================
[*] Analyzing: document.pdf
Path: C:\Users\username\Desktop\my_files\document.pdf
Uploading file...
Waiting for analysis results...
Analysis in progress... (attempt 1/30)
>> URL: https://www.virustotal.com/gui/file/abc123...
>> Detections: 0/70
================================================================================
Progress: [2/15]
================================================================================
[*] Analyzing: program.exe
Path: C:\Users\username\Desktop\my_files\program.exe
Uploading file...
Waiting for analysis results...
>> URL: https://www.virustotal.com/gui/file/def456...
>> Detections: 2/70
[!] Rate limit reached: Waiting 15 seconds...
================================================================================
FINAL SCAN SUMMARY
================================================================================
ANALYZED FILES:
--------------------------------------------------------------------------------
1. [CLEAN] 0/70
File: C:\Users\username\Desktop\my_files\document.pdf
URL: https://www.virustotal.com/gui/file/abc123...
2. [DETECTED] 2/70
File: C:\Users\username\Desktop\my_files\program.exe
URL: https://www.virustotal.com/gui/file/def456...
================================================================================
SKIPPED FILES:
--------------------------------------------------------------------------------
1. C:\Users\username\Desktop\my_files\large_file.iso
Reason: File too large (650.50 MB)
2. C:\Users\username\Desktop\my_files\system.dll
Reason: No read permissions
================================================================================
STATISTICS
================================================================================
Total files found: 15
Files analyzed: 13
Files skipped: 2
- Clean files (0 detections): 12
- Files with detections: 1
================================================================================
오류: "잘못된 API 키"
오류: "파일에 대한 액세스 거부"
스크립트가 매우 느립니다.
건너뛴 파일
MIT 라이선스 - Copyright (c) 2025 neorai
이 프로젝트는 자유롭고 오픈소스입니다. 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 LICENSE 파일을 참조하세요.