locka99 / opcua

A client and server implementation of the OPC UA specification written in Rust
Mozilla Public License 2.0
476 stars 129 forks source link

Add protection against unlimited nesting of object encodings #210

Closed locka99 closed 2 years ago

locka99 commented 2 years ago

Arrays may contain Arrays may contains Arrays.... or other variations of data nested in other data. Decoding provide a nesting context and a nesting limit on each decode operation to allow the decoder to abort the decoder if it goes too deep.

locka99 commented 2 years ago

Requires some unit tests for the same if possible.

Most probably the existing decoding limits may have to be modified to decoding state, or there is some other similar mechanism