[gnutls-devel] GnuTLS | Wrong alerts for malformed CertificateVerify messages in TLS 1.2 (#848)
Development of GNU's TLS library
gnutls-devel at lists.gnutls.org
Thu Oct 24 16:43:18 CEST 2019
Hubert Kario (@mention me if you need reply) created an issue: https://gitlab.com/gnutls/gnutls/issues/848
## Description of problem:
When GnuTLS (e4a7db34259295e) receives a CertificateVerify with algorithms that don't match ones sent in CertificateRequest or which are incorrect (use different hash than indicated), it sends wrong alerts (`handshake_failure` instead of `decrypt_error` or `illegal_parameter`)
## Version of gnutls used:
## Distributor of gnutls (e.g., Ubuntu, Fedora, RHEL)
e4a7db34259295e
## How reproducible:
Steps to Reproduce:
* `doc/credentials/gnutls-http-serv --priority NORMAL:-VERS-ALL:+VERS-TLS1.3:+VERS-TLS1.2:+DHE-PSK:+PSK:+SHA384:+SHA256 -p 4433 -d 6`
* https://github.com/tomato42/tlsfuzzer/pull/604
* `python scripts/test-ecdsa-in-certificate-verify.py -k /tmp/client-p256/key.pem -c /tmp/client-p256/cert.pem`
## Actual results:
```
...
make sha224+ecdsa signature, advertise it as sha1+ecdsa in CertificateVerify ...
Error encountered while processing node <tlsfuzzer.expect.ExpectAlert object at 0x7ff2e6b64090> (child: <tlsfuzzer.expect.ExpectClose object at 0x7ff2e6b640d0>) with last message being: <tlslite.messages.Message object at 0x7ff2e6abf410>
Error while processing
Traceback (most recent call last):
File "scripts/test-ecdsa-in-certificate-verify.py", line 274, in main
runner.run()
File "/home/hkario/dev/tlsfuzzer/tlsfuzzer/runner.py", line 227, in run
node.process(self.state, msg)
File "/home/hkario/dev/tlsfuzzer/tlsfuzzer/expect.py", line 1484, in process
raise AssertionError(problem_desc)
AssertionError: Expected alert description "decrypt_error" does not match received "handshake_failure"
...
Test support for ECDSA signatures in CertificateVerify
Version: 1
Test end
successful: 22
failed: 6
'make sha224+ecdsa signature in CertificateVerify'
'make sha224+ecdsa signature, advertise it as sha1+ecdsa in CertificateVerify'
'make sha224+ecdsa signature, advertise it as sha256+ecdsa in CertificateVerify'
'make sha224+ecdsa signature, advertise it as sha384+ecdsa in CertificateVerify'
'make sha224+ecdsa signature, advertise it as sha512+ecdsa in CertificateVerify'
'md5+ecdsa forced'
```
## Expected results:
```
Test end
successful: 28
failed: 0
```
--
Reply to this email directly or view it on GitLab: https://gitlab.com/gnutls/gnutls/issues/848
You're receiving this email because of your account on gitlab.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-devel/attachments/20191024/ae4953f0/attachment.html>
More information about the Gnutls-devel
mailing list