
Un outil pour simplifier le processus de recherche d'IOCs.
Un outil pour simplifier le processus de recherche sur les empreintes de fichiers, les adresses IP et autres indicateurs de compromission (IOC).
pip install ioccheck
Vous pouvez également exécuter le code directement
git clone https://github.com/ranguli/ioccheck && cd ioccheck
poetry install
Remplissez ~/.config/ioccheck/credentials avec une entrée pour chaque service pour lequel vous avez des identifiants :
[virustotal]
api_key=YOUR_API_KEY_HERE
[malwarebazaar]
api_key=YOUR_API_KEY_HERE
[shodan]
api_key=YOUR_API_KEY_HERE
[twitter]
consumer_key=YOUR_API_KEY_HERE
consumer_secret=YOUR_API_KEY_HERE
access_token=YOUR_API_KEY_HERE
access_secret=YOUR_API_KEY_HERE
➜ ioccheck 275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f
Vérification de l'empreinte 275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f.
[*] Algorithme de hachage :
SHA256
[*] URL VirusTotal :
https://virustotal.com/gui/file/275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f/
[*] Détections VirusTotal :
61 moteurs (81 %) ont détecté ce fichier.
╒══════════════╤════════════╤═══════════════════════════════╕
│ Antivirus │ Détecté │ Résultat │
╞══════════════╪════════════╪═══════════════════════════════╡
│ Malwarebytes │ Non │ │
├──────────────┼────────────┼───────────────────────────────┤
│ Avast │ Oui │ EICAR Test-NOT virus !!! │
├──────────────┼────────────┼───────────────────────────────┤
│ ClamAV │ Oui │ Win.Test.EICAR_HDB-1 │
├──────────────┼────────────┼───────────────────────────────┤
│ Kaspersky │ Oui │ EICAR-Test-File │
├──────────────┼────────────┼───────────────────────────────┤
│ BitDefender │ Oui │ EICAR-Test-File (pas un virus)│
├──────────────┼────────────┼───────────────────────────────┤
│ Paloalto │ Non │ │
├──────────────┼────────────┼───────────────────────────────┤
│ TrendMicro │ Oui │ Eicar_test_file │
├──────────────┼────────────┼───────────────────────────────┤
│ FireEye │ Oui │ EICAR-Test-File (pas un virus)│
├──────────────┼────────────┼───────────────────────────────┤
│ Sophos │ Oui │ EICAR-AV-Test │
├──────────────┼────────────┼───────────────────────────────┤
│ Microsoft │ Oui │ Virus:DOS/EICAR_Test_File │
├──────────────┼────────────┼───────────────────────────────┤
│ McAfee │ Oui │ Fichier test EICAR │
├──────────────┼────────────┼───────────────────────────────┤
│ Fortinet │ Oui │ EICAR_TEST_FILE │
├──────────────┼────────────┼───────────────────────────────┤
│ AVG │ Oui │ EICAR Test-NOT virus !!! │
╘══════════════╧════════════╧═══════════════════════════════╛
[*] Réputation VirusTotal :
3392
Création d'une empreinte
>>> from ioccheck import Hash
>>> from ioccheck.services import VirusTotal
>>> eicar = Hash("275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f")
>>> # De quel type de hash s'agit-il ?
>>> print(eicar.hash_type)
SHA256
Recherche d'une empreinte
>>> # Sans argument, check() tente tous les services pris en charge. Les clés API sont récupérées depuis ~/.ioccheck par défaut.
>>> eicar.check()
>>> # Ou alors :
>>> eicar.check(services=VirusTotal, config_path=/foo/bar/.ioccheck)
Analyse d'une empreinte
>>> # Vérifiez le rapport VirusTotal pour voir si Sophos détecte notre empreinte
>>> eicar.reports.virustotal.get_detections(engines=["Sophos"])
{'Sophos': {'category': 'malicious', 'engine_name': 'Sophos', 'engine_version': '1.0.2.0', 'result': 'EICAR-AV-Test', 'method': 'blacklist', 'engine_update': '20210314'}}
>>> # Sous quel nom cette empreinte est-elle connue ?
>>> print(eicar.reports.virustotal.name)
'eicar.com-2224'
>>> # Combien de moteurs AV détectent cette empreinte ?
>>> eicar.reports.virustotal.detection_count
60
>>> # Affichez-moi simplement la réponse de l'API VirusTotal !
>>> eicar.reports.virustotal.api_response
<vt.object.Object file 275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f>