K
Kelsey Bjarnason
[snips]
I'll stop you right there. I'll point out to you a couple of simple
facts.
1) Checking C.O.L.A. and other such groups, you'll discover quickly that
there's a very real, if not necessarily very large, anti-linx and indeed
anti-OSS grouping of users, mostly Windows users.
2) Virus writing "howtos" exist, publicly, for Linux; the information on
how to infect, say, an ELF file is readily available.
3) Given the two items above, one would think it inevitable that a Linux
virus would be created.
4) No viable Linux virus has yet been identified.
Now, we can conclude a couple things from this. We could assume that
the entire group of anti-linux types are completely incompetent boobs.
Or we could conclude that despite their very active and very vocal
attempts to deride Linux, they really don't care. Or perhaps we can
conclude they're unable to perform simple web searches.
None of those seem particularly likely. Yet no such virus has ever been
identified.
On the other hand, the people who _have_ tried to write such viruses,
even where the code and methods were publicly accessible such that they
could be improved upon, enhanced, refined and so forth, have failed,
miserably, to produce viable Linux viruses.
And why is this? One needs but read their own reports. In simple
English, Linux is very resistant to such attacks. But hey, if something
else happens to let in viruses the way rotten meat lets in maggots, it
couldn't possibly be because the software is in any way faulty, could
it.
Let's take a look at Cohen's concepts a bit, though. His definition of
a virus, "a program that can 'infect' other programs by modifying them
to include a possibly evolved version of itself", is telling. How does
it infect other programs? Oh, right - it *absolutely requires* that the
underlying OS either allows non-admin users to overwrite executables, or
allow "root exploits". Both are failures in the OS. Note that the
*default* Windows installation has the user running as "root" with full
privileges to do exactly this, and not so much as a hint that this is a
bad idea. While this may be an install-time design oversight, it
remains a flaw in the OS, one which has critical impact on system
security.
We might also note that according to Cohen it is apparently trivial to
write a virus for *nix based systems. Odd, then, that despite the
popularity of such systems, such viruses simply _do not appear to
exist_. No, it's not a question of popularity; *nix systems have been
running for decades in everything from desktops to supercomputers and
everything in between and more. There have, quite possibly, been more
*nix users in the history of *nix than there have been Windows users.
Yet in all that time, with all those systems and all those users... a
lot of whom were, let's be honest, college and university students who
have, historically, been well known for performing exactly this kind of
mischief if given half a chance... not *one* *nix virus has been
detected in the wild as a successful virus - "successful" here implying
infection of a non-trivial number of machines by whatever means.
All those users... all those machines... all those decades... and not
*one* known successful virus. One worm of note - Morris - might be used
as a possible counterexample, to which I'll simply note that this means
in all that time, with all those machines, all those users, there has
been one, count 'em one, successful "virus" for such systems.
That's *one* as compared to some 70,000 viruses and variants for
Windows. And you expect me to buy that this is somehow *not* related to
the fact that Windows is a sieve? That it's mere coincidence that the
systems which effectively have no security or are riddled with
vulnerabilities are the ones that get infected?
Take the shatter exploit as an example. It relies on an OS flaw.
Specifically, it relies on the fact there's bugger all validation of
messages passed between processes, so a low-privilege caller can merrily
send messages to a system-level process and not a thing is done to check
wheter this is legit or not. It also relies on, IIRC, a buffer overflow
- in an OS-provided component. Another OS flaw. Net result? If I can
get my virus running even in a low-privilege process, I can use shatter
to wind up with system-level privileges, all due to OS flaws. Or I can
use IE's stunning ability to download and execute any code I choose
thanks to some stupendously bad design decisions... and note that IE is
now generally regarded as part of the OS. You may be able to remove the
interface component, but the rest remains.
The list goes on and on and on, but the fact remains: if the OS has a
decent security model, getting the virus to run *at all* is difficult,
getting it to propagate is even more so. It's only systems which are
badly design and badly implemented that suffer virus issues worthy of
note... and that wouldn't be the case if viruses were trivial to write
and not dependent upon OS flaws.
Feel free to prove me wrong, though. Say by providing a Linux-based
virus that a) will somehow automagically execute on the victim's machine
without the user needing to make it, explicitly, executable and b) will
merrily propagate to other executables and other systems *without*
relying on flaws in the OS's security mechanisms - no using root
exploits, for example, that would be relying on an OS flaw and would
invalidate the premise you're trying to establish.
Hell, if you think you've got such a critter, send it over; I've got a
box here I can use as a "throwaway" for testing purposes. 'Course,
being my box, it follows *my* security choices and the like, but none of
that matters, right?
false
I'll stop you right there. I'll point out to you a couple of simple
facts.
1) Checking C.O.L.A. and other such groups, you'll discover quickly that
there's a very real, if not necessarily very large, anti-linx and indeed
anti-OSS grouping of users, mostly Windows users.
2) Virus writing "howtos" exist, publicly, for Linux; the information on
how to infect, say, an ELF file is readily available.
3) Given the two items above, one would think it inevitable that a Linux
virus would be created.
4) No viable Linux virus has yet been identified.
Now, we can conclude a couple things from this. We could assume that
the entire group of anti-linux types are completely incompetent boobs.
Or we could conclude that despite their very active and very vocal
attempts to deride Linux, they really don't care. Or perhaps we can
conclude they're unable to perform simple web searches.
None of those seem particularly likely. Yet no such virus has ever been
identified.
On the other hand, the people who _have_ tried to write such viruses,
even where the code and methods were publicly accessible such that they
could be improved upon, enhanced, refined and so forth, have failed,
miserably, to produce viable Linux viruses.
And why is this? One needs but read their own reports. In simple
English, Linux is very resistant to such attacks. But hey, if something
else happens to let in viruses the way rotten meat lets in maggots, it
couldn't possibly be because the software is in any way faulty, could
it.
Let's take a look at Cohen's concepts a bit, though. His definition of
a virus, "a program that can 'infect' other programs by modifying them
to include a possibly evolved version of itself", is telling. How does
it infect other programs? Oh, right - it *absolutely requires* that the
underlying OS either allows non-admin users to overwrite executables, or
allow "root exploits". Both are failures in the OS. Note that the
*default* Windows installation has the user running as "root" with full
privileges to do exactly this, and not so much as a hint that this is a
bad idea. While this may be an install-time design oversight, it
remains a flaw in the OS, one which has critical impact on system
security.
We might also note that according to Cohen it is apparently trivial to
write a virus for *nix based systems. Odd, then, that despite the
popularity of such systems, such viruses simply _do not appear to
exist_. No, it's not a question of popularity; *nix systems have been
running for decades in everything from desktops to supercomputers and
everything in between and more. There have, quite possibly, been more
*nix users in the history of *nix than there have been Windows users.
Yet in all that time, with all those systems and all those users... a
lot of whom were, let's be honest, college and university students who
have, historically, been well known for performing exactly this kind of
mischief if given half a chance... not *one* *nix virus has been
detected in the wild as a successful virus - "successful" here implying
infection of a non-trivial number of machines by whatever means.
All those users... all those machines... all those decades... and not
*one* known successful virus. One worm of note - Morris - might be used
as a possible counterexample, to which I'll simply note that this means
in all that time, with all those machines, all those users, there has
been one, count 'em one, successful "virus" for such systems.
That's *one* as compared to some 70,000 viruses and variants for
Windows. And you expect me to buy that this is somehow *not* related to
the fact that Windows is a sieve? That it's mere coincidence that the
systems which effectively have no security or are riddled with
vulnerabilities are the ones that get infected?
Take the shatter exploit as an example. It relies on an OS flaw.
Specifically, it relies on the fact there's bugger all validation of
messages passed between processes, so a low-privilege caller can merrily
send messages to a system-level process and not a thing is done to check
wheter this is legit or not. It also relies on, IIRC, a buffer overflow
- in an OS-provided component. Another OS flaw. Net result? If I can
get my virus running even in a low-privilege process, I can use shatter
to wind up with system-level privileges, all due to OS flaws. Or I can
use IE's stunning ability to download and execute any code I choose
thanks to some stupendously bad design decisions... and note that IE is
now generally regarded as part of the OS. You may be able to remove the
interface component, but the rest remains.
The list goes on and on and on, but the fact remains: if the OS has a
decent security model, getting the virus to run *at all* is difficult,
getting it to propagate is even more so. It's only systems which are
badly design and badly implemented that suffer virus issues worthy of
note... and that wouldn't be the case if viruses were trivial to write
and not dependent upon OS flaws.
Feel free to prove me wrong, though. Say by providing a Linux-based
virus that a) will somehow automagically execute on the victim's machine
without the user needing to make it, explicitly, executable and b) will
merrily propagate to other executables and other systems *without*
relying on flaws in the OS's security mechanisms - no using root
exploits, for example, that would be relying on an OS flaw and would
invalidate the premise you're trying to establish.
Hell, if you think you've got such a critter, send it over; I've got a
box here I can use as a "throwaway" for testing purposes. 'Course,
being my box, it follows *my* security choices and the like, but none of
that matters, right?