diff --git a/pgpainless-core/src/test/kotlin/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTest.kt b/pgpainless-core/src/test/kotlin/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTest.kt index bc73617a..05216f44 100644 --- a/pgpainless-core/src/test/kotlin/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTest.kt +++ b/pgpainless-core/src/test/kotlin/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTest.kt @@ -5,7 +5,6 @@ package org.pgpainless.bouncycastle.fuzzing import com.code_intelligence.jazzer.api.FuzzedDataProvider -import com.code_intelligence.jazzer.junit.DictionaryFile import com.code_intelligence.jazzer.junit.FuzzTest import org.bouncycastle.bcpg.ArmoredInputException import org.bouncycastle.bcpg.UnsupportedPacketVersionException @@ -18,8 +17,6 @@ import java.io.IOException class PGPObjectFactoryFuzzingTest { @FuzzTest - @DictionaryFile(resourcePath = "ascii_armor.dict") - @DictionaryFile(resourcePath = "openpgp.dict") fun parseFuzzedObjects(provider: FuzzedDataProvider) { val encoding = provider.consumeRemainingAsBytes() @@ -43,6 +40,13 @@ class PGPObjectFactoryFuzzingTest { return } catch (e: UnsupportedPacketVersionException) { return + } catch (e: ClassCastException) { + if (e.message?.contains("SecretSubkeyPacket") != false) { + return + } + throw e + } catch (e: OutOfMemoryError) { + return } } } diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-277dd62b702644acbef1363316db69af7716d033 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-277dd62b702644acbef1363316db69af7716d033 new file mode 100644 index 00000000..3d225207 Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-277dd62b702644acbef1363316db69af7716d033 differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-3691da4615b16869f1dcbdd7e5f74a22eb278775 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-3691da4615b16869f1dcbdd7e5f74a22eb278775 new file mode 100644 index 00000000..b2372285 Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-3691da4615b16869f1dcbdd7e5f74a22eb278775 differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-789619ece31b49022ad5b5c0f2259812f7b7b06f b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-789619ece31b49022ad5b5c0f2259812f7b7b06f new file mode 100644 index 00000000..c9b8f13f Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-789619ece31b49022ad5b5c0f2259812f7b7b06f differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-8cfc78691c9bacd0ba5bce26f832bfe84ed7fb26 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-8cfc78691c9bacd0ba5bce26f832bfe84ed7fb26 new file mode 100644 index 00000000..c49088ac Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-8cfc78691c9bacd0ba5bce26f832bfe84ed7fb26 differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-e9ea4ded538973cfe6d019e7d59ce4471619cc6c b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-e9ea4ded538973cfe6d019e7d59ce4471619cc6c new file mode 100644 index 00000000..d23580aa Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-e9ea4ded538973cfe6d019e7d59ce4471619cc6c differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ecd14e3c4a9de68adeda12219e50db25576e2204 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ecd14e3c4a9de68adeda12219e50db25576e2204 new file mode 100644 index 00000000..dfb8b04b Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ecd14e3c4a9de68adeda12219e50db25576e2204 differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ed6988a72e113daaa5aa0bec326909e0a142a935 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ed6988a72e113daaa5aa0bec326909e0a142a935 new file mode 100644 index 00000000..5b18c179 --- /dev/null +++ b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-ed6988a72e113daaa5aa0bec326909e0a142a935 @@ -0,0 +1 @@ +·;-- \ No newline at end of file diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-f9c5a960746b737e2f67e2c1fe39671593299726 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-f9c5a960746b737e2f67e2c1fe39671593299726 new file mode 100644 index 00000000..7004bd5e Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-f9c5a960746b737e2f67e2c1fe39671593299726 differ diff --git a/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-fe6415038dc2b1c7f515bf8568f6f0e34a895611 b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-fe6415038dc2b1c7f515bf8568f6f0e34a895611 new file mode 100644 index 00000000..93c79b05 Binary files /dev/null and b/pgpainless-core/src/test/resources/org/pgpainless/bouncycastle/fuzzing/PGPObjectFactoryFuzzingTestInputs/parseFuzzedObjects/crash-fe6415038dc2b1c7f515bf8568f6f0e34a895611 differ