Re: Problem with OCSP status in gnutls-cli

Nikos Mavrogiannopoulos <[email protected]>
Newsgroups gmane.network.gnutls.general
Message-ID <CAJU7za+G33QKeCkmAMsCLD-90_=UtBA5TS_R_-OSFU2S7E9o8g@mail.gmail.com>
On Wed, Dec 13, 2017 at 1:26 PM, Johannes Bauer <[email protected]> wrote:
> Hi Nikos,
>
> On 13.12.2017 12:46, Nikos Mavrogiannopoulos wrote:
>
>>> So, for now, this works as a workaround for me -- but I do think that is
>>> unintended behavior on gnuTLS' side, isn't it?
>>
>> I'm not sure. There is already a test for that (see
>> tests/ocsp-tests/ocsp-tls-connection) and gnutls-cli seems to be able
>> to connect. Could you help me by providing a reproducer to the issue?
>
> Sure thing! I've created a blob, ocsp_reproducer.tar.gz (attached at
> bottom), that contains all certificates and an OCSP response which I
> crafted to be valid for a year. It relies on OpenSSL (possibly 1.1,
> don't know when the -status_file option was added). Here's how it works:

Thank you. I checked it further and it seems that openssl s_client
doesn't seem to check/verify any OCSP responses given. That's why you
see it working on that server.

gnutls attempts OCSP verification with the following steps:
1. reads the included certificates in the OCSP response.
 [no such certs are included in that response]
2. If that fails, it extracts the DN of the OCSP signer and search the
included trusted list based on DN.
 [no DN is included in the OCSP response; only a hash of the DN]
3. If all of the above fails, it will try to verify against the
client's issuer certificate in the presented chain.
 [fails because the server chain doesn't include its issuer]

Did you generate this OCSP response based on some rules which
suggested to have it that way? I suspect it would be possible to
extend the trust database searching (in gnutls and p11-kit as well)
using SHA1 hash of fields, but that would not be a trivial change.

regards,
Nikos


[0].
OCSP Response Information:
    Response Status: Successful
    Response Type: Basic OCSP Response
    Version: 1
    Responder Key ID: 4d5ddb9d963896e0f16028fabd2a8f8e083329c6
    Produced At: Wed Dec 13 12:12:05 UTC 2017
    Responses:
        Certificate ID:
            Hash Algorithm: SHA1
            Issuer Name Hash: b731f8dc9366b6a1b427daa84e53909fa28b9a71
            Issuer Key Hash: 4d5ddb9d963896e0f16028fabd2a8f8e083329c6
            Serial Number: 6313d7d35516497c5e48d7dff323724a
        Certificate Status: good
        This Update: Wed Dec 13 09:12:05 UTC 2017
        Next Update: Thu Dec 13 12:12:05 UTC 2018
    Extensions:
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.