#41334 [BC-Critical] Attacker can publish a blob that cannot be deserialized and shut down the movement chain
Description
Brief/Intro
Vulnerability Details
pub fn into_da_blob<C>(blob: CelestiaBlob) -> Result<DaBlob<C>, anyhow::Error>
where
C: Curve + for<'de> Deserialize<'de>,
{
// decompress blob.data with zstd
let decompressed =
zstd::decode_all(blob.data.as_slice()).context("failed to decompress blob")?;
// deserialize the decompressed data with bcs
let blob = bcs::from_bytes(decompressed.as_slice()).context("failed to deserialize blob")?;
Ok(blob)
}Impact Details
References
Proof of Concept
Proof of Concept
Previous#41324 [BC-Insight] Celestia auth tokens can be stolen by sniffing websocket requestsNext#41337 [BC-Insight] Channel buffer size in block proposer is too low leading to network delays and resource exhaustion
Was this helpful?