Выбрать главу

Leon grabbed his coat and joined his parents, who stared at him with exasperated looks. “What’s wrong with you? We’ve been waiting for ten minutes,” his father said.

Leon just shrugged and kept his mouth closed. Anything he said would just make them angrier.

* * *

On the other side of the world, Alexis Gorbunov checked the botnet status, face glowing blue from the reflected light of his screen. Smoke curled up from the cigarette in his mouth, his left eye in a permanent squint.

Without removing the cigarette, he spoke toward the phone on his desk. “We have five thousand computers.”

“Five thousand computers is nothing. You should just say we have nothing.” The voice was obviously angry.

Alexis shrugged, invisible to the man on the phone, and said nothing.

“Alexis, the botnet is our primary source of income. You are not taking this situation seriously enough.”

The botnet had been a primary source of revenue to the Russian mob over the last fifteen years. The mob infected personal computers with malware, which they could then control remotely. Then the mob rented out services on their army of infected personal computers. Anything from sending spam to trolling hard drives for passwords and financial account information to denial of service attacks and distributed hacking. It was all for sale.

“Boss, I am doing everything I can.” Alexis took a sip of sake from a small piece of Japanese pottery. “I told you, I have my brother’s son working on it. He is brilliant.”

The phone crackled. “You have been stalling me for three months.”

“We will have it for you by tomorrow. The kid will get code to me today. I will release it. By tomorrow you will have botnet back.”

“If I don’t have it, I’ll break both your hands. Then you can use your precious computers.” The phone clicked off suddenly.

Alexis leaned back in his chair, closed his eyes, and took another sip of sake. He had once run the largest single botnet in the world: thirty-million computers strong. He had been at the top of his game then. He had gotten respect.

Now look at him. Reminiscing about the past like an old woman. The botnet was down to five thousand computers and falling rapidly. Whatever was detecting and eliminating the botnet viruses was going to be fatal. Fatal to him if he didn’t have a solution by tomorrow afternoon. He hoped the damn kid would hurry up. He didn’t like to involve his brother’s son, but desperate times…

Alexis sat in front of the computer, chaining smoking and polishing off the bottle. He hit refresh on his email every minute. He stubbed out his smoke in an overflowing ashtray and let it fall to the ground. He pulled out another and was just holding up a lighter, when suddenly his email beeped.

The kid! An email from Leon! Thank God. Alexis took a breath. For a moment there, he almost thought he was going to cry.

He opened the email and saw a compressed file attachment. The source code for the virus was attached. Alexis nervously opened the files. There was no time to waste if he was to show results by tomorrow.

He set out to review Leon’s code. He, Alexis Gorbunov, might be ancient in the world of virus writers, but he still knew a thing or two. He peered through the source code line by line.

The dense code was written in the latest scripting language. Some bastard offshoot of Ruby and C#. Who the hell invented these languages? Alexis pored over screens of code, trying to make sense of it. It was like no virus he’d ever seen. What was this code for gene transcription? Did the kid think he meant a real biological virus? No, the kid wasn’t stupid. Just maybe too brilliant.

The kid had given the virus a name. Phage. Alexis grunted. He didn’t know what it meant, but it sounded good.

He took a deep breath and drank his last sip of sake. To show results by tomorrow, he had to release the virus immediately and hope it worked. There was no time for an in-depth review or to test it. He changed a few variables, just so he could have a role in it. He increased the aggressiveness of the virus, reduced the propagation delay. They would be useful tweaks if he was to show some effect by the next day.

Alexis used the admin tool to upload the compiled virus file to the ragged remains of his botnet army. The file was small and uploaded in minutes. He launched the file remotely, causing the five thousand bots to execute its code and become infected.

He sat back in his chair and finally lit his cigarette. He might just live to see another week if this worked. Now it was up to the virus.

* * *

The five thousand computers under Alexis’s control received the new virus directly from the botnet controller. These five thousand shared local networks with twenty-five thousand other computers. Just as Leon planned, the Phage virus was highly infectious, managing to infect fifteen thousand of these computers almost immediately. Once installed on a computer, Phage started analyzing files, scrounging for any new algorithms it could incorporate from installed software. It assembled these parts, using random number generators and evolutionary algorithms to make decisions and tweak the behavior of its children. The children were then distributed by all known methods of propagation. This cycle would repeat indefinitely, the virus analogue of life.

An hour later, there were seventy-two unique variations of the virus, infecting more than a hundred thousand computers. The rate of doubling, a key metric of infectiousness used by the CDC for tracking diseases, was once every thirteen minutes.

In the second hour, the rate of doubling increased slightly, to once every twelve minutes. By the end of the second hour, more than three and a half million computers were impacted, with nearly two thousand versions of the virus.

But the rate of doubling increased still further, to once every ten minutes. By three hours after release, 1.5 % of the world’s computers were infected.

By this point, Phage caused appreciable jumps in Internet bandwidth around the world. Transatlantic fiber optic cables became saturated. Internet service degraded. During the fourth hour, ten thousand variations of the virus became a hundred thousand.

As the number of infected computers grew, sometimes the virus found itself on a computer it had already infected. Leon had anticipated this situation. What the virus was supposed to do was recognize that the computer was already infected, and simply exit.

But what Leon failed to anticipate was an evolutionary leap forward, the equivalent of a Virus 2.0, or V2. The improvement was a tiny bit of code leveraged from backup software. When V2 arrived on a new computer, it didn’t merely check to see if the virus was already installed. It used the backup checksum algorithm to verify that the installed virus was the same species as itself. If it wasn’t, V2 would reinfect the computer and erase the old virus.

Now the virus wasn’t just infecting new computers: it was competing with itself.

V2 spread like wildfire in a dry forest. V2 looked likely to cause the extinction of all V1 viruses. But later that same hour, a variant of V1 found itself on a research computer at the University of Arizona that was filled with experimental anti-virus algorithms. V1 incorporated the anti-virus defensive measures into itself, turning into a new strain, V1-AV. V1-AV became resistant to V2.

The different variants fought for dominance. The rate of doubling slowed to once every twenty-six minutes. But by absolute numbers, the infection was still prodigious: by 10 pm, one billion computers, or 8 % of the world’s computing devices, had been affected.

Virus traffic saturated all network backbones. A hundred million Americans watching streaming video before bed complained as the streams degraded from the highest quality level to the lowest. Phones stopped working or became incredibly slow as they succumbed to Phage. People chalked it up to sunspots or solar winds or freak electrical storms and went to bed.