2.2. Replay Protection (Protection contre la relecture)
2.2. Replay Protection (Protection contre la relecture)
Le modèle de sécurité basé sur l'utilisateur fournit une protection contre la relecture de messages, le retard de messages et la redirection de messages. Cette protection est basée sur l'utilisation de:
- msgAuthoritativeEngineID: Le snmpEngineID du moteur SNMP autorisé impliqué dans l'échange de ce message.
- msgAuthoritativeEngineBoots: Le nombre de fois où le moteur SNMP autorisé s'est réinitialisé depuis la configuration initiale.
- msgAuthoritativeEngineTime: Le nombre de secondes depuis que le moteur SNMP autorisé a incrémenté pour la dernière fois le compteur msgAuthoritativeEngineBoots.
Ces trois valeurs ensemble fournissent une horloge faiblement synchronisée qui est utilisée pour limiter la fenêtre temporelle d'opportunité pour les attaques de relecture de messages.
Le mécanisme de protection contre la relecture fonctionne comme suit:
For Request Messages (Pour les messages de requête)
Lors de la génération d'un message de requête, le moteur SNMP non autorisé inclut les valeurs suivantes du moteur SNMP autorisé:
- Le msgAuthoritativeEngineID le plus récemment reçu
- Le msgAuthoritativeEngineBoots le plus récemment reçu
- Le msgAuthoritativeEngineTime le plus récemment reçu
For Response Messages (Pour les messages de réponse)
Lors de la génération d'un message de réponse, le moteur SNMP autorisé inclut ses valeurs actuelles pour:
- msgAuthoritativeEngineID
- msgAuthoritativeEngineBoots
- msgAuthoritativeEngineTime
Time Window (Fenêtre temporelle)
Un moteur SNMP récepteur considère qu'un message est en dehors de la fenêtre temporelle si:
abs(msgAuthoritativeEngineTime - localEngineTime) > 150 secondes
où localEngineTime est la notion du moteur SNMP local de l'heure actuelle pour le msgAuthoritativeEngineID.
Les messages qui sont en dehors de la fenêtre temporelle sont rejetés, et une indication d'erreur est renvoyée au sous-système de traitement des messages.