History has bad news for those tackling malicious software
Malicious software may just be a property of the network, says regular contributor Bill Thompson
The Conficker worm will be active again on 1 April, according to an analysis of its most recent variant, Conficker.C, by the net security firm CA.
This malicious piece of software, also known as Downup, Downadup and Kido, spreads among computers running most variants of the Windows operating system and turns them into nodes on a multi-million member "botnet" of zombie computers that can be controlled remotely by the worm's as yet unidentified authors.
Since it first appeared in October 2008 it has apparently infected more than 15 million computers around the internet, though even that number is no more than an educated guess because the worm works very hard to disguise its presence on a PC.
The worm turns
Conficker spreads through a security vulnerability in the Windows Server Service that allows a carefully written program to persuade the attacked computer to run malicious code instead of the Microsoft-written software.
Once installed it turns off Windows Automatic Update and stops you using the Windows Security Centre. It disables a range of internal services that could be used by anti-malware programs, blocks access to a number of anti-virus websites and even resets and deletes system restore points so you can't go back to an uninfected installation of your operating system.
And at some point it connects to a remote site to download additional malware and register itself as part of the botnet. The analysis of the latest version indicates that this will next happen on April 1st, and the day maybe a bad one because the way it does this has changed in the latest version of the worm, making it significantly harder to stop.
Previous Conficker infections were controlled to some extent because security researchers were able to determine which servers the worm was going to try to contact and block access to them before it did so. But the C variant has a much larger pool of potential domains to choose from, as it selects 500 target servers from a pool of 50,000 while previous versions chose 32 from 250.
As a result the ad hoc group of security researchers who have been working to limit the botnet's use, the Conficker Cabal, will have a much harder time ensuring that infected systems do not make the connection to the remote service that may allow them to be used to send spam e-mail, log user keystrokes or launch denial of service attacks on other computers.
We will have to wait until April to see how effective efforts at controlling Conficker are, but the analysis that has been done to date shows that it is a particularly well-designed program, one that will be hard to beat.
The overall sophistication of the current generation of malicious software is rather impressive, and I occasionally find myself admiring the skill of its developers in the same way that I can appreciate the technical skill and imagination that goes into fighter planes, tanks and modern armaments.
I may not approve of the use to which the ingenuity is being put, but I can't deny that Conficker's developers are ingenious in the way they have developed and distributed their code.
Whatever happens with this particular worm, we have to hope that the security features in Windows 7 will reduce the impact of all types of malicious software in the Microsoft ecosystem, although there will probably be enough unpatched systems around for some years to sustain Conficker and other worms, especially if the growth of netbooks means that Windows XP is still being used.
Like many other malicious programs Conficker preys on Windows
But while it's easy to blame Microsoft for making its systems vulnerable we should also acknowledge that our own demands have contributed a great deal to the current situation and may make a complete solution unachievable.
We have demanded complex, sophisticated computers that are easy to use, simple to interact with and able to connect to the internet as full peers. We want what Jonathan Zittrain calls "generative" systems that can run new software to take advantage of new services and connect us to new people. And we do not want to spend hours configuring firewalls, locking down features or scanning for potential malware.
Perhaps we should not be surprised that attempts to make these systems secure have failed.
I see a parallel between our attempts to have security and reliability in the complex computer systems we are building today and the attempts by philosophers at the turn of the 20th to reduce all of mathematics to formal logic.
The work of Frege, Russell and Whitehead was undermined by the Austrian mathematician Kurt Gödel when he published his Incompleteness Theorem in 1931. He showed that in any sufficiently complex mathematical system there will be statements that cannot be proved either true or false, and that this is not because of errors or mistakes but is a fundamental property of the system.
His work made it clear that attempts to explain all of mathematics in terms of formal logic were doomed to failure, and there are clear similarities between our attempts to free our computers and the network from malware and the world described by Gödel.
There will always be flaws and security holes in the rich, complex computing environment, and as a result there will always be space for malicious software to propagate.
That doesn't mean our attempts to limit its spread and control the potential damage are futile, but it does mean they will be never-ending.
Bill Thompson is an independent journalist and regular commentator on the BBC World Service programme Digital Planet.