Skip to content
FullStackHero edited this page Aug 3, 2025 · 1 revision

πŸ” VirusTotal File Scanner – Home

Welcome to the official documentation for the VirusTotal File Scanner, a secure, hash-based file analysis tool designed for offline and online use with seamless integration into VirusTotal’s public API.

This project was created with a clear purpose: to give developers, analysts, sysadmins and security enthusiasts an efficient, GUI-based method for scanning files using more than 70 antivirus engines without installing local AV software.


πŸš€ What does this app do?

  • Accepts files from your local system
  • Hashes them using SHA-256, SHA-1, MD5 (and optionally BLAKE2/SHA3)
  • Sends the hash to VirusTotal to query if the file is known to be malicious
  • Displays detection ratio, scan status, and additional metadata
  • Offers result export in CSV/JSON formats
  • Includes multilingual GUI and CLI compatibility

πŸ” Why is this project special?

Unlike traditional scanners, this application:

  • Runs completely locally, except for API queries
  • Does not upload files by default, only hashes (optional upload may follow)
  • Is protected by PyArmor – the app.py logic is encrypted
  • Uses a minimal runtime: pyarmor_runtime.pyd must be present
  • Supports drag & drop, clipboard, theme switching, and offline logging

πŸ’‘ Key Use Cases

  • Digital forensics & malware triage
  • Routine scans of USB drives, email attachments
  • Verifying hash integrity of unknown files
  • Lightweight integration into DevSecOps pipelines

🧰 Technologies Used

  • Python 3.8+
  • PySimpleGUI or Tkinter (frontend)
  • requests, hashlib, tqdm, dotenv
  • VirusTotal Public API
  • PyArmor (binary protection)

πŸ“„ Licenses and Legal

This tool is released under the MIT License.
It is intended for legal, ethical, and educational use only.
Users are responsible for ensuring their use complies with local laws and VirusTotal’s terms of service.


πŸ™‹β€β™‚οΈ Get Involved

  • Check the Issues page for open tasks and bugs
  • Contributions are welcome via pull requests

πŸ“Œ Status

The current version is v1.0.0
The project is actively maintained and open to feedback.

Clone this wiki locally