impossibile verificare il documento di identità dell'istanza di AWS EC2 con libressl

0

Sto cercando di seguire i passaggi qui:

link

per verificare un documento di identità dell'istanza e sto avendo successo quando eseguo l'istanza (con OpenSSL 1.0.2k-fips 26 Jan 2017 ) e l'errore sul mio Macbook (con LibreSSL 2.2.7 ).

Ho fatto un diff dei file e non c'è differenza. SHA1 incluso di seguito.

C'è qualche ovvia ragione per cui ciò fallirebbe? Non sono sicuro di dove andare da qui.

Nell'istanza:

[ec2-user@ip-10-215-73-128 ~]$ openssl smime -verify -in $PKCS7 -inform PEM -content $DOCUMENT -certfile AWSpubkey -noverify > /dev/null
Verification successful

[ec2-user@ip-10-215-73-128 ~]$ ls
AWSpubkey
[ec2-user@ip-10-215-73-128 ~]$ echo $DOCUMENT
/tmp/iid
[ec2-user@ip-10-215-73-128 ~]$ echo $PKCS7
/tmp/iid.pkcs7
[ec2-user@ip-10-215-73-128 ~]$ openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017

[ec2-user@ip-10-215-73-128 ~]$ sha1sum $DOCUMENT
0ab2144f3a388f9ab211fcc61b79d9c3996aae13  /tmp/iid
[ec2-user@ip-10-215-73-128 ~]$ sha1sum $PKCS7
986e701e30828217a3289a79df2759beda5eacc2  /tmp/iid.pkcs7
[ec2-user@ip-10-215-73-128 ~]$ sha1sum AWSpubkey
58f35f20bd57ec01773c29d08ff813c6b6479837  AWSpubkey

A livello locale:

$ openssl smime -verify -in $PKCS7 -inform PEM -content $DOCUMENT -certfile AWSpubkey -noverify > /dev/null
Verification failure
140735950726088:error:21075076:PKCS7 routines:PKCS7_verify:content and data present:/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-22.50.2/libressl/crypto/pkcs7/pk7_smime.c:297:

$ ls
AWSpubkey   iid.pkcs7   instance.iid
$ echo $DOCUMENT
instance.iid
$ echo $PKCS7
iid.pkcs7
$ openssl version
LibreSSL 2.2.7

$ sha1sum $DOCUMENT
0ab2144f3a388f9ab211fcc61b79d9c3996aae13  instance.iid
$ sha1sum $PKCS7
986e701e30828217a3289a79df2759beda5eacc2  iid.pkcs7
$ sha1sum AWSpubkey
58f35f20bd57ec01773c29d08ff813c6b6479837  AWSpubkey
    
posta Scott 29.11.2018 - 01:31
fonte

1 risposta

1

Credo che questo sia un problema che si verifica a causa della diversa gestione degli errori nelle vecchie versioni di LibreSSL / OpenSSL. (Pensa che MacOS avrebbe dovuto usare qualcosa di più recente per i loro valori predefiniti)

Nelle vecchie versioni viene generato un errore quando viene fornita una firma PKCS7 non separata insieme al contenuto di input (in pratica si presuppone che i dati non siano referenziati sia nella firma che in un file esterno). Le versioni successive avevano come default il solo lancio di un errore se chiamate con un flag o saltando interamente il controllo a seconda del ramo.

Puoi provare a risolvere il problema verificando con una versione aggiornata di LibreSSL o OpenSSL. È possibile ottenere questi sul tuo Mac tramite macports o homebrew.

    
risposta data 29.11.2018 - 08:38
fonte

Leggi altre domande sui tag