Hide Forgot
Created attachment 1146558 [details] Set of certificates to test easily Description of problem: When gnutls-serv is used with TLSv1.2 protocol and ciphersuites that use RSA key exchange, it reports "Server Signature", equal to the Client Certificate. Version-Release number of selected component (if applicable): gnutls-3.3.8-14.el7_2.x86_64 How reproducible: always Steps to Reproduce: 1. git clone https://github.com/tomato42/tlsfuzzer.git 2. pushd tlsfuzzer 3. git clone https://github.com/warner/python-ecdsa .python-ecdsa 4. ln -s .python-ecdsa/ecdsa ecdsa 5. git clone https://github.com/tomato42/tlslite-ng.git .tlslite-ng 6. ln -s .tlslite-ng/tlslite tlslite 7. popd 8. tar xzf certificates.tar.gz 9. gnutls-serv --priority NORMAL:+VERS-TLS1.2 --port 4433 --http --x509cafile ca/cert.pem --x509keyfile server/key.pem --x509certfile server/cert.pem (in other console, same directory) 10. PYTHONPATH=tlsfuzzer python tlsfuzzer/scripts/test-rsa-sigs-on-certificate-verify.py -k client/key.pem -c client/cert.pem Actual results: multiple times (with different hashes) in gnutls-serv output: ... - Version: TLS1.2 - Key Exchange: RSA - Server Signature: RSA-SHA256 - Client Signature: RSA-SHA256 - Cipher: AES-128-CBC - MAC: SHA1 ... Expected results: no "Server Signature: " lines Additional info:
It seems that the while verifying the client's certificate signature, the server's (idea of) signature algorithm gets overwritten. That is something trivial to fix.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-2218.html