PDA

Bekijk Volledige Versie : Heterogeneity as a form of obscurity, and its usefulness



Bob Rogers
22/08/03, 17:45
From: Crispin Cowan <crispin@immunix.com>
Date: Sun, 17 Aug 2003 15:42:07 -0700

Shaun Clowes wrote:

>I think it's generally accepted that homogenity breeds insecurity, in
>which case it makes sense to try to be as different from everyone else
>as possible even if that doesn't make it impossible for someone to break
>you.
>
That is a commonly held view, but I would not say it is widely accepted.
I certainly don't accept it.

Heterogeneity increases survivability of the *species*, but does little
to protect the individual . . .

I don't think that stands up, at least not for digital species. I can
run Apache on Linux/x86, for which tons of shellcode is available, or I
can run the same version of Apache on Linux/sparc, for which much less
is available, and exists within a smaller and more specialized
community. For a member of a biological species, this would be
tantamount to switching to an entirely different biochemistry at will,
in order to become indigestible to the majority of predators (and making
the Darwinian metaphor much harder to digest in the process).

From this perspective, it is clear that choosing the "biochemistry"
of Sparcs would protect me as an individual. At the very least, I can
expect to have more time to patch my Sparc when a new vulnerability
comes to light.

. . . At most, you could say that running the most common system
makes you somewhat more vulnerable to attack, and you should take
that into consideration when planning your security.

Yes; and it would be interesting (though probably difficult) to quantify
that. Exploits are often cobbled together from several sources, so the
size of an "exploit community" has a direct bearing on how quickly an
exploit becomes available after a member of that community learns of an
exploitable flaw. Perhaps the dependence of time to exploit on
community size is even quadratic? If so, then heterogeneity benefits
the whole ecological niche, by fragmenting exploit communities and
therefore making them less efficient.

So heterogeneity is really just security by obscurity, dressed up to
sound pretty . . .

Seems to me that obscurity is the *only* defence against exploits for
unpublished/unpatched vulnerabilities that are spreading in the cracker
community; if you can avoid being a target, by whatever means, then you
are ahead of the game.

Anyway, thank you for posting, and making me think.

-- Bob Rogers
http://rgrjr.dyndns.org/

P.S. to moderator: I am hoping that this has diverged sufficiently from
the original "Buffer overflow prevention" thread to be worth approving . . .

Crispin Cowan
22/08/03, 19:15
Bob Rogers wrote:

> Heterogeneity increases survivability of the *species*, but does little
> to protect the individual . . .
>
>I don't think that stands up, at least not for digital species. I can
>run Apache on Linux/x86, for which tons of shellcode is available, or I
>can run the same version of Apache on Linux/sparc, for which much less
>is available, and exists within a smaller and more specialized
>community....
>
> . . . At most, you could say that running the most common system
> makes you somewhat more vulnerable to attack, and you should take
> that into consideration when planning your security.
>
These statements seem to agree. Is there a point?

>Yes; and it would be interesting (though probably difficult) to quantify
>that.
>
It is difficult to quantify just about any security benefit.

> So heterogeneity is really just security by obscurity, dressed up to
> sound pretty . . .
>
>Seems to me that obscurity is the *only* defence against exploits for
>unpublished/unpatched vulnerabilities that are spreading in the cracker
>community; if you can avoid being a target, by whatever means, then you
>are ahead of the game.
>
Now that is just not true. All of the technologies in the previous
thread (StackGuard, PointGuard, ProPolice, PaX, W^X, etc.) have some
capacity to resist attacks based on unpublished/unpatched
vulnerabilities. That is their entire purpose.

Crispin

--
Crispin Cowan, Ph.D. http://immunix.com/~crispin/
Chief Scientist, Immunix http://immunix.com
http://www.immunix.com/shop/

Nicholas Weaver
22/08/03, 19:45
On Thu, Aug 21, 2003 at 08:56:51PM -0700, Crispin Cowan composed:

> >Seems to me that obscurity is the *only* defence against exploits for
> >unpublished/unpatched vulnerabilities that are spreading in the cracker
> >community; if you can avoid being a target, by whatever means, then you
> >are ahead of the game.
> >
> Now that is just not true. All of the technologies in the previous
> thread (StackGuard, PointGuard, ProPolice, PaX, W^X, etc.) have some
> capacity to resist attacks based on unpublished/unpatched
> vulnerabilities. That is their entire purpose.

Likewise, the worm research has been focusing on how to automatically
detect, analyze, and respond to a new worm or similar threat. For
some classes (eg, Scanning worms like Slammer, blaster, code red,
etc), this appears quite doable.

So the likely viable worm defenses ideally should deal with 0 day
worms, which means stopping a new vulnerability contained in a new
worm.

--
Nicholas C. Weaver nweaver@cs.berkeley.edu

Crispin Cowan
27/08/03, 03:45
Eric Greenberg wrote:

>Heterogeneity has played a major role in disastor and recovery designs for
>as long as I can remember (that would be the past 20 years). Equally so, I
>
Be *very* careful here: security is fundamentally different from fault
tolerance. FT needs to defeat random, independent faults, and
heterogeneity helps. Security needs to defeat an intelligent adversary,
and the adversary can defeat two heterogeneous systems with
approximately twice the effort of defeating a single system. The
defender, in turn, has to spend approximately twice the effort to deploy
dual heterogeneous systems as to deploy a single system.

I argue that it is worse than that, because the effort to defeat two
heterogeneous systems is somewhat *less* than double that of a single
system (because the attacker can exploit common design and
implementation failures) and the effort to deploy & operate dual
heterogeneous systems is somewhat *more* than double that of a single
system (because the defender must account for both consistency and
incompatibility).

Once again, it is not that heterogeneity doesn't work. It's that for the
goal of defending a single resource, it is not as cost-effective as due
diligence & best practices, such as properly employed authentication,
firewalls, and secure operating systems.

Crispin

--
Crispin Cowan, Ph.D. http://immunix.com/~crispin/
Chief Scientist, Immunix http://immunix.com
http://www.immunix.com/shop/