|
|
|
|
|
by vidarh
342 days ago
|
|
The problem is that the moment the interpreter is powerful enough, you're relying on the data not being good enough at convincing the interpreter that it is an exception. You can only maintain hard isolation if the interpreter of the data is sufficiently primitive, and even then it is often hard to avoid errors that renders it more powerful than intended, be it outright bugs all the way up to unintentional Turing completeness. |
|
Yes and no. I think this is exactly the distinction that's been institutionally lost in the last few decades, because few people are architecting from top (software) to bottom (physical transport) of the stack anymore.
They just try and cram functionality in the topmost layer, when it should leverage others.
If I lock an interpreter out of certain functionality for a given data stream, ever, then exploitation becomes orders of magnitude more difficult.
Dumb analogy: only letters in red envelopes get to change mail delivery times + all regular mail is packaged in green envelopes
Fundamentally, it's creating security contexts from things a user will never have access to.
The LLMs-on-top-of-LLMs filtering approach is lazy and statistically guaranteed to end badly.