Nimda, Other Worms and Life on the Internet
It's day three of the Nimda worm as I write this. My personal web server is getting multiple worm hits per second--a lot of traffic for a machine that usually gets only a few hundred hits per day. We can, of course, thank the vulnerability of IIS for this new creature designed to increase total web traffic.
It would nice to say Microsoft is wholly to blame for this, but doing so would be like saying George Bush is wholly to blame for all the problems in the world. In both cases, we each need to take some responsibility. Some of us voted for Bush, and some of us elected to use Microsoft software.
The good news is that we have choices. With education we can get past the marketing hype and make the best choices for everyone involved. If, however, we just believe what we are told, we are all going to be in deep dodo.
The word that comes to mind is diversity. Whether we are selecting leaders, planting crops or selecting software, diversity is always going to be a good thing. In each case diversity will protect us because it makes it harder for an adversary to do damage.
If all web servers were running ISS and all desktops were running MS Windows, Nimda would likely have brought the whole Internet to its knees. Fortunately, the majority of the web servers run Linux or some UNIX variant as an OS and an assortment of server software. Thus, to successfully attack most web servers, the adversary would have to create either an assortment of worms for each potential OS/server combination, or one giant worm with all the features to attack all servers.
Before you say "but Linux and/or Apache is better", let me stop you. They very likely are better than NT/ISS, but they are not bug-free. If Linux/Apache was the only target, someone would be out there creating a worm to attack it. In my world, I would want to see FreeBSD/Apache on Sparc hardware, Linux/Apache on PPC, etc. to help maintain diversity.
The other reason Linux, Apache and *BSD have a big advantage is the code is open for peer review. While the marketing departments of large proprietary software companies keeps telling the world that this is bad because a potential cracker can see how to break the code, the reality is that pride of ownership seems to far outweigh this potential problem.
What do I mean by pride of ownership? Individual programmers care that their code works. They view a bug report as positive; someone took the time to find a problem and let them know about it. I remember, for example, finding what I thought was a bug in the serial driver in Linux back in 1993. While I used to be a professional software tester before I got into publishing, I still somewhat sheepishly sent e-mail to Ted T'so suggesting that I might have found a problem. Ted's response was to send me a patch to try (which worked).
On the other end of the spectrum, I was told by the employee of what was a large proprietary software vendor that they had an internal bug list, but they wouldn't disclose its content. When someone reported a bug they would deny it was on the list, but increment the count of that bug on the internal list.
One final thing that seems to come with the Open Source community is creativity. LaBrea is one good example. If you haven't heard of LaBrea, go to http://www.hackbusters.net/LaBrea. LaBrea is a tar pit (if you know Spanish you probably guessed this) for worms. It is not specific to any one worm, but is designed to slow down anything that behaves like a worm by pretending that it is a computer that the worm to talk to.
The future? If we support more diversity and more innovation, it's bright. If, for example, the majority of the computers on the web simply started ignoring infected machines, worms would be a lot less fun to write. Be innovative and, if that innovation involves Linux, tell us about it.
Phil Hughes is the Publisher of Linux Journal.
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
|Trying to Tame the Tablet||May 08, 2013|
- Using Salt Stack and Vagrant for Drupal Development
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- New Products
- Validate an E-Mail Address with PHP, the Right Way
- Drupal Is a Framework: Why Everyone Needs to Understand This
- A Topic for Discussion - Open Source Feature-Richness?
- Home, My Backup Data Center
- RSS Feeds
- New Products
- Tech Tip: Really Simple HTTP Server with Python
- Automatically updating Guest Additions
5 min 42 sec ago
- I like your topic on android
52 min 10 sec ago
- Reply to comment | Linux Journal
1 hour 13 min ago
- This is the easiest tutorial
7 hours 27 min ago
- Ahh, the Koolaid.
13 hours 6 min ago
- git-annex assistant
19 hours 5 min ago
- direct cable connection
19 hours 28 min ago
- Agreed on AirDroid. With my
19 hours 38 min ago
- I just learned this
19 hours 42 min ago
20 hours 12 min ago
Enter to Win an Adafruit Prototyping Pi Plate Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Prototyping Pi Plate Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- Next winner announced on 5-21-13!
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.