schwehr / libais

C++ decoder for Automatic Identification System for tracking ships and decoding maritime information
Other
215 stars 94 forks source link

Ais26 fuzzer crashes #171

Open schwehr opened 6 years ago

schwehr commented 6 years ago

0221fb42365c0e753daf05517c797f4e2049da8e:

body: "J888007E8"
fill_bits: 0
    @     0x5616dbab010e  __assert_fail
    @     0x5616db3a36f4  libais::AisBitset::ToUnsignedInt()
    @     0x5616db39a720  libais::Ais26::Ais26()
    @     0x5616db3797e6  absl::MakeUnique<>()

15aad39e80430532bda83897dd8d3e0f321843a6:

body: "J888014E8"
fill_bits: 2
    @     0x55cf62fe210e  __assert_fail
    @     0x55cf628d56f4  libais::AisBitset::ToUnsignedInt()
    @     0x55cf628cc720  libais::Ais26::Ais26()
    @     0x55cf628ab7e6  absl::MakeUnique<>()

27ccaf3513553806e57100834aff0115b51529c2

body: "JJJJJJJJJ"
fill_bits: 1
ais.cpp:153 in unsigned int libais::AisBitset::ToUnsignedInt(const size_t, const size_t) const: start + len <= num_chars * 6

    @     0x564abe27510e  __assert_fail
    @     0x564abdb686f4  libais::AisBitset::ToUnsignedInt()
    @     0x564abdb5f5fb  libais::Ais26::Ais26()
    @     0x564abdb3e7e6  absl::MakeUnique<>()

689607c2e64d7e63c10d2217878a0c391eb61ba7:

body: "JNSocaJJN"
fill_bits: 0
    @     0x5639778f510e  __assert_fail
    @     0x5639771e86f4  libais::AisBitset::ToUnsignedInt()
    @     0x5639771df5fb  libais::Ais26::Ais26()
    @     0x5639771be7e6  absl::MakeUnique<>()

82c245084c0d23926c19bb7267c87a637fa5ae13:

body: "J0LLLLLr5"
fill_bits: 0
    @     0x56445eb8010e  __assert_fail
    @     0x56445e4736f4  libais::AisBitset::ToUnsignedInt()
    @     0x56445e46a5fb  libais::Ais26::Ais26()
    @     0x56445e4497e6  absl::MakeUnique<>()

8ee4d81362939d4d05a7b11d2e943afd5236c288

body: "JJJJJJJ>BJ"
fill_bits: 4
    @     0x561ff2dca10e  __assert_fail
    @     0x561ff26bd6f4  libais::AisBitset::ToUnsignedInt()
    @     0x561ff26b45fb  libais::Ais26::Ais26()
    @     0x561ff26937e6  absl::MakeUnique<>()

crash-d55ee64b9a2ec375198e1d21d0b07a0b4c4eca21:

body: "JJJJJJJJJJ"
fill_bits: 0
ais.cpp:153 in unsigned int libais::AisBitset::ToUnsignedInt(const size_t, const size_t) const: start + len <= num_chars * 6
    @     0x55917b14410e  __assert_fail
    @     0x55917aa376f4  libais::AisBitset::ToUnsignedInt()
    @     0x55917aa2e5fb  libais::Ais26::Ais26()
    @     0x55917aa0d7e6  absl::MakeUnique<>()