Description
Feast before 0.63.0 contains an unsafe deserialization vulnerability that allows unauthenticated or unauthorized attackers to achieve remote code execution by sending a crafted gRPC request to the registry server. The user_defined_function.body field of an OnDemandFeatureView spec is decoded from base64 and passed to dill.loads() before any authorization check is performed, enabling attackers to embed a malicious serialized Python object with an arbitrary __reduce__ method to execute OS commands as the feast service account.
Problem types
Deserialization of Untrusted Data
Product status
Any version before 0.63.0
Credits
Tanguy Snoeck
References
huntr.com/bounties/d64b8111-180b-46ba-afa3-c877fda2ede6 (Huntr Disclosure)
github.com/feast-dev/feast/releases/tag/v0.63.0 (Release Notes)
github.com/...ommit/835cda8e2c1359f1f496ad72701dbd6a73bdb25a (Patch Commit)
www.vulncheck.com/...a-applyfeatureview-grpc-deserialization