Fuzz introspector: fuzz_sign_with_invalid_key
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
29 91 model_signing.hashing.Config.hash call site: 00091 model_signing.hashing.Config._build_sharded_file_hasher_factory._factory
19 161 model_signing.signing.Config.sign call site: 00161 model_signing._signing.sign_pkcs11.CertSigner._get_verification_material
9 141 model_signing._signing.sign_ec_key.Signer.sign call site: 00141 model_signing._signing.sign_certificate.Signer._get_verification_material
8 35 model_signing._signing.sign_ec_key.Signer.__init__ call site: 00035 model_signing.signing.Config.sign
8 49 model_signing.hashing.Config.hash call site: 00049 model_signing.hashing.Config._build_sharded_file_hasher_factory._factory
8 151 model_signing.signing.Config.sign call site: 00151 model_signing._signing.sign_sigstore.Signer._get_identity_token
4 85 model_signing._serialization.file.Serializer.serialize call site: 00085 .list
3 7 ...model-transparency.tests.fuzzing.fuzz_sign_with_invalid_key.TestOneInput call site: 00007 .open
3 136 model_signing._signing.sign_sigstore_pb.pae call site: 00136 cryptography.hazmat.primitives.asymmetric.ec.ECDSA.__init__
2 1 ...model-transparency.tests.fuzzing.fuzz_sign_with_invalid_key.TestOneInput call site: 00001 fdp.ConsumeIntInRange
2 4 ...model-transparency.tests.fuzzing.fuzz_sign_with_invalid_key.TestOneInput call site: 00004 tempfile.TemporaryDirectory
2 13 ...model-transparency.tests.fuzzing.fuzz_sign_with_invalid_key.TestOneInput call site: 00013 model_signing.signing.Config.__init__

Fuzzer calltree

0 ...model-transparency.tests.fuzzing.fuzz_sign_with_invalid_key.TestOneInput [function] [call site] 00000
1 atheris.FuzzedDataProvider [function] [call site] 00001
1 fdp.ConsumeIntInRange [function] [call site] 00002
1 fdp.ConsumeBytes [function] [call site] 00003
1 <builtin>.print [function] [call site] 00004
1 tempfile.TemporaryDirectory [function] [call site] 00005
1 os.path.join [function] [call site] 00006
1 fdp.ConsumeIntInRange [function] [call site] 00007
1 <builtin>.open [function] [call site] 00008
1 fdp.ConsumeBytes [function] [call site] 00009
1 os.path.join [function] [call site] 00011
1 <builtin>.open [function] [call site] 00012
1 os.path.join [function] [call site] 00014
1 model_signing.signing.Config.__init__ [function] [call site] 00015
2 model_signing.hashing.Config.__init__ [function] [call site] 00016
3 <builtin>.frozenset [function] [call site] 00017
3 model_signing.hashing.Config.use_file_serialization [function] [call site] 00018
4 model_signing._serialization.file.Serializer.__init__ [function] [call site] 00019
5 pathlib.Path [function] [call site] 00020
5 model_signing.hashing.Config._build_file_hasher_factory._factory [function] [call site] 00021
6 model_signing.hashing.Config._build_stream_hasher [function] [call site] 00022
7 model_signing._hashing.memory.SHA256.__init__ [function] [call site] 00023
8 hashlib.sha256 [function] [call site] 00024
7 model_signing._hashing.memory.BLAKE2.__init__ [function] [call site] 00025
8 hashlib.blake2b [function] [call site] 00026
6 model_signing._hashing.io.SimpleFileHasher.__init__ [function] [call site] 00027
5 model_signing.manifest._FileSerialization.__init__ [function] [call site] 00028
6 <builtin>.str [function] [call site] 00029
4 model_signing.hashing.Config._build_file_hasher_factory [function] [call site] 00030
1 model_signing.signing.Config.use_elliptic_key_signer [function] [call site] 00031
2 pathlib.Path [function] [call site] 00032
2 model_signing._signing.sign_ec_key.Signer.__init__ [function] [call site] 00033
3 private_key_path.read_bytes [function] [call site] 00034
3 model_signing._signing.sign_ec_key._check_supported_ec_key [function] [call site] 00035
1 model_signing.signing.Config.sign [function] [call site] 00036
2 model_signing.signing.Config.use_sigstore_signer [function] [call site] 00037
3 model_signing._signing.sign_sigstore.Signer.__init__ [function] [call site] 00038
4 sigstore.sign.SigningContext.staging [function] [call site] 00039
4 sigstore.oidc.Issuer.staging [function] [call site] 00040
4 sigstore.sign.SigningContext.production [function] [call site] 00041
4 sigstore.oidc.Issuer [function] [call site] 00042
4 sigstore.oidc.Issuer.production [function] [call site] 00043
2 model_signing.hashing.Config.hash [function] [call site] 00044
3 pathlib.Path [function] [call site] 00045
3 full.relative_to [function] [call site] 00046
3 ignored_paths.append [function] [call site] 00047
3 ignored_paths.extend [function] [call site] 00048
3 model_signing._serialization.file_shard.Serializer.set_allow_symlinks [function] [call site] 00049
4 pathlib.Path [function] [call site] 00050
4 model_signing.hashing.Config._build_sharded_file_hasher_factory._factory [function] [call site] 00051
5 model_signing.hashing.Config._build_stream_hasher [function] [call site] 00052
5 model_signing._hashing.io.ShardedFileHasher.__init__ [function] [call site] 00053
6 <builtin>.super [function] [call site] 00054
6 model_signing._hashing.io.ShardedFileHasher.set_shard [function] [call site] 00055
4 model_signing.manifest._ShardSerialization.__init__ [function] [call site] 00056
5 <builtin>.str [function] [call site] 00057
3 model_signing._serialization.file.Serializer.set_allow_symlinks [function] [call site] 00058
4 pathlib.Path [function] [call site] 00059
4 model_signing.hashing.Config._build_file_hasher_factory._factory [function] [call site] 00060
4 model_signing.manifest._FileSerialization.__init__ [function] [call site] 00061
3 model_signing._serialization.file.Serializer.serialize [function] [call site] 00062
4 itertools.chain [function] [call site] 00063
4 model_path.glob [function] [call site] 00064
4 model_signing._serialization.serialization.check_file_or_directory [function] [call site] 00065
5 path.is_symlink [function] [call site] 00066
5 path.is_file [function] [call site] 00067
5 path.is_dir [function] [call site] 00068
4 path.is_file [function] [call site] 00069
4 model_signing._serialization.serialization.should_ignore [function] [call site] 00070
5 path.is_relative_to [function] [call site] 00071
5 <builtin>.any [function] [call site] 00072
4 paths.append [function] [call site] 00073
4 concurrent.futures.ThreadPoolExecutor [function] [call site] 00074
4 tpe.submit [function] [call site] 00075
4 concurrent.futures.as_completed [function] [call site] 00076
4 future.result [function] [call site] 00077
4 manifest_items.append [function] [call site] 00078
4 os.path.relpath [function] [call site] 00079
4 rp.startswith [function] [call site] 00080
4 pathlib.Path [function] [call site] 00081
4 rel_ignore_paths.append [function] [call site] 00082
4 pathlib.Path [function] [call site] 00083
4 model_signing.hashing.Config._build_file_hasher_factory._factory [function] [call site] 00084
4 model_signing.manifest._FileSerialization.__init__ [function] [call site] 00085
4 <builtin>.list [function] [call site] 00086
4 <builtin>.frozenset [function] [call site] 00087
4 model_path.resolve [function] [call site] 00088
4 os.path.basename [function] [call site] 00089
4 model_signing.manifest.Manifest.__init__ [function] [call site] 00090
3 model_signing._serialization.file_shard.Serializer.serialize [function] [call site] 00091
4 itertools.chain [function] [call site] 00092
4 model_path.glob [function] [call site] 00093
4 model_signing._serialization.serialization.check_file_or_directory [function] [call site] 00094
4 path.is_file [function] [call site] 00095
4 model_signing._serialization.serialization.should_ignore [function] [call site] 00096
4 model_signing._serialization.file_shard.Serializer._get_shards [function] [call site] 00097
5 path.stat [function] [call site] 00098
5 model_signing._serialization.file_shard._endpoints [function] [call site] 00099
6 <builtin>.range [function] [call site] 00100
5 shards.append [function] [call site] 00101
4 shards.extend [function] [call site] 00102
4 concurrent.futures.ThreadPoolExecutor [function] [call site] 00103
4 tpe.submit [function] [call site] 00104
4 concurrent.futures.as_completed [function] [call site] 00105
4 future.result [function] [call site] 00106
4 manifest_items.append [function] [call site] 00107
4 os.path.relpath [function] [call site] 00108
4 rp.startswith [function] [call site] 00109
4 pathlib.Path [function] [call site] 00110
4 rel_ignore_paths.append [function] [call site] 00111
4 pathlib.Path [function] [call site] 00112
4 model_signing.hashing.Config._build_sharded_file_hasher_factory._factory [function] [call site] 00113
4 model_signing.manifest._ShardSerialization.__init__ [function] [call site] 00114
4 <builtin>.list [function] [call site] 00115
4 <builtin>.frozenset [function] [call site] 00116
4 model_path.resolve [function] [call site] 00117
4 os.path.basename [function] [call site] 00118
4 model_signing.manifest.Manifest.__init__ [function] [call site] 00119
3 pathlib.Path [function] [call site] 00120
2 model_signing._signing.signing.Payload.__init__ [function] [call site] 00121
3 model_signing._hashing.memory.SHA256.__init__ [function] [call site] 00122
3 model_signing.manifest.Manifest.resource_descriptors [function] [call site] 00123
4 <builtin>.sorted [function] [call site] 00124
4 <builtin>.str [function] [call site] 00125
3 model_signing._hashing.memory.SHA256.update [function] [call site] 00126
3 resources.append [function] [call site] 00127
3 model_signing._hashing.memory.SHA256.compute [function] [call site] 00128
3 statement.ResourceDescriptor [function] [call site] 00129
3 statement.Statement [function] [call site] 00130
2 model_signing._signing.sign_ec_key.Signer.sign [function] [call site] 00131
3 google.protobuf.json_format.MessageToJson [function] [call site] 00132
3 sigstore_protobuf_specs.io.intoto.Signature [function] [call site] 00133
3 model_signing._signing.sign_sigstore_pb.pae [function] [call site] 00134
4 <builtin>.len [function] [call site] 00135
4 <builtin>.len [function] [call site] 00136
3 model_signing._signing.sign_ec_key.get_ec_key_hash [function] [call site] 00137
3 cryptography.hazmat.primitives.asymmetric.ec.ECDSA.__init__ [function] [call site] 00138
4 cryptography.hazmat.backends.openssl.backend.Backend.ecdsa_deterministic_supported [function] [call site] 00139
3 sigstore_protobuf_specs.io.intoto.Envelope [function] [call site] 00140
3 model_signing._signing.sign_sigstore_pb.Signature.__init__ [function] [call site] 00141
3 sigstore_protobuf_specs.dev.sigstore.bundle.v1.Bundle [function] [call site] 00142
3 model_signing._signing.sign_certificate.Signer._get_verification_material [function] [call site] 00143
4 model_signing._signing.sign_certificate.Signer._get_verification_material._to_protobuf_certificate [function] [call site] 00144
5 sigstore_protobuf_specs.dev.sigstore.common.v1.X509Certificate [function] [call site] 00145
5 certificate.public_bytes [function] [call site] 00146
4 chain.extend [function] [call site] 00147
4 model_signing._signing.sign_certificate.Signer._get_verification_material._to_protobuf_certificate [function] [call site] 00148
4 sigstore_protobuf_specs.dev.sigstore.bundle.v1.VerificationMaterial [function] [call site] 00149
4 sigstore_protobuf_specs.dev.sigstore.common.v1.X509CertificateChain [function] [call site] 00150
2 model_signing._signing.sign_sigstore.Signer.sign [function] [call site] 00151
3 sigstore.dsse.Statement [function] [call site] 00152
3 google.protobuf.json_format.MessageToJson [function] [call site] 00153
3 model_signing._signing.sign_sigstore.Signer._get_identity_token [function] [call site] 00154
4 sigstore.oidc.IdentityToken [function] [call site] 00155
4 sigstore.oidc.detect_credential [function] [call site] 00156
4 sigstore.oidc.IdentityToken [function] [call site] 00157
3 signer.sign_dsse [function] [call site] 00158
3 model_signing._signing.sign_sigstore_pb.Signature.__init__ [function] [call site] 00159
2 model_signing.signing.Config.sign [function] [call site] 00160
2 model_signing._signing.sign_pkcs11.Signer.sign [function] [call site] 00161
3 google.protobuf.json_format.MessageToJson [function] [call site] 00162
3 model_signing._signing.sign_ec_key.get_ec_key_hash [function] [call site] 00163
3 model_signing._signing.sign_sigstore_pb.pae [function] [call site] 00164
3 hash.update [function] [call site] 00165
3 hash.finalize [function] [call site] 00166
3 PyKCS11.Mechanism [function] [call site] 00167
3 asn1crypto.algos.DSASignature.from_p1363 [function] [call site] 00168
3 sigstore_protobuf_specs.io.intoto.Signature [function] [call site] 00169
3 sigstore_protobuf_specs.io.intoto.Envelope [function] [call site] 00170
3 model_signing._signing.sign_sigstore_pb.Signature.__init__ [function] [call site] 00171
3 sigstore_protobuf_specs.dev.sigstore.bundle.v1.Bundle [function] [call site] 00172
3 model_signing._signing.sign_pkcs11.CertSigner._get_verification_material [function] [call site] 00173
4 model_signing._signing.sign_pkcs11.CertSigner._get_verification_material._to_protobuf_certificate [function] [call site] 00174
5 sigstore_protobuf_specs.dev.sigstore.common.v1.X509Certificate [function] [call site] 00175
5 certificate.public_bytes [function] [call site] 00176
4 chain.extend [function] [call site] 00177
4 model_signing._signing.sign_pkcs11.CertSigner._get_verification_material._to_protobuf_certificate [function] [call site] 00178
4 sigstore_protobuf_specs.dev.sigstore.bundle.v1.VerificationMaterial [function] [call site] 00179
4 sigstore_protobuf_specs.dev.sigstore.common.v1.X509CertificateChain [function] [call site] 00180
2 pathlib.Path [function] [call site] 00181
2 model_signing._signing.sign_sigstore_pb.Signature.write [function] [call site] 00182
3 path.write_text [function] [call site] 00183