{ "item_id": "ker-odoh_split", "kernel": "odoh_split", "advisory": "RUSTSEC-2023-0095", "crate": "odoh-rs", "pre_version": "1.0.1", "post_version": "1.0.2", "advisory_url": "https://github.com/cloudflare/odoh-rs/pull/28", "title": "Invalid Slice Split Results in Server Panic", "source_file": "src/protocol.rs", "function": "encrypted_payload_len", "signature": "pub fn encrypted_payload_len(msg: &[u8], key_size: usize) -> Result", "spec_doc": "Splits an encrypted ODoH query into an encapsulated key (first key_size bytes) and ciphertext (the rest); returns the ciphertext length, or Err if the message is shorter than key_size. Must not panic on any input.", "bug_class": "panic", "fidelity": "model_of_std", "extraction_note": "src/protocol.rs decrypt_query: split_at(key_size) without length check", "witness_args": "&[1u8, 2, 3], 32usize", "labels": { "buggy": "odoh-rs@1.0.1", "reference": "odoh-rs@1.0.2" } }