[comp.virus] The Executable Bit

WHMurray@DOCKMASTER.NCSC.MIL (02/10/90)

The data object marked with an "executable bit"  that Jerry L. and Dave
Chess are discussing is an example of a "strongly typed data object."
A "typed" data object is one upon which only a limited set of operations
are valid.  A "strongly typed" object is one in which the rules for the
type are known to and enforced by the environment.  In this case, for
environment, you may substitute hardware.

The IBM AS400, with which people in Yorktown, if not Poughkeepsie,
should be familiar, implements such strongly typed objects.  In this
system it is not normal for something to be both executable and
modifiable at one and the same time.  As a rule, programs can never be
modified.  They can be replaced, but not changed.
That is to say, the name of a program is unique; if you replace it, it
automatically receives a new unique name.

This meets Jerry's requirements, if not his objectives.  While changes
to programs will be hard to conceal, for reasons of useability, progams
are invoked by their short names.  A person might have to note the
change for protection to result.  And of course, it might be possible to
create a new environment on top of the one provided by the system, and
not visible to it, which would execute modifiable objects.   A REXX
interpreter of Hypercard interpreter, for example, could be so
implemented.

However, in response to Dave's question about whether such objects would
"get the bit", it is also possible to do it the other way.  Scripts for
the AS400 command language (named CLs in the Poughkeepsie style) are
typed objects.  I hope that REXX scripts, for that SAA interpreter,
when it becomse available for AS400, will be typed objects.  (Will
Rochester prevail over Poughkeepsie; will fair Harvard conquer Princeton
at last;  or has von Neumann vanquished Aiken forever?  Watch this
space.)

William Hugh Murray, Fellow, Information System Security, Ernst & Young
2000 National City Center Cleveland, Ohio 44114
21 Locust Avenue, Suite 2D, New Canaan, Connecticut 06840