Изменить стиль страницы

Like most point-of-sale systems, this one was designed to minimize training requirements. Ross was presented with a standard switchboard form for the billing system. He chose Customer Accounts and searched for his name. He quickly found his billing record, but he couldn't edit anything. The night clerk's logon didn't have sufficient privileges to change existing information-only to add new charges. Ross's name and credit card number were clearly displayed. There was also a link for his Internet and phone charges. Damnit.

The server for The Gate would already have the hotel's main IP address-so the Daemon would know precisely where to launch its attack. If the hotel ran a common hotel management system-as was likely-then the database layout would be public knowledge. "Son of a bitch."

* * *

In the back office, the kid was on the phone with a 911 operator. Behind him stood a couple of rack-mounted servers, a router, and a network switch, their green LED lights lazily blinking. The whole rack was locked off to him, but a flat-panel monitor displayed the logon dialog for the server, bouncing around the black screen.

Then, like a floodgate opening, the entire bank of LEDs started fluttering like crazy. The network was slammed with IP traffic. Even the kid noticed it. He heard the hard drive straining.

"Hey! Whatever you're doing out there, stop it."

* * *

Ross cocked an ear toward the office but did not take his eyes off the computer screen. "Kid, I'm not doing anything. That's the Daemon trying to bash its way in. It'll try to get at the Web access logs to find my connection to its Web site. Then it'll try to link my billing record with that IP address. I'm begging you: please open the door."

Ross minimized the hotel billing app and interrogated the DNS server from a console window. Thankfully the server was not properly configured and permitted a zone transfer. This let him view the internal IP map of the network from his machine-complete with machine names and operating systems.

* * *

The clerk watched the LED lights flickering like a Vegas marquee. Suddenly the server monitor screen came to life. The logon dialog went away and the desktop appeared. The kid spoke to the 911 operator. "He's doing something to our computers."

* * *

Back at the front desk Ross typed like a maniac. Now he knew the OS of the Web server. He thought about the odds of cracking into the server in time to clear the Web logs. Not likely, and it was the first thing the Daemon would try for.

"Listen, open the door."

"No way!"

Ross flipped back to the hotel's Web application. He needed to go straight for the customer database. The file extension on the URL told him it was a scripted page. He started typing directly in the URL box of the browser, back-spacing to the hotel's domain name-to which he appended the text: /global.asa+.htr

Then he hit ENTER.

To Ross's relief, the hotel hadn't patched their Web server, either, and the browser disgorged the source code of the application onto the screen. The developers had been lazy; near the top of the code, there was a database connection string and two variables for dbowner: one for logon and one for password. He was in.

* * *

In the back office the kid closely watched the server's monitor. Command console windows kept appearing and disappearing on the screen-commands entered at blinding speed. The hard drives labored. Dialogs came up showing file transfers. There was no way a person could work this fast. He tried the server's enclosure door. Locked. He couldn't shut the server down if he wanted to.

* * *

Ross logged back into the billing application using the sysadmin logon he had found in the source code. He navigated to his customer record. This time all the fields were unlocked for editing. There wasn't a DELETE button, so he rapidly filled the billing record with false information, replacing his own name with "Matthew Sobol"-along with a phantom address, a random phone number, and all 9's for a credit card number. He was about to click SUBMIT when he heard footsteps running on the tile floor of the lobby behind him.

"Hands in the air!" The shout echoed in the lobby.

Ross turned to see two Woodland Hills police officers aiming Berettas at him from beyond the front desk. They squinted over their sights, with a two-hand clasp.

Ross tapped the SUBMIT button, then raised his hands. "It's all right. I'm working on the Daemon case with officer Pete Sebeck of the Thousand Oaks police department."

"Stop talking!" One of the officers motioned to the countertop. "Both hands, palms down on the counter!"

* * *

In the back office the kid stared at the computer screen. A DOS window was up, displaying a customer record:

Room 1318-No Name (999) 999-9999

CC#9999-9999-9999-9999

Then the server crashed.

Chapter 23:// Transformation

Sebeck escorted Ross out the front door of the Woodland Hills police station. Ross rubbed one wrist. "Do they always cuff people that tightly?"

"Only the troublemakers." Sebeck's new police cruiser was parked at the curb, and he pointed Ross to it.

"I like the color better."

"Just get in the car."

Ross sniffed the morning air. "It's good to breathe free again. I was starting to worry you weren't coming."

"I needed to smooth things over with the DA. The Daemon trashed the hotel's reservation system."

"That's not my fault. They should have applied security patches."

"Jon, I talked the prosecutor out of bringing criminal charges, but I'm getting the distinct impression we're chasing our tails. Sobol's always three steps ahead of us."

"Are you kidding? We made great progress last night."

Sebeck gave him a look. "I got killed, and you got arrested. How is that great progress?"

"Well, if you're gonna look on the gloomy side-"

"Just get in the car."

"What's with you?"

"I got an earful this morning over this little stunt. I've got NSA agents moving into my house. My son's not speaking to me. My wife is speaking to me, and I haven't even had a cup of coffee yet. Other than that, everything's just great."

"Pete, we need to reconnect with the Daemon as soon as possible."

"We're just stumbling around blind." Sebeck got into the car.

Ross thought for a moment. "I know a good coffee place near here."

"That's a start."

* * *

Calabasas was an upscale bedroom community not far from Woodland Hills. It was part of the circulatory system of L.A. and, like most towns, straddled an artery of freeway.

Ross guided Sebeck to a new shopping plaza-a riot of pastel stucco, imitation fieldstone, and palm trees-that more resembled a Tim Burton film set than a retail center. The sprawling parking lot was clogged with tiny au paircars and the monstrous SUVs of stay-at-home moms.

Sebeck gazed at the scene from an outdoor faux-French caf. Beyond a nearby railing stood a burbling water feature replete with ducks, as though this wasn't a desert but a mill pond in the south of France. If someone cut the pumps, Sebeck figured the ducks would be dead inside of six hours. He tossed a piece of croissant to them and sipped his AA Kenya coffee.

Across the table Ross sipped a triple latte. The cup was something straight out of Alice in Wonderland.Sebeck frowned. "What the hell was that thing that attacked us last night? And how did it know my name?"

Ross put his latte down on a freakishly large saucer. "I'm not surprised it knew your name, but I am surprised it spoke your name-particularly since I didn't hear it."