Sampled Security Policies
4.4.2006 / Security / Comments (0)
There’s this vague question I’ve been tossing around in my head for a couple of days - what is the class of security policies that one can enforce by sampling the execution of a program? Note that this is not the same as inlining reference monitors.
First of all, we need to precisely define “sampling”. How much state of the program do we see? The entire heap? The PC? The stack? The current value of all registers? How do the properties covered improve or degrade as we increase or decrease the state covered?
Then — what is the granularity of sampling? Instructions? Basic blocks? Random points in the program?
Also, sampling can not enforce a property with certainty, but with some probability. How can we make this probability high?
Like I said, this is just a fuzzy notion, and I have no concrete answers. For all I know, it might turn out that the class of properties enforceable through sampling is very small, or very weak. But it would be nice to know anyway.





