安全问题与protobuf任何领域?

问题描述 投票:1回答:1

所以!

我正在考虑使用一个 Any 字段。

message ServiceRequest {
   google.protobuf.Any envelope;
}

客户机将发送任意的数据,这些数据被打包在 "服务对服务 "的请求对象中。envelope 字段,服务器将根据未打包的类型信息调度给请求处理程序(实现一种多态调度)。未识别类型的请求将被记录下来。客户端和服务器可能会使用Java构建。

我的核心问题是:这种方法是否存在安全风险(或其他重要的)缺点?

谢谢!

java security polymorphism protocol-buffers
1个回答
0
投票

这不是 全然 任意--它需要真正被识别为一个本地protobuf类型。 被视为不透明的有效载荷。它不允许调用者在本地实例化任意类型,这在一些系统中是一个安全漏洞 (BinaryFormatter 例如,在.NET中)。) 所以,我不会因此而大惊小怪。我并不会因此而大惊小怪,因为我不知道是否有 oneof 会更合适,因为那会把事情限制在你的事情上 积极期待.

© www.soinside.com 2019 - 2024. All rights reserved.