01-01-00
Page 3
Or so she had thought.
She shook her head, not certain of what exactly she was doing here again, behind this desk, tapping the keyboard of her portable computer as dawn broke and the city stirred to life. Streetlights flickered and went off. Traffic thickened. Horns blared. Pedestrians emerged from subway stations. Susan watched it all with detachment, as if she didn’t belong to this world anymore.
Tonight, she told herself. I’ll just get Troy going on this investigation and then I’m gone, for good.
She found the number for the FBI-issued nationwide pager of Chris Logan, now a senior at UCLA and forever slave to the Federal Bureau of Investigation. She used her software to send him an alpha page, ordering him to call the FBI’s Watts line, followed by her extension—immediately. The reason why she had selected Logan over all the other hackers in her file was the very reason why the kid got just a slap on the wrist before the FBI sent him back to UCLA: he was a genius. Chris Logan had managed to pierce a dozen security layers at the Central Intelligence Agency, not only cracking passive software shields, but also evading active security programs created by the finest minds in the nation to patrol the myriad of directories in Langley searching for illegal users. Using a reflection program, a piece of code that reflected the image of the programs surrounding it, Logan had managed to disguise his browsing routine from the CIA search engines patrolling the directories. But Logan had underestimated the quality of the active software police, enhanced a month before by Susan Garnett herself as part of a federal program to improve security in the most critical government agencies. The security routine randomly probed files, even if they appeared to be normal, at the rate of one every millisecond, or one thousand files per second, searching for a key binary string buried within every CIA file, deep beneath the software shell that Logan’s reflection routine replicated in order to disguise itself. Susan’s security program probed Logan’s illegal browser beyond its chameleon skin for the secret binary string. Failing to find it, the security program immediately tagged the illegal code. A second security program made a copy of the browser and began to dissect it without warning the prowler, who continued to cruise through the directories. Within seconds a trace was created and the origin of the illegal entry tracked back to a dorm at UCLA.
Susan closed the paging software and continued checking the area’s Internet service providers, using a combination of commercial software and her own custom code to comb through every public server in a five-square-mile area, searching for traces of this virus. The search programs Susan used were a combination of virus scan software and search engines. The programs pinged every disk server, comparing their binary codes with a signature file in her virus scan directory. Viruses could range in size from several bytes to several thousand bytes, depending on their ability to replicate, to hide, and to cause harm. Some macro viruses, although annoying, could be relatively harmless in nature, like the Concept Virus in Microsoft Word, which forced the user to save documents as templates. Other word-processing viruses changed fonts, margins, and paragraph formatting. Other viruses attacked operating systems, or data files. The more complex ones lurked at the entrance to a network waiting for legal users to log in, and copying their account numbers and passwords. Those viruses could be particularly devastating stalking the network of a bank or investment firm. Some of those illegal copies would yield a powerful password, like that of a system administrator, which gave the hacker unlimited access to a network.
All known viruses contained a characteristic binary string, usually no more than five to twenty bytes in length, within its body. This characteristic binary string was known in the industry as the virus signature. A virus scan program contained a signature file, where the John Hancocks of every known virus resided.
Susan Garnett probed every public server in Washington, D.C., using her virus signature file to search for instances of the telltale strings. She accomplished this by the use of a script, a program that executed the actions of logging into the Internet, accessing a specific server, and performing the checks against the signature file. Instead of performing all of those tasks manually, one server at a time, she launched her custom scripts, which automatically accomplished the same thing, but in parallel, and in a matter of a few minutes, instead of the many hours it would have taken her doing it serially and manually.
Susan returned her eyes to the clouds while waiting for the scripts to report the results of their searches. Her dreamlike state of mind returned. She once again felt indifferent about her surroundings. Like a traveler who’d missed her connecting flight and simply waited at the gate of a strange airport for the next departure, Susan Garnett regarded her environment with a short-timer’s attitude.
She pulled out the folded envelope from her back pocket and stared at it. Writing a letter to explain her death had been one of the most difficult things she had ever done. After all, how do you actually explain to your surviving friends and relatives why you did what you did, especially after you’d gotten everyone thinking that you had managed to get on with your life? Her mother and father had moved to Washington for the weeks that followed her release from the hospital. But even their love and support could not quench her desire to end it all. Her friends had also been quite supportive, constantly visiting her to the point that she began to avoid them to get some personal time. For those initial weeks it seemed that no one wanted Susan Garnett to be alone for fear that she might do something stupid.
And here I am, she thought, toying with the envelope. She had fooled them into thinking that she had gotten over the deaths of Tom and Rebecca and moved on to a new career and, hopefully, a new personal life. The career part she had pulled off. But as for the personal life … Well, some wounds are not so easily healed.
Susan tapped the envelope against her desk, taking a deep breath, resigning herself to the fact that she could not possibly fight the overwhelming desire to end it all immediately. She now regretted answering that phone last night. She should have ignored it and just pulled the trigger. It would have been all over by now. This envelope would have found its way to her parents’ hands in Maryland.
She frowned. That was the only part of this ordeal that she really, truly hated doing. Losing Rebecca had given her a feel for what her parents would go through if she pulled the trigger. But she could not help herself. The pain for the past three months had been smothering. If it wasn’t a bullet then it would be the anguish that would slowly kill her, like some form of emotional cancer, chipping away at her sanity until she would no longer be able to function on her own, possibly requiring special care, putting an even greater burden on her family than a quick funeral service and burial.
If I’m going to go, I’ll do so without being a burden to anyone.
But she had failed last night. She had not taken care of the problem. Instead, here she was again, staring at the same damned skies, over the same damned city, and from the same damned office window. Deep inside, however, Susan Garnett knew the reason why she had resisted the impulse to kill herself, if only momentarily: although Hans Bloodaxe was behind bars, the desire to catch hackers apparently still ranked high on her list, obviously higher than the emotional blow she would deliver to her family. Catching hackers had a way to revitalize her resolve to remain alive.
Especially to catch someone who apparently has the power to do so much global damage.
She shoved the envelope back in her pocket as the initial results from the scripts began to flash on her screen. The scan checks had found nothing out of the ordinary, meaning there were no known viruses out there. There was, of course, the strong possibility that a new virus, with a new signature, could still be lurking out there, waiting to strike again. That was one of the greatest challenges for virus scan software companies: detecting new viruses with unknown signatures. Usually, that meant waiting for the virus to strike, capturing one of the mutation sequences, dissecting it, extracting the signature, and also releasing an antidote into the Internet. That proc
ess implied that the virus would do some level of damage before it could be caught. Really smart viruses would wait for weeks, or even months, before striking, spending that time simply replicating, copying themselves into as many files in as many networks as possible, until their activation time arrived. That also implied that virus catchers had little time to react from the time the virus became active.
Susan frowned at the information scrolling by her screen.
Nothing. Absolutely nothing.
She checked her watch and paged Logan again. She decided to give him ten more minutes before notifying the Los Angeles office and sending a car with two agents to pick him up at school. She should have paged him soon after her arrival at the FBI late last night, but at the time she had felt certain of her ability to tackle this virus unassisted.
Just as she closed the paging software, her phone rang.
“Garnett,” Susan said.
“Hello, Miss Garnett.”
“It’s about time, Chris. What took you so long?”
“Ah … it’s only four in the morning here. I didn’t hear my pager go off the first time.”
Susan closed her eyes. She had forgotten about the time difference. Seven in the morning in Washington was only four in Los Angeles. Still, the deal cut by the FBI was for twenty-four hours a day, seven days a week. She did not apologize.
“Are you calling about the event?”
“What do you know about it?”
“Nothing. I’ve been keeping clean, as promised.”
“Don’t bullshit me, Chris. What do you really know?”
“I’m dead serious. I’m concentrating on my schoolwork and staying off hacking. All I know is what’s been on the news. It certainly looks like a nasty one.”
Susan regarded her unpainted fingernails while considering her next question. She remembered this kid, short, slim, freckle-faced, but damned smart. In fact, too smart for his own good.
“All right, Chris. Let me try another angle. If you were trying to release such a global virus, how would you go about it to succeed while also avoiding getting caught?”
“Hmm … I would write self-destructing code to cover my tracks.”
Nothing new there. Self-destructing code had been around for many years. “Keep talking.”
“Well, this is how it could have happened. This hacker must have injected the code into specific addresses, because according to the news, the virus went many places around the globe, but not everywhere, right?”
“Go on.”
“Okay. So, the virus makes it into a significant portion of the world. That in itself is a major accomplishment. This hacker is some artist. It must have taken him months to get the code straight, get it debugged, run some test cases in some small city, manage to stay undetected while checking it out, doing more debug, tuning up, until he’s ready to cut it loose. He tacks Internet addresses to each copy and shoots them off one by one. I would have timed them to GMT to keep them all in sync. Then, I activate them all at the same time after giving them about a month to reproduce, make plenty of babies, really dig themselves in.”
Susan was quickly getting bored, her eyes on her fingernails, which she had stop polishing some time back, when she had stopped caring. “I figured this much on my own, Chris. What do you know about self-destructing code?”
“Self-destructing code’s not that difficult to write. Just put in a snippet of code at the end of the virus to erase every line after execution of its prime directive. I’m pretty sure that the hacker must have used the twenty seconds when the screens were frozen to destroy all evidence of his work.”
Susan Garnett sighed. “Chris, if you don’t stop quoting me undergraduate-level computer stuff I’m sending agents to pick you up right now and throw your little butt in jail.”
“But—but, I haven’t done anything wrong!”
She smiled. “Then you’d better start telling me something I don’t already know.”
Silence, followed by, “You promise you won’t bother me for a while?”
“I promise you that if you don’t level with me I will have two agents at your dorm in fifteen minutes. They will cuff you and throw you in jail with a couple of big-ass inmates. Need I say more?”
“No. The only way you have a chance of bagging this hacker is if he tries to do it again.”
“How?”
“By settin’ up software traps at the entry points of the Internet for one of the affected cities, like Washington, D.C.”
“I thought about that, too. How do you make certain that the virus doesn’t self-destruct inside the software trap?” A software trap was sort of like a hunter’s trap, sprung along the trail, or Internet service provider, where the prey or virus might travel. The trap remained open until the prey came along. It would then close, keeping the prey from escaping.
“I’d write the trap so that it makes a passive copy of the virus the moment the trap closes.”
In spite of her current state of mind, Susan Garnett grinned. A passive copy of the virus within the software trap meant creating a copy that lacked all of the links of the active virus and therefore would be incapable of destroying itself, like its active sister.
Susan, however, was disappointed in herself. She should have thought of it on her own, and six months ago she probably would have. But lately, she’d had other stuff on her mind aside from developing software. Susan thanked the young man, warned him to keep his nose clean, and hung up.
A software trap with a built-in passive replicator.
Susan dove into her laptop, accessing a library of short general purpose programs that she had created over the years to quickly patch together scripts, or custom programs. She spent the next few hours immersed in her work, tapping keys, dragging the cursor, clicking her way through hundreds of files, cutting and pasting, rearranging, reformatting, adding, deleting, creating, tuning. Slowly, the software trap began to take shape. She had designed it to behave like a vault. The door would remain open until a program tried to attach itself to it, like a virus normally would. Then the door would shut, trapping the virus inside by making a copy of it and hiding it from the original. This artificial replication method had a different effect than when the virus replicated willingly, according to its original programming. During replication, all of the mutating elements of the virus, including its primary directive, would be transferred in their active state to the clone, including the ability for further replication. By copying a virus already attached to a file, the active portions of the virus, like the ability to further replicate, or the ability to follow its primary or secondary directives, remained in a dormant state because, unlike mutation, simply copying a virus did not increase the mutation sequence, which acted like a checksum, or internal validation check, prior to the activation of the virus. If the checksum within the virus didn’t add up, then the virus would remain dormant, even after it was given the order to become active.
Susan checked her software cocoon with a “test” virus from her library. She did this in a secured directory, and only after physically unplugging her Ethernet cable from the side of the laptop to avoid inadvertently releasing a virus into the network. In addition, she had already set up a directory within her system as a “petri dish,” capable of processing and containing viruses. If something went wrong and the virus managed to start replicating, the secured directory would be her first line of defense in containing it. If somehow the virus managed to expand beyond the secured directory, the isolated system would keep it contained, unable to reach the network.
The petri dish held a dozen decoy files, placed there by Susan for the purpose of luring the virus. One of the decoy files contained her software trap. The virus immediately attached itself to the closest file and began to replicate, infecting every file in the directory within a millisecond. This particular test virus was highly toxic, the brain child of a Florida hacker now working at Microsoft but forever in debt to Susan Garnett and the FBI for cutting him some slack after catch
ing him a year ago. Following its primary directive, the virus consumed every file it touched, turning them into random strings of ones and zeroes. In the midst of the destruction, her special file turned into a cocoon, trapping the virus inside, immediately making a copy, and further isolating it from the trapped version.
Got ya.
Susan nodded, satisfied with her work. She stretched and yawned. Her stomach rumbled. She had not eaten a thing in almost twenty-four hours. She had planned to kill herself on an empty stomach as a courtesy to the people who would have to clean up her mess. Her husband had told her that gunshot victims typically voided their bowels.
Returning her attention to the screen, she wrote a script that automatically made copies of her software cocoons, each with a different Internet address, but all in the Washington area. She tried to cover as many entry points into the capital city as she could find.
As the cocoons made their way across the local network, forming a ring around the city, she also sent an E-mail to her entire list of FBI-owned hackers asking for help. So far, she was aware of at least a dozen other security agencies in this country, and many more abroad, also trying to track down the origin of this peculiar virus. No one had reported a breakthrough so far.
Hoping that a soda might calm her stomach, Susan headed for the vending machines, on the way walking by Troy Reid’s office a few doors down. She stuck her head in the doorway. “Knock knock.”
His back to the Washington skyline, Reid lifted his wrinkled face from the documents sprawled across his desk. He regarded Susan over the silver rim of the spectacles perched at the tip of his nose. Looking ten years older than his age, Reid was an old hand at the Bureau, having started his career during the final months of J. Edgar Hoover. He had an engineering degree from the University of Virginia and a second degree in criminology from Georgetown University. His blue eyes, although encased in dark and wrinkled sockets, still gleamed with bold intelligence. Ten years behind a desk, however, had turned his once athletic body into a mass of fat, which he still managed to carry reasonably well due to his height. His bald head and deeply lined face, combined with his bulk, reminded Susan of her father. Reid was due to retire next year.