From 7f4de5d22165bc4b2d8f810e9113c8398f4f0173 Mon Sep 17 00:00:00 2001 From: Guido Vranken Date: Sat, 26 Feb 2022 13:22:37 +0100 Subject: [PATCH] [wolfssl] Import more tests/corpora (#7333) * [wolfssl] Import more tests/corpora * [wolfssl] Import more corpora --- projects/wolfssl/Dockerfile | 12 +++++++++++- projects/wolfssl/build.sh | 20 +++++++++++++++++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/projects/wolfssl/Dockerfile b/projects/wolfssl/Dockerfile index 83cbdf460..10e040a37 100644 --- a/projects/wolfssl/Dockerfile +++ b/projects/wolfssl/Dockerfile @@ -35,7 +35,13 @@ RUN gsutil cp gs://bearssl-backup.clusterfuzz-external.appspot.com/corpus/libFuz RUN gsutil cp gs://nettle-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/nettle_cryptofuzz-nettle-with-mini-gmp/public.zip $SRC/corpus_nettle.zip RUN gsutil cp gs://libecc-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/libecc_cryptofuzz-libecc/public.zip $SRC/corpus_libecc.zip RUN gsutil cp gs://relic-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/relic_cryptofuzz-relic/public.zip $SRC/corpus_relic.zip -RUN gsutil cp gs://cryptofuzz-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/cryptofuzz_cryptofuzz-openssl/public.zip $SRC/corpus_cryptofuzz.zip +RUN gsutil cp gs://cryptofuzz-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/cryptofuzz_cryptofuzz-openssl/public.zip $SRC/corpus_cryptofuzz-openssl.zip +RUN gsutil cp gs://cryptofuzz-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/cryptofuzz_cryptofuzz-boringssl/public.zip $SRC/corpus_cryptofuzz-boringssl.zip +RUN gsutil cp gs://cryptofuzz-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/cryptofuzz_cryptofuzz-nss/public.zip $SRC/corpus_cryptofuzz-nss.zip +RUN gsutil cp gs://bitcoin-core-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/bitcoin-core_cryptofuzz-bitcoin-cryptography-w2-p2/public.zip $SRC/corpus_bitcoin-core-w2-p2.zip +RUN gsutil cp gs://bitcoin-core-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/bitcoin-core_cryptofuzz-bitcoin-cryptography-w15-p4/public.zip $SRC/corpus_bitcoin-core-w15-p4.zip +RUN gsutil cp gs://bitcoin-core-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/bitcoin-core_cryptofuzz-bitcoin-cryptography-w20-p8/public.zip $SRC/corpus_bitcoin-core-w20-p8.zip +RUN gsutil cp gs://num-bigint-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/num-bigint_cryptofuzz/public.zip $SRC/corpus_num-bigint.zip RUN gsutil cp gs://wolfssl-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/wolfssl_cryptofuzz-sp-math-all/public.zip $SRC/corpus_wolfssl_sp-math-all.zip RUN gsutil cp gs://wolfssl-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/wolfssl_cryptofuzz-sp-math-all-8bit/public.zip $SRC/corpus_wolfssl_sp-math-all-8bit.zip RUN gsutil cp gs://wolfssl-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/wolfssl_cryptofuzz-sp-math/public.zip $SRC/corpus_wolfssl_sp-math.zip @@ -47,6 +53,10 @@ RUN gsutil cp gs://botan-backup.clusterfuzz-external.appspot.com/corpus/libFuzze RUN gsutil cp gs://botan-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/botan_ecc_p521/public.zip $SRC/corpus_botan_ecc_p521.zip RUN gsutil cp gs://botan-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/botan_ecc_bp256/public.zip $SRC/corpus_botan_ecc_bp256.zip +# OpenSSL/LibreSSL corpora, which require a special import procedure +RUN gsutil cp gs://openssl-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/openssl_bignum/public.zip $SRC/corpus_openssl_expmod.zip +RUN gsutil cp gs://libressl-backup.clusterfuzz-external.appspot.com/corpus/libFuzzer/libressl_bignum/public.zip $SRC/corpus_libressl_expmod.zip + WORKDIR wolfssl COPY build.sh $SRC/ diff --git a/projects/wolfssl/build.sh b/projects/wolfssl/build.sh index 1bffe1d2e..ae340bda7 100755 --- a/projects/wolfssl/build.sh +++ b/projects/wolfssl/build.sh @@ -238,13 +238,20 @@ then # Convert Wycheproof test vectors to Cryptofuzz corpus format find $SRC/wycheproof/testvectors/ -type f -name 'ecdsa_*' -exec $SRC/cryptofuzz-disable-fastmath/cryptofuzz --from-wycheproof={},$SRC/cryptofuzz-seed-corpus/ \; + find $SRC/wycheproof/testvectors/ -type f -name 'ecdh_*' -exec $SRC/cryptofuzz-disable-fastmath/cryptofuzz --from-wycheproof={},$SRC/cryptofuzz-seed-corpus/ \; # Unpack corpora from other projects unzip -n $SRC/corpus_bearssl.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_nettle.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_libecc.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_relic.zip -d $SRC/cryptofuzz_seed_corpus/ - unzip -n $SRC/corpus_cryptofuzz.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_cryptofuzz-openssl.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_cryptofuzz-boringssl.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_cryptofuzz-nss.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_bitcoin-core-w2-p2.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_bitcoin-core-w15-p4.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_bitcoin-core-w20-p8.zip -d $SRC/cryptofuzz_seed_corpus/ + unzip -n $SRC/corpus_num-bigint.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_wolfssl_sp-math-all.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_wolfssl_sp-math-all-8bit.zip -d $SRC/cryptofuzz_seed_corpus/ unzip -n $SRC/corpus_wolfssl_sp-math.zip -d $SRC/cryptofuzz_seed_corpus/ @@ -267,6 +274,15 @@ then unzip $SRC/corpus_botan_ecc_bp256.zip -d $SRC/botan-bp256-corpus/ find $SRC/botan-bp256-corpus/ -type f -exec $SRC/cryptofuzz-disable-fastmath/cryptofuzz --from-botan={},$SRC/cryptofuzz-seed-corpus/,brainpool256r1 \; + # Import OpenSSL/LibreSSL corpora + mkdir $SRC/openssl-expmod-corpus/ + unzip $SRC/corpus_openssl_expmod.zip -d $SRC/openssl-expmod-corpus/ + find $SRC/openssl-expmod-corpus/ -type f -exec $SRC/cryptofuzz-disable-fastmath/cryptofuzz --from-openssl-expmod={},$SRC/cryptofuzz-seed-corpus/ \; + + mkdir $SRC/libressl-expmod-corpus/ + unzip $SRC/corpus_libressl_expmod.zip -d $SRC/libressl-expmod-corpus/ + find $SRC/libressl-expmod-corpus/ -type f -exec $SRC/cryptofuzz-disable-fastmath/cryptofuzz --from-openssl-expmod={},$SRC/cryptofuzz-seed-corpus/ \; + # Pack it cd $SRC/cryptofuzz_seed_corpus zip -r $SRC/cryptofuzz_seed_corpus.zip . @@ -283,6 +299,8 @@ then rm -rf $SRC/botan-p384-corpus/ rm -rf $SRC/botan-p521-corpus/ rm -rf $SRC/botan-bp256-corpus/ + rm -rf $SRC/openssl-expmod-corpus/ + rm -rf $SRC/libressl-expmod-corpus/ rm -rf $SRC/cryptofuzz_seed_corpus/ rm -rf $SRC/cryptofuzz_seed_corpus.zip