Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
ics-phishing-toolkit — Outil open source pour arrêter le phishing ICS (invitations de calendrier malveillantes) | Kitploit
Outils/GitHubGitHub/sublime-security/ics-phishing-toolkit
HameçonnageSécurité CloudRéponse aux IncidentsSécurité des APISécurité des Emails
GitHubsublime-security/ics-phishing-toolkit

ics-phishing-toolkit

Outil open source pour arrêter le phishing ICS (invitations de calendrier malveillantes)

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
184il y a 5 moisPas encore vérifié

Trousse de lutte contre le phishing ICS

Cette trousse de correction des invitations de calendrier malveillantes est conçue pour aider les équipes utilisant des solutions de sécurité email qui ne corrigent pas nativement ces attaques.

Si vous utilisez Sublime, vous n'avez pas besoin de cette trousse car la correction est prise en charge nativement.

Stacks supportées

Des scripts autonomes spécifiques à chaque stack (par ex., proofpoint-microsoft365.py, mimecast-google-workspace.py) sont fournis pour chaque combinaison de ces fournisseurs de sécurité email et de fournisseurs de calendrier :

Fournisseurs de sécurité email :

  • Proofpoint
  • Mimecast
  • Abnormal Security

Fournisseurs de calendrier :

  • Microsoft 365
  • Google Workspace

Rendez-vous dans la section Démarrage rapide pour commencer directement !

Vous ne voyez pas votre stack ? N'hésitez pas à nous indiquer la stack que vous souhaitez voir prise en charge à l'adresse [email protected].

Détection

Ces scripts nécessitent une solution de sécurité email qui détecte déjà les emails de phishing ICS, mais qui ne supprime pas les événements de calendrier créés via ces emails.

Si vous ne disposez pas d'une solution de sécurité email détectant le phishing ICS, Sublime Core propose une sécurité email gratuite et auto-hébergeable avec une détection intégrée du phishing ICS et une correction automatique des calendriers.

L'essor du phishing ICS

Le phishing ICS est une attaque à deux volets qui délivre des charges utiles malveillantes à la fois dans la boîte de réception et le calendrier d'un utilisateur. Ce vecteur d'attaque a connu une augmentation d'environ 100× du T1 au T4 2025, selon le Rapport de recherche sur les menaces email 2026 de Sublime, avec plus de 20 % des attaques de phishing de rappel du T4 utilisant des invitations de calendrier comme mécanisme de livraison.

La faille de sécurité critique : les événements de calendrier persistent même lorsque les solutions de sécurité email mettent en quarantaine ou suppriment l'email malveillant. Cela affecte à la fois les passerelles de sécurité email (SEG) et les solutions de sécurité email basées sur API, dont la plupart ne nettoient pas les événements de calendrier malveillants en date de février 2026.

Stopper le phishing ICS

En se basant sur la correction intégrée de Sublime pour les événements de calendrier malveillants, ces scripts Python suppriment les événements malveillants lorsque votre solution de sécurité email met en quarantaine les emails de phishing ICS. Les scripts :

  • Récupèrent les messages mis en quarantaine auprès de votre fournisseur de sécurité email
  • Extraient les pièces jointes de calendrier .ics et autres pièces jointes conformes à iCalendar de ces messages
  • Trouvent et suppriment les événements correspondants dans les calendriers des utilisateurs (Microsoft 365 ou Google Workspace)

SOAR

En tant que Python pur, vous pouvez exécuter ces scripts dans de nombreux SOAR, notamment Tines, Splunk SOAR et Cortex XSOAR.

Nous travaillons également sur des guides spécifiques aux SOAR. Veuillez contacter [email protected] si vous avez besoin d'aide ou souhaitez être averti lorsque nous publierons de la documentation pour un SOAR particulier.

Démarrage rapide

Chaque script autonome nécessite :

  1. Un environnement d'exécution compatible
  2. Des variables d'environnement contenant les identifiants API
  3. Les autorisations API appropriées pour votre solution de sécurité email et votre fournisseur de calendrier

Environnements d'exécution

Vous pouvez exécuter ces scripts dans tout environnement disposant de :

  • Python 3.9 ou ultérieur
  • Prise en charge de l'installation des paquets PyPI listés dans requirements.txt (requests et PyJWT)

Pour les déploiements en production, vous souhaiterez également planifier l'exécution régulière du script, par exemple avec une tâche cron.

Configuration

Les scripts s'exécutent en mode dry-run par défaut pour éviter la suppression accidentelle d'événements. Consultez les options de configuration pour savoir comment activer la suppression et comment implémenter une logique personnalisée en réponse à la découverte d'invitations et d'événements malveillants.

Proofpoint Cloud

root@kitploit:~
export PROOFPOINT_CLIENT_ID="your-client-id"
export PROOFPOINT_CLIENT_SECRET="your-client-secret"
  • PROOFPOINT_CLIENT_ID : ID client OAuth 2.0 pour l'API Proofpoint Cloud Threat Response
  • PROOFPOINT_CLIENT_SECRET : secret client OAuth 2.0

Mimecast

root@kitploit:~
export MIMECAST_CLIENT_ID="your-client-id"
export MIMECAST_CLIENT_SECRET="your-client-secret"
export MIMECAST_REGION="global"  # Options: global, us, uk (default: global)
  • MIMECAST_CLIENT_ID : ID client OAuth 2.0 pour l'API Mimecast 2.0
  • MIMECAST_CLIENT_SECRET : secret client OAuth 2.0
  • MIMECAST_REGION : endpoint régional de l'API (optionnel, par défaut global)

Autorisations API requises :

  • Services | Threat Remediation | Read
  • Gateway | Tracking | Read
  • Archive | Read

Abnormal Security

root@kitploit:~
export ABNORMAL_API_KEY="your-api-key"
  • ABNORMAL_API_KEY : clé API de la plateforme Abnormal Security

Google Workspace

root@kitploit:~
# Option 1 : Fichier de compte de service
export GOOGLE_SERVICE_ACCOUNT_FILE="/path/to/service-account.json"

# Option 2 : JSON du compte de service (en ligne)
export GOOGLE_SERVICE_ACCOUNT_JSON='{"type":"service_account",...}'
  • GOOGLE_SERVICE_ACCOUNT_FILE : chemin vers le fichier de clé JSON du compte de service
  • GOOGLE_SERVICE_ACCOUNT_JSON : identifiants du compte de service en ligne sous forme de chaîne JSON

Configuration requise :

  • Activer la délégation à l'échelle du domaine pour le compte de service
  • Autoriser le périmètre : https://www.googleapis.com/auth/calendar.events
  • Configurer dans la Console d'administration Google Workspace

Microsoft 365

root@kitploit:~
export MICROSOFT_CLIENT_ID="your-client-id"
export MICROSOFT_CLIENT_SECRET="your-client-secret"
export MICROSOFT_TENANT_ID="your-tenant-id"
  • MICROSOFT_CLIENT_ID : ID d'application (client) Azure AD
  • MICROSOFT_CLIENT_SECRET : secret client de l'application Azure AD
  • MICROSOFT_TENANT_ID : ID de répertoire (locataire) Azure AD

Autorisation API requise : Calendars.ReadWrite (autorisation d'application)

Exemple : Proofpoint + Microsoft 365

root@kitploit:~
export ICS_PHISHING_REMEDIATION_MODE="dry_run" # "dry_run" est la valeur par défaut
export MESSAGE_LOOKBACK_MINUTES=10

export PROOFPOINT_CLIENT_ID="your-client-id"
export PROOFPOINT_CLIENT_SECRET="your-secret"
export MICROSOFT_TENANT_ID="your-tenant"
export MICROSOFT_CLIENT_ID="your-client"
export MICROSOFT_CLIENT_SECRET="your-secret"

python3 proofpoint-microsoft365.py

Options de configuration

Mode dry-run (par défaut)

Par défaut, tous les scripts s'exécutent en mode dry-run pour éviter les suppressions accidentelles. Dans ce mode, le script va :

  • Récupérer les emails mis en quarantaine et extraire les invitations de calendrier
  • Rechercher les événements de calendrier correspondants
  • Journaliser les événements qui seraient supprimés sans rien supprimer effectivement

Cela vous permet de vérifier que le script fonctionne correctement avant d'activer la suppression réelle.

Activer la suppression

Pour supprimer réellement les événements de calendrier, définissez la variable d'environnement ICS_PHISHING_REMEDIATION_MODE :

root@kitploit:~
export ICS_PHISHING_REMEDIATION_MODE="delete_events"

Valeurs valides :

  • dry_run (par défaut) – Aperçu des actions sans suppression
  • delete_events – Supprime réellement les événements de calendrier correspondants

Les valeurs invalides déclencheront une erreur pour éviter une mauvaise configuration.

Fenêtre de recherche des messages

Tous les scripts recherchent les messages mis en quarantaine dans une fenêtre temporelle configurable :

root@kitploit:~
export MESSAGE_LOOKBACK_MINUTES=10  # Optionnel, par défaut 5 minutes

Important : Cette valeur doit correspondre à la fréquence de votre tâche cron avec une petite marge pour garantir qu'aucun message n'est oublié. Par exemple, si vous exécutez toutes les 5 minutes, définissez la fenêtre de recherche sur 10 minutes.

Callbacks personnalisés

Pour des intégrations supplémentaires, par exemple avec des systèmes de journalisation ou des outils de surveillance, vous pouvez implémenter des callbacks personnalisés dans votre script et les passer à la fonction delete_events_from_remediated_emails :

  • on_invitation_found_callback(invitation: CalendarInvitation) – Appelé lorsqu'une invitation de calendrier est trouvée dans un message mis en quarantaine
  • on_event_found_callback(invitation: CalendarInvitation, event: CalendarEvent) – Appelé pour chaque événement de calendrier correspondant

Exemple :

root@kitploit:~
def log_invitation(invitation):
    print(f"Found malicious invitation for {invitation.user_id}, UID: {invitation.ics_uid}")

def log_event(invitation, event):
    print(f"Found calendar event {event.id} matching invitation {invitation.ics_uid}")

fetcher = ProofpointCloudFetcher()
deleter = GoogleWorkspaceEventDeleter()

delete_events_from_remediated_emails(
    fetcher,
    deleter,
    mode="delete_events",  # Remplace le mode dry_run par défaut
    on_invitation_found_callback=log_invitation,
    on_event_found_callback=log_event
)

Remarque : Les erreurs dans les callbacks sont journalisées mais n'interrompent pas le traitement des événements.

Architecture

Tous les scripts suivent un modèle commun défini dans common.py :

root@kitploit:~
class MessageFetcher:
    def yield_remediated_emails(self) -> Iterator[Message]:
        """Fetch quarantined messages from your email security solution"""

class EventDeleter:
    def delete_matching_events(
        self,
        invitation: CalendarInvitation,
        mode: Mode,
        on_event_found_callback: Optional[Callable[[CalendarInvitation, CalendarEvent], None]]
    ) -> None:
        """Delete calendar events matching the ICS attachment"""

Les implémentations spécifiques à chaque stack gèrent l'authentification API et la logique propre au fournisseur.

Obtenir de l'aide

  • Questions, demandes de fonctionnalités ou rapports de bogues : [email protected]
  • Guides d'intégration SOAR : Contactez-nous à [email protected] pour un accès anticipé aux guides de déploiement détaillés pour votre plateforme SOAR
  • Renseignements sur les menaces : Lisez notre article de blog sur le phishing ICS et le Rapport de recherche sur les menaces email 2026
Télécharger l’outil