MOO-cows Mailing List Archive
[Prev][Next][Index][Thread]
Re: Caller & Player
The following example is taken out of EricM@BioMOO@Diversity University
security manual.
-- quotation start --
Why is it unacceptable to test "player" for security on +x verbs?
I'll give an example. Loro the lazy wizard writes a +x verb that can
recycle
any object and tests permissions with "if
(!$perm_utils:controls(player,this))" at the verb's beginning. Semli the
sneaky programmer builds an object and adds a "tell" verb to it (ie. a
verb that gets called any time someone in the same room speaks). The
"tell" verb calls Loro's +x verb and tells it to recycle all of Loro's
objects. Semli puts the object in Loro's room...and Loro gets a nasty
surprise after connecting. Neato eh! Note that "player" will be the
person speaking (Loro in this case), because "player" is set to whoever
initiates the action, and can only be changed by wiz-permed verbs.
Generally, it stays the same from the task's start to it's finish. Now,
if Loro had tested caller_perms(), then Semli's call would have been caught
as one that did not have permission to be recycling objects. Got it?
-- quotation end --
Cesar Manuel Silva Henriques
**********************************************************************
*"...the biggest, most urgent problems that a man as to solve are *
*unvariably within himself and not around him." S. Francisco de Assis*
* *
*"A crazy man is that who doesn't think before comiting a mad act ...*
*a mad man is that who thinks before, but does it even though ... *
*i am a mad man" - Anonymous ... or not *
**********************************************************************
On Wed, 17 Jul 1996, Thomas LEVY wrote:
> Hi,
> Many security problems seem to be due to the difference between the
> caller and the player. I mean, most of the verbs check the player.
> But, I can't really see the difference between Caller and Player object
> while executing a verb.
> In the LambdaMOO Programmer's Manual, it is written that: "caller is an
> object, the same as 'player'".
> Can somebody, explain me what I miss?
>
> Thanks
> Thomas
>
>
Follow-Ups:
References:
Home |
Subject Index |
Thread Index