Subject: [TLS] DTLS lost connection on server side

From: Hauke Mehrtens <[email-masked]>
Date: Wed, 21 Aug 2013 12:54:10 +0200

This problem is similar to the problem described in RFC6347 section
4.2.8. Establishing New Associations with Existing Parameters.

We have a DTLS Server S and a DTLS Client C which did a successful
handshake and have an encrypted connection.

1. S looses its state (e.g., after a reboot) and C does not get informed
about that.
2. C send an encrypted application data package to S, because C does not
know that S lost its state and it has some new data.
3. S send a unencrypted fatal unexpected_message alert, because it does
not have any connection with C and is unable to decrypt the message or
encrypt the alert.

What should C now do with this alert?

A: Ignore it, because it thinks it has an encrypted channel with the
other peer.
	Then it will never be able to send a package to the other peer.

B: Handle it and try to do a new DTLS handshake with the peer.
	Now any attacker would be able to reset the connection with just
sending an unencrypted alert.

C: Ignore it and wait till some timeout and do a new handshake.
	It takes some time till the new connection will be established.

Hauke

---

From: Michael Tuexen <[email-masked]>
Date: Wed, 21 Aug 2013 13:23:12 +0200

> 	It takes some time till the new connection will be established.
I would suggest to use
http://tools.ietf.org/html/rfc6520
and allow C to detect that the peer is gone. Then reconnect.
Dead peer detection is one of the use cases for DTLS heartbeats.

Best regards
Michael
> 
> Hauke
> _______________________________________________
> TLS mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/tls
>