[EROS-Arch] Proposed new facility: reducing resume capabilities
Jonathan S. Shapiro
shap@eros-os.org
Fri, 21 Sep 2001 16:08:32 -0400
I don't see that it's a replay attack if the server has *asked* you to
replay, and the scenario doesn't happen unless somebody with a resume key
asks you to replay.
The one rather odd case might go like this:
A calls B. B forwards request (with resume key) to C. C requests replay, as
a result of which A re-calls B.
I'm not sure if this is important or not. Offhand I think it's not, but it's
certainly odd behavior.
Oh. Yuck. This is already possible without the reduction mechanism. Here's
how:
Keeper of A "stuns" A by requesting a fault key. Using register interface,
places a known fault code in A so as to regain control later. Makes call to
B using A's keys, pretending to be A, passing fault key in resume key
position.
When B or C later invokes the resume key slot (which is a fault key), A will
be set running, immediately fault back into keeper, who can replay the whole
thing at will.
So the only real distinction here is that the server can *request* the
replay. There is no newly-introduced exposure that the server will receive
unsolicited replays.
Jonathan