Releases: valorisa/vt-scanner-cli
Releases · valorisa/vt-scanner-cli
Release list
v1.2 - Secure Edition
🎉 VirusTotal Scanner CLI v1.2 - Secure Edition
Date de publication : 09 mars 2026
PowerShell : 5.1+
API : VirusTotal v3
🔐 Nouvelles Fonctionnalités Sécurité
🔑 Gestion Sécurisée de la Clé API
- SecureString : Clé API chiffrée via
Export-Clixml/Import-Clixml - Persistance automatique : Fichier
.vtapikey.securedans%USERPROFILE% - Chargement au démarrage : La clé est chargée automatiquement si présente
- Test-ApiKey : Validation automatique avec gestion HTTP 401/403
- Suppression sécurisée : Option pour effacer la clé sauvegardée
🎛️ Menu Gestion Clé API (Option 5)
--- Gestion de la Cle API ---
1. Ajouter/Nouvelle Cle
2. Charger Cle Sauvegardee
3. Tester Cle Actuelle
4. Supprimer Cle Sauvegardee
0. Retour au menu principal
🔍 Consultation de Scan Existant (Option 6)
- Entrez un ID d'analyse VirusTotal pour récupérer les résultats
- Utile pour vérifier un scan lancé précédemment sans re-scanner
✨ Améliorations Fonctionnelles
| Fonctionnalité | Description |
|---|---|
| Export CSV | Génération de rapports avec timestamp et métadonnées |
| Barre de progression | Visibilité pendant le scan de dossiers |
| Polling intelligent | Attente automatique des résultats (max 5 min) |
| Validation renforcée | Hash SHA256 (64 caractères), schéma HTTP/HTTPS obligatoire |
| Détection quota 403 | Arrêt propre en cas de limite API dépassée |
| BaseUrl protégée | .Trim() pour éviter les erreurs 400 avec espaces |
🐛 Corrections Appliquées
- ✅ Encodage UTF-8 sans BOM : Tous les fichiers texte convertis (résolution
gitingest aborted) - ✅ Test-ApiKey Response : Vérification
[System.Net.WebException]avant accès àResponse - ✅ Nettoyage strings : Suppression espaces superflus dans
Write-Host/Read-Host - ✅ Switch cases : Normalisation (
"1"au lieu de"1 ") - ✅ Hashtable keys : Nettoyage (
"x-apikey"au lieu de"x-apikey ")
📊 Statistiques
| Métrique | v1.1 | v1.2 | Évolution |
|---|---|---|---|
| Lignes de code | ~395 | ~668 | +69% |
| Fonctions | 9 | 17 | +89% |
| Options menu | 6 (0-5) | 7 (0-6) | +1 option |
| Fichiers documentés | 7 | 8 | +1 (alt_*) |
| Tokens documentation | ~14k | ~25k | +78% |
📁 Structure du Projet
vt-scanner-cli/
├── vt-scanner.ps1 # Script principal v1.2 (~668 lignes)
├── alt_vt-scanner.ps1 # Backup version v1.2 Secure Edition
├── README.md # Documentation principale v1.2
├── backup_README.md # Archive documentation v1.1
├── CHANGELOG.md # Historique v1.0 → v1.1 → v1.2
├── ROADMAP.md # Fonctionnalités v1.3 prévues
├── SECURITY.md # Politique de sécurité
├── .markdownlint.json # Configuration markdownlint
├── digest.txt # Documentation technique (gitingest)
└── .git/ # Dépôt Git
🚀 Installation Rapide
# Cloner le dépôt
git clone https://github.com/valorisa/vt-scanner-cli.git
cd vt-scanner-cli
# Débloquer le script (une seule fois)
Unblock-File -Path ".\vt-scanner.ps1"
# Lancer le scanner
.\vt-scanner.ps1🔧 Dépannage Rapide
⚠️ Erreur d'encodage UTF-8 avec gitingest
# Vérifier l'encodage d'un fichier
$bytes = [System.IO.File]::ReadAllBytes(".\vt-scanner.ps1")
if ($bytes[0] -eq 0xEF -and $bytes[1] -eq 0xBB -and $bytes[2] -eq 0xBF) {
Write-Host "❌ BOM détecté - Convertir en UTF-8 sans BOM avec Notepad++"
}🔑 Clé API invalide
- Régénérer la clé sur virustotal.com/gui/my-apikey
- Dans le script : Option 5 → 4 (Supprimer) → 1 (Ajouter nouvelle)
📦 Quota API dépassé
- Attendre 1 minute (URLs) ou 24h (fichiers)
- Ou passer à une clé API payante pour des limites plus élevées
🤝 Contribution
- Forkez le dépôt
- Créez une branche (
feature/nouvelle-fonction) - Committez les changements (
git commit -m 'Ajout fonctionnalité') - Pushez vers la branche (
git push origin feature/nouvelle-fonction) - Ouvrez une Pull Request
Bonnes pratiques :
- ✅ Tester toutes les options avant commit
- ✅ Garder la compatibilité PowerShell 5.1+
- ✅ Documenter les nouvelles fonctions
- ✅ Encoder tous les fichiers en UTF-8 sans BOM (critique pour gitingest)
🔗 Liens Utiles
| Ressource | Lien |
|---|---|
| VirusTotal API v3 | developers.virustotal.com |
| Obtenir une clé API | virustotal.com/gui/my-apikey |
| Documentation PowerShell | docs.microsoft.com/powershell |
| Dépôt GitHub | github.com/valorisa/vt-scanner-cli |
| Gitingest | gitingest.com |
📞 Support
Pour toute question ou problème :
- Consultez la section Dépannage du README
- Ouvrez une issue sur GitHub
- Vérifiez votre quota API sur VirusTotal
Développé avec ❤️ par valorisa
Version: 1.2 Secure Edition | PowerShell 5.1+ | API VirusTotal v3