akkadotnet/Hyperion

Insecure deserialization

Closed this issue · 3 comments

games commented

Hi there, just want to know is that true?

Security advisories: GHSA-hpw7-3vq3-mmv6

Due to how Wire handles type information in its serialization format, malicious payloads can be passed to a deserializer. e.g. using a surrogate on the sender end, an attacker can pass information about a different type for the receiving end. And by doing so allowing the serializer to create any type on the deserializing end.
This is the same issue that exists for .NET BinaryFormatter https://docs.microsoft.com/en-us/visualstudio/code-quality/ca2300?view=vs-2019
This also applies to the fork of Wire, AkkaDotNet/Hyperion.

@games this applies to any form of polymorphic serialization - so yes that affects Hyperion. We have a PR here that I'm reviewing now that implements a solve for this: #242

Related: #226

Resolved via #242