Difficult to know where to start with this one.
The computer monoculture has been much criticised of late as being the driving force behind mass security breaches (i.e. any of the famous internet worms of the last few years. Code Red, Nimda etc; the list goes on). However there’s a limit to the number of popular operating systems the marketplace can accommodate. If, say, three or four nominally incompatible operating systems dominated the market with roughly equal shares there’d still be enough machines running each to make them an inviting target. This becomes more true as time goes on since in ten years or so the number of machines running one of those four hypothetical systems would probably outnumber the total running Windows now.
Avoidance of the monoculture is not a solution for the whole internet, only for individuals who’re prepared to put in the effort required to run a minority OS, though dumping Windows isn’t quite a case of switching to an OS with no applications any more - I’m sure we’re all aware that the availability of software for Linux is increasing daily and already represents and impressive suite.
The problem will come when (or if) Linux begins to make significant inroads into the wider user base. Once any system falls into the hands of someone who is either not interested in or not competent to maintain its security it becomes just a matter of time until something takes advantage of them.
Linux and other Unix based systems suffer from security vulnerabilities just like Windows does and, if they’re not patched, they’ll get compromised and rooted. If schemes for fighting spam such as the computational overhead system linked to by Fear Itself become widespread then a compromised machine becomes more valuable to the spammer since he will be able to distribute the computational load. Networks of compromised (“zombie”) machines are already being traded between hackers and spammers for money in order to facilitate volume emailing.
Also, the email scheme mentioned above does not take into account the large number of legitimate bulk email senders. I’ve written software that’s currently churning out something in the order of 750,000 emails a day to subscribers who pay handsomely for the privilege of receiving them. There would have to be a way to authorise such legitimate email users to continue these services or you’ll be dumping on a lot of businesses and the end-users who depend on the information they distribute. If there’s a way for these businesses to continue their services it will undoubtedly be abused; either directly by subverting the authorisation process or indirectly by hacking the authorised networks.
This is the way of the future: Your machine, its internet connection and, indeed, such fundamental things as your good name and identity, are now valuable assets to criminals, and they will attempt to make use of them.
So, what can be done about this? Is it possible to make a computer hack-proof?
Well, no. At least, not yet, but there’s a lot of work going on in an attempt to solve this problem and more than a few people are getting rich off the virtual snake oil business.
Theoretically a fully trusted computing platform would be a solution to viral code, and to adware/spyware, however there’s still a user in the loop and if they permit such software to breach the protection set up for them then there’s little that can be done.
There are also serious issues about whether we can trust such a “trusted” platform not to be exploited by large software companies (read: Microsoft) in an anti-competative manner. A new independant (genuinely independant) body would need to monitor the certificate trees to make sure MS’s authority couldn’t revoke the certificate granted to OpenOffice and that Adobe couldn’t revoke the GIMP’s.
It’s a vicious and nasty thing to say, but the biggest problem on the internet today are the users. I have a Windows box that’s been “naked” on the internet for just over three years (i.e. no NAT, no firewall, just a cable plugged into the back of it), barring power cuts and dropouts by my ISP, and it hasn’t been hacked, compromised or otherwise screwed around with. Why? I know how to configure and maintain it so that doesn’t happen. The same isn’t true of the average internet user.
What can we do to fix the internet’s problems? Educate the masses. Every ISP is keen to promote how easy it is to get online and, all credit to them, it generally is these days, but they gloss over the possibility that once you are connected you may have a duty to maintain your machine so that it does no harm to others.
Inroads are being made in the spyware/adware arena (witness AdAware and SpyBot and the scramble to post the links every time someone mentions a browser problem on any bulletin board on the internet).
Inroads have been made in the virus arena with modern integrated scanners and the fact that almost every PC comes bundled with at least one.
There is a long way still to go. At the moment a secure Windows box remains only a sure thing in the hands of a professional who puts in the maintenance time. Linux still suffers a massive image problem with the general public and, just like Microsoft’s product, is only genuinely secure in the hands of a professional (or at least a non-professional with enough knowledge to be a professional).
Rebuilding the internet from the ground up right now would solve none of the current problems. We just don’t have a good technical answer. We need either time to develop smarter software or smarter users. Both are daunting tasks and I’m uncertain as to which will win out in the end.
Well…that sure went on. It didn’t quite take the direction I originally intended, but there y’go. A proper examination of this might be more of a GD subject.