Hi Chris,
 
[snipped]
 
It seems to me that both of these prerequisites are realistic:
 
1. When deploying a new protocol feature like this, in my experience there is 
usually a period of time where graceful fallback is an operational requirement. 
In particular, an ECDH+ML-KEM initiator may still need to talk to ECDH-only 
responders or vice versa.
 
2. If a responder having multiple users is a realistic deployment scenario, 
then I think one user impersonating another to the responder would be a 
realistic threat?
 
I agree that mandatory-ML-KEM would probably work, but I'm worried it might not 
be realistic, given 1., until the ecosystem has transitioned to ECDH+ML-KEM. We 
have some time, since the attack is not actually exploitable until "Q-day" 
(i.e., if/when a large enough quantum computer is built that can break ECDH). 
But we can't wait forever. it would be useful if there were other levers we 
could pull. Any ideas?
 
         While I agree that these prerequisites are not unrealistic, I think 
that by Q-day (the day we believe the CRQC exists) all hosts must be 
         already switched to the mode when PQ algorithms are mandatory, with no 
exception for “old” systems. And before this day the attack is impossible.
 
Do you think the working group would be open to a breaking change for the draft 
that mitigates this attack? In any case, I think it ought to be spelled out in 
security considerations.
 
         For the particular attack you described no breaking changes to the 
protocol are needed to defend. I can propose the following modification.
         What the attacker does in this attack – modifies initiator’s 
IKE_SA_INIT making it looking like initiator does not propose any PQ KE methods 
at all.
         Note, that an attacker does not have access to responder’s long-term 
authentication key and we can exploit this to detect this modification.
 
         My idea is that responder can hash the received IKE_SA_INIT message 
(actually, do a negotiated prf with some fixed or known key, since
         hash is not negotiated in IKEv2) and include the result into the 
response IKE_SA_INIT using some new status notification.
         Responder’s IKE_SA_INIT message is directly included into the data the 
responder authenticates, thus the attacker cannot change it unless
         responder’s private key is compromised or the attacker can break the 
authentication algorithm.
 
         When the initiator receives the IKE_SA_INIT response, it can check 
whether the content of this notification matches the IKE_SA_INIT message it 
sent.
         If not – the attack is detected. Initiator that does not support this 
extension will just ignore the unknown notification.
 
         Note that this does not protect against situation when responder’s 
long-term key is compromised and initiator’s one is not. 
         But in this case if the responder selects the hybrid key exchange and 
the attacker then modifies its selection as if only ECDH is selected, then the 
protocol will stuck – 
         the responder will expect IKE_INTERMEDIATE as next exchange and won’t 
accept IKE_AUTH that the attacker will initiate.
         I’m not sure if the attacker can fix this situation (it seems to me 
the answer is no, because even if it in between actively modifying
         all IKE messages, eventually it will have to authenticate all these 
messages on behalf on initiator, which seems
         infeasible, since we assume that initiator’s key is not compromised).
 
         And if both peers’ long-term keys are compromised and the attacker can 
break ECDH, then no defense is possible.
 
         Your opinion, will this defense work?
 
         Regards,
         Valery.
 
Chris P.
 
 
 
 
_______________________________________________
IPsec mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to