The System is Down
The hum of the servers created a wall of white noise which Brad carried with him everywhere he went. Tinnitus accompanied his upper frequency hearing loss after years of working in data centers. Today was another rack-and-stack day at the University. He took new servers and network equipment and placed them into the cabinets and racks of the datacenter. He wired them up for power and network. And while he could’ve pressed the undergrads to do the heavy lifting, they had a habit of dropping fragile equipment. He left them to break down the shipping boxes and to generally clean up the mess of the build out. By doing all the work himself he maintained an impeccably neat cabling system. Every cable cut to length. Even connection labeled at each end. The combination of anal-retention and OCD combining to form a tidy server room where failures were a rarity.
The University administration overlooked Brad’s various eccentricities precisely because he ran such a robust network. He ran the network like a public utility. To him the Internet was at least as important as electricity, water, or sewer services. This philosophy of operations meant that Brad was always on top of the latest patches and fixes. He leaned heavily toward the paranoid spectrum in his views. But this paranoia helped him to keep out the various viruses, hackers, and other annoyances which threatened his network.
CERT warnings and vendor patches were always high on Brad’s priority list. He kept abreast of the latest security news and read a number of related message boards. He tracked trends in spam-bot networks, virus developments, phishing methodologies, and hostile hot spots. He well understood that more than half of his work was securing the network against his own users. The professors and administrators were not too much of a hassle. They were generally just ignorant to the dangers that surrounded them. The students on the other hand could be outright hostile towards the policies and the normal operations of the campus network.
But today’s work was all about growing the mail system. It was the annual prep-work that started late in the summer- increasing the capacity of the various pieces of campus infrastructure to handle the influx of new freshmen. Summers also gave Brad the opportunity to replace aged equipment and upgrade those pieces of infrastructure which had reached their operational capacity. Not that the old equipment ever really got tossed. It just got taken out of production and into storage.
It had already been a hot summer in North Carolina and today was no different. So being in the climate controlled and very cool server room was less of a burden than some might think. Even as the air conditioners kept the room at sixty-eight Fahrenheit, Brad sweated from the exertion. He kept up a brisk pace in his installation. The manual labor was only the start of the installation process and Brad wanted to get through that as quickly as possible. Once the physical labor was completed, then there was the task of installing and configuring the software for the new mail servers. This was the part of that he looked forward.
With half the servers and disk arrays in place in their racks, Brad took his lunch at his desk. He caught up on his mail and news reading. An interesting message appeared in a number of the security message boards with a heated debate around it. The initial message read:
From: email@example.comSubject: Widespread attack planned in next few daysI have it on good authority that a multi-vendor multi-platform viral infection is currently spreading through the Internet. It will affect all major routers, switches, servers, PCUs, HVAC, and telco systems. It is designed to infiltrate your hardware and at the appointed time will spin-lock the CPUs and shutdown all cooling systems. This will continue until the hardware melts down.This is part of a singular corporation’s plan to shutdown the global Internet along with all other communications systems. The attack will hit globally within a 24 hour window. It will happen at your location near the peak of the day’s heat.If you start to see your network peers fall off the network, your best defense is to shutdown all your machines.I will attempt to send code to demonstrate the attack functionality.Good Luck.
Most of the messages in the thread called the message bullshit or otherwise considered it a paranoid delusion. Others could not believe that such an attack was even technically possible. Brad read the message, though, and felt it ring with truth. Or maybe it just meshed with his own paranoia. Either way, he did not dismiss the message out of hand. While he ate his lunch, he scrolled through the message thread looking to see if there was any code to back up the original message. A visual ping on his desktop alerted him to a new email message in his inbox.
He opened the message which contained garbled headers and indicated that it was nothing but code. The message had bounced around a lot on its way to him and he did not know the sender. The only way he was going to get any clue was to examine the code in the body of the message.
Quickly scrolling through the message he could see it wasn’t a complete program, but just a snippet. In fact it was just one snippet of a single file from an obviously much larger piece of software. With an eye towards the details he grasped some of the nature of what he had before him. It was network code to probe a number of ports on a machine. It had logic to attempt buffer-overflows and injections for a Cisco and Juniper routers. He saw routines which would attempt to gain remote access to web, mail, and database servers. He began to think that there might be more to the warning message than just paranoia. Then another message entered his inbox.
Again the sender was unknown to him and from an anonymous mailing service. Again the body contain nothing but source code for a program. This code was different. It took Brad several hours to parse through the purpose of the code while the ice melted in his drink and his sandwich lay partially eaten. It was well into the evening when Brad had an epiphany.
“Holy shit, this overrides the fan control on an Intel motherboard,” Brad yelled while slamming his fist into his desk inadvertently smashing his sandwich and jostling his drink. “Fuck,” he jumped up to grab some paper towels to wipe up the mess on his desk.
Once Brad had cleaned up the mess of his desk, he noticed the time. He had spent the entire afternoon and part of the evening diving into this code. He hadn’t even finished his lunch and now it was well into the dinner hour. Brad would have to work through the night in order to finish the work installing the new mail servers if he were to keep on his target schedule. And he was willing to do that to maintain the schedule. First, though, he needed to pass on the two code snippet to the message boards. Others needed to see and examine the code to understand the validity of the warning.
Brad jumped on the message boards and added the code to the threads. He explained that he had received these in email from an unknown source, but he felt that they backed up the original anonymous poster’s warning. He didn’t wait for responses to his post. Instead, Brad copied the original message added the code to it and sent email to his associates in Universities, Network Operations Centers, and various vendors around the globe. Maybe some of them could figure out an answer in order to block the attack. Or if nothing else, maybe they would heed the warning and prepare their networks accordingly.
Then it was back to his mail server installation. One of the reasons he did these laborious menial tasks was that they helped him think. Brad allowed his conscious mind to disengage from the serious problem of the potential attack and let his subconscious do the problem solving. Working through the night to catch up on the previous day’s planned work left Brad exhausted, but with a plan. He just needed to write up a proposal and get all the pieces in order so that no one at the University would freak out if and when he pulled the plug on their network.
While putting decommissioned servers into storage, Brad took some time to inventory what had been put away in the warehouse. He came across old super computers, a BBN Butterfly, some bits that may’ve come from a Cray. There were plenty of old Sun Sparc pizza boxes, with Wyse terminals, stacks of audio coupler modems, refrigerator sized Digital Equipment Corporation mini-computers, and obsolete tape storage systems. He wasn’t sure what he was looking for in this dust layered mausoleum of computing history. Generally, he just came in here to remember how technology was fleeting. He recalled the one time he found an old mechanical relay telephone switching system in the warehouse.
It seemed incongruous to the rest of the equipment, but it had at one point been part of the campus telecom infrastructure. He had taken it back to his apartment and wired it to a forty-eight volt DC current to power it. To his surprise it had come to life and he was able to send fake signals through its trunk to cause the relays and indicator lamps to click and flicker. He spent a weekend creating a random signal generator to cause the switch station to continuously cycle through its possible connections. The whole thing created a pleasant sound which soothed Brad. To him, all technology should make clicks and clacks and have flashing lights. But as things progressed the only sounds were the rush of the cooling fans and only a single power indicating LED.
In his archaeological dig this evening, now really close to early morning, Brad found an old wireless packet modem. It was an old AX.25 system for sending bits over short-wave radio. This, like the old telephone switch, intrigued Brad. A piece of technology which predated him, but was an important part of network history. He carefully pulled the radio system out of the warehouse and brought it to his office. After he got some rest and worked out his plans for surviving the apparent network apocalypse, he had a new project.
Brad checked the clock on his computer terminal and determined there was no reason to return to his apartment. He needed to be back to train some new lab techs in four hours, so he might as well use the cot in his office. Thankfully, he’d run through the slide deck on basic user setup and help so many times, he could recite it backwards in his sleep. And there was a possibility that the presentation could be done with his eyes firmly shut.
A few hours passed or maybe a few days. Sandra refused to check the time in any fashion. She left the computer closed and the lights dim. She lived under the covers of the bed drifted among various states of consciousness, sleep, and half-dreamt hallucinations. A number of times Sandra found herself shocked awake half believing she would find herself in her own bed in her own house. The discovery that this was not the case, slammed her back into her depressive wallowing.
The bedside phone rang with the electronic burble of an artificial cicada. For three rings, Sandra did not quite comprehend what the sound meant as it roused her from a deep dream. She attempted to roll away from the noise, wrapping the disheveled covers around her like a cocoon, but the phone would not stop chirping. Gradually, the sleep which shrouded her mind evaporated away leaving nothing but annoyance at the disturbance.
Finally, she grabbed the phone and held it to her ear without speaking.
“Uh, Ms. Hernandez,” asked the voice on the other end of the line. Sandra just sighed deeply into the receiver.
“Sorry to disturb you Ms. Hernandez, but I am calling to let you know that the coding for the distribution program with C and C structures per your documentation is completed. You may check them out of the repository at anytime. You should have an email with instructions and documentation. Mr. Jenkins wishes you to review this is quickly as possible so that we may launch on schedule.”
Without a word, Sandra replaced the phone receiver to its cradle beside the bed. She sat up, leaned back against the headboard, and stared directly ahead. One breath, long and slow. Inhale, hold, then exhale- another breath. Sandra tried to focus on maintaining deep slow breaths while the pounding of her heart filled her ears with the rushing ocean of blood flowing through her body. She had given the monster its final necessary tool.
With deliberate slow movements, Sandra rose from the bed. She took off the few clothes she had on while entering the bathroom and turned on the shower. Quickly the water heated up and steam billowed out from the shower as Sandra got under the water. She meticulously washed her body, scrubbing her skin pink.
Once out of the shower and dry, Sandra picked up the room. Put dirty clothes away. Picked up wrappers and other detritus and put them into the trash. Made the bed and straightened the furnishings. After pulling one of the few remaining sodas out of the mini-fridge, Sandra sat down at the desk.
The leather of the office chair wrapped itself around her body as she settled down. Sandra raised the lid of the laptop and the screen illuminated her bare skin in a blueish tinted glow. Laying herself bare to the pent up destruction she designed, Sandra read the email documenting the application code. She downloaded the updates and the new software to her machine and began to sift through page after page of program code.
Within the Command-and-Control code, she imbedded a new set of routines- a new set of commands which could be sent out to the distributed hoards of infected zombie routers, switches, and servers. Within the infection code she added a hash routine to record the difference in the running code of the infected node before and after the base OS got replaced. Sandra added a timer into multiple program aspects which would attempt to revert all changes after forty-eight hours.
Sandra compiled her changes and validated the functions, but did not check her code back into the repository. After spending several hours seated before the computer making her modifications, she stopped and got up. The leather stuck to her slightly damp flesh, clung to her to stay. As she rose, the muscles in her back complained with a sharp twinge from having held her stationary position for so long. Her legs, nearly asleep, struggled to hold her vertical, so she stabilized herself with her hands.
With palms flat on either side of the computer, Sandra stood slightly hunched over. Her eyes closed and hair fell over her face, her breaths shuddered as the sweat on her skin chilled in the air. Rolling her head upon her shoulders, Sandra stretched and straightened. She grabbed the now warm, but unopened soda bottle and returned it to the refrigerator.
The changes I’ve made are a good start. But they’re not enough. They’re too obvious still. I need to find places to hide my changes. I need to obfuscate my code. Otherwise, they’ll just revert my changes and it’ll be like I never made any effort to stop them. But what’s to keep them from just ignoring my changes anyway?
Sandra entered the closet and pulled out a short magenta a-line skirt, fitted French-cuffed blouse, and what she figured was the appropriate lingerie. She laid them out on the bed and returned to the closet to find a pair of garnet red heeled shoes and seamed black stockings. After arranging the outfit on the bed, she returned to the desk.
The chair was still warm and a bit clammy from her earlier coding session. Sandra ignored the dampness and leaned forward in her seat and began to rework her software. First, she went throughout the entire code base and made minor inconsequential changes to formatting and a few variable names.
If I can hide the real work within a bunch of smaller stuff maybe they won’t notice, thought Sandra. I need to create enough differences that obviously have no affect on the programs, that they’ll miss the new stuff I add.
To her own code, she hid her routines in among other larger swaths of programming. Small chunks here and there that alone did not look like much, but when compiled and ran called upon each other to serve her needs and purposes. Or so Sandra hoped as she pushed bits around the screen.
She added a few commands to the C&C structure. One she labeled as “Nuke.” The comments she added to the code read:
* Nuke: Ignore all timing procedures, spin-lock the cpus, and
* lock out all other commands. Ensures that the melt-down processes
* are activated and locks out all further commands from C&C. This
* ignores follow-the-sun deployment and should only be used if there
* is some massive problem and we need to up the time table.
Hopefully, by adding this ‘helpful’ bit of code, they won’t notice the other parts I’ve added. And maybe this would make them less likely to just ignore my changes and leave them. Too many maybes, but I’ve got to try this path too, Sandra meditated while lulling her head back with her eyes closed. I can’t trust that my messages even got out, let alone are being read and acted upon. I need to throw in my secret wooden shoes into the machine.
After resting her eyes a few more moments, Sandra rolled her head forward and looked back at the screen. It’d been another four hours straight at her desk, but now she was finished. She set the project to compile and validate itself one last time while she got up and freshened herself up.
While she wiped the sweat from her skin with a warm damp washcloth, her stomach reminded her of its neglect. “I know,” she muttered to her rumbling stomach, “but I had to put you on hold.”
Returning to the desk, she saw that what she had done still worked and without sitting down, she sent the command to submit her changes to the code repository. She followed this with an email back to Vinod and Fred that explained the Nuke command and apologized for the reformat changes she made to the code. “All the easier for me to read,” she muttered as she typed the same lie into her email.
Sandra closed the lid on the laptop and walked over to the nightstand. She picked up the telephone receiver and asked, “I’d like to speak with Fred now.”
“One moment please,” and the line click-hummed while Sandra was transferred.
A heartbeat later Fred answered, “Sandra, dear, I see you’ve made some changes. Are you happy?”
“I think it’s ready,” Sandra replied, “And the nuke is available as an emergency.”
“I was just reading your note on that. Do you think we’ll need that?”
“It’s the only way to be safe,” Sandra used Fred’s mantra, “But let’s get some dinner and I can explain anything or nothing over some food. I’m starving.”
“Well, it’s not exactly dinner time,” Fred stammered slightly.
“To me it is, so please, dinner- rib eye, baked potato, broccoli and a Cabernet. I’ll be ready in like forty-five minutes,” and Sandra hung up the phone.
Sandra then went to the bathroom and opened the drawers by the sink. While she had not investigated them earlier, they contained all the make-up and hair products she come to expect in this overstocked cage. She recognized the eyelash curler, but decided to avoid the device. Now is not the time for firsts, she thought. Let’s just see if I can get hair to agree to some sort of up-do and get some makeup on without becoming a clown.
With all the lights on full intensity in the room, Sandra got to work getting ready. A light layer of base, some blush on her cheeks, black mascara, and the deepest red lipstick she could find, Sandra kept her makeup as simple as possible. Yet this was far more complex and involved than her normal routine of none.
In the top drawer of the dresser, she looked over the multitude of jewelry and selected a pair of emerald cut diamond earrings. Not too large for her ears, but still nicer than anything she owned.
Sandra sat on the bed and began to put on the stockings. How her grandmother did this everyday, she could not understand. It took Sandra four tries just to get one leg on the correct way and still the seam zigzagged up the back of her leg. Sandra was thankful, though, that the stockings appeared to be the type that will hold up on their own. No need to mess with a garter belt on top of the rest of the complications she was giving herself.
As she started to slip into the skirt as there was a knock at the door.
“Give me another minute,” Sandra called out to the door. So, it’s taken me more than forty-five minutes to get ready, she thought, shoot me.
The heels on and the rest of her clothing sorted, Sandra practiced walking few steps in the shoes. They fit her amazingly well, perhaps better than any heeled shoe she’d ever worn. And the fit made walking so much easier than she expected. She checked her hair and makeup one last time in the bathroom mirror, then made sure her outfit appeared alright.
Returning to the jewelry drawer, Sandra selected a drop necklace and put it on as the final touch to her ensemble.
Sandra removed the chair blocking the door, slightly embarrassed by the noise it made. But, she reminded herself, I wouldn’t have felt the need to barricade myself if he hadn’t violated what little privacy I felt I had. After a deep breath to steel herself and with her eyes closed, Sandra opened the door.
“Oh. My. God,” Fred gasped as Sandra opened her eyes. The look of surprise and awe froze on his face. “I’ve, uh, wow.”
“Thank you,” Sandra said simply as she stepped out of her room.
“You look wonderful,” Fred gushed.
Sandra simply nodded and walked towards the end of the hall.
“I’ve never seen you dress up like this before,” Fred said while he caught up to Sandra.
Sandra smirked, “I’ve never had occasion to dress up. Nor do I really have this kind of wardrobe.”
“I should change,” Fred said as they enter the dining room.
“No, those jeans and that shirt are fine.”
“But, nothing. Please help me be seated.”
Taken aback, for just a moment, Fred got into motion and pulled Sandra’s chair out for her. Once they were both seated, two servers enter the room with the dinners that Sandra had requested.
“You really do look amazing,” Fred gaped from across the table.
“Thank you, I felt that I should try and take advantage of all that you’ve provided me here. To let you know I actually appreciate the effort it must have been to prepare all of this for us. All the clothes, all the shoes, the many accessories and jewels, all the accoutrements,” Sandra replied with a flourish of her hands. “But, I truly am hungry, so I’m going to get started on this beautiful steak.”
They ate and Sandra maintained enough restraint to not inhale her food. Again, it was magnificently prepared and tasted amazing. Fred regained much of his composure during the meal and stopped gushing over Sandra’s appearance. He asked her about the changes she had made to the code. Sandra answered and filled in the details without eluding to the real purpose of her changes.
“I hope it all tests out okay,” Sandra mentioned as they finished their meal.
“Last I heard, the tests were going well,” Fred answered, “Although, they tweaked Nuke just a little bit.”
“Oh, how so,” Sandra asked trying to mask her concern.
“Nothing much, I think Vinod said something about adding a check to make sure that all fans and cooling equipment were shutdown as part of the Nuke. Just another validation,” Fred shrugged, “Although, he was a bit annoyed at your formatting changes.”
“I’m really sorry about that. Force of habit, I’m afraid. I hope he didn’t feel the need to revert those.”
“I think he was about to, but I told him not to bother, because I didn’t want to hold up the testing. I think he’s just going to fix the formatting by hand on his own branch anyway.”
“Well, I’m really sorry about that. I hope he doesn’t waste too much time with it. When do you think you’ll launch this?”
Fred glanced at his watch before he answered, “Testing is almost done.”
Sandra tried not to freak out, “Full testing?”
“Well, not full, there’s not enough time for that. It’ll be noon in Japan in three hours. We need to launch then, so that we will have full infiltration before the heat of the day peaks.”
“So, soon, really?”
“Yeah,” Fred misread Sandra’s fear as excitement, “It really is exciting to finally have this start.”
“Uh, wow,” Sandra recovered, “so efficient. Are you sure you really want to do this?”
“Definitely,” replied Fred, “It’s the only way to make everything safe. Are you finished?”
Fred helped Sandra from her chair and they walked back towards the rooms.
“I’m afraid, you’ll need to let me back into my room as I’ve forgotten my fob,” Sandra mentioned as they reach her door.
Fred bent down to kiss Sandra, but she put her hand out to stop him. “No, please,” she said, “I can’t right now. Just let me in my room. I want to watch the progress.”
Slightly downtrodden, Fred wordlessly opened her door and held it open for her. “May I join you to monitor the progress?”
“I think I need to be alone for this, Fred. I’m sorry, but when this is done and we are back at the ranch, then things can be normal again, okay,” Sandra lied while she looked into Fred’s eyes. Her eyes welled with tears as she tried to hold herself together.
“Sure, sweetie,” Fred replied while he backed into the hall, “Just call if you need anything. And I’ll be waiting for you whenever you are ready.”
“Thanks,” Sandra whispered and Fred closed the door behind him after leaving.
Sandra barricaded the door with a chair after calming herself. She slipped out of the heels on her way to the bathroom to remove her makeup. Without a thought, she removed the entire costume, blouse, bra, and skirt, leaving a trail of discarded clothing on her way to the bed. She pulled the covers back from the bed she sat and carefully rolled the stockings off her legs. She left the balled up silks as two lumps beside the bed. Burying herself under the covers and pillows, Sandra silently wailed with convulsive cries as the inevitable apocalypse she had wrought was unleashed.
To Chapter 4