Kill Process
Page 33
“There’s no way Emily will go along,” Thomas says. “She crushes mightier men than me.”
“You’ve gone to trial and convinced judges and juries, you can work on Emily. You must do it, to keep her and her family safe.”
He gently holds me by the shoulders, not in a harmful way, but to check in with me.
I flinch, despite my best efforts, and force myself not to pull away, even as my stomach clenches and adrenaline floods my system from his touch. Old habits and fears coming back . . .
“You’re sure?”
I nod.
“Fine. I’ll do it.”
I lean forward, give him a kiss and a hug. “Thank you. I know it sounds crazy, but it’s going to be a huge help for me to know you are both safe.”
* * *
By the time everything is prepared, it’s late in the day and I’m exhausted. If I were twenty-five, I might choose to pull an all-nighter. Unfortunately, I’m not, and I need to be in top form. I confer with Danger and Igloo and we agree to start in the morning.
I head back to my place, acutely aware of the dangers surrounding me, and half expect I’ll be swatted during the night: that Daly will call the police, report a violent crime in progress, and I’ll end up spending the night at a police station without ever getting the rest I need. But a good torturer knows there’s an ideal cadence to inflicting pain for maximum effect. Too much, too fast, and your subject goes into shock and isn’t cognitively there to feel the pain. Too little, too slow, and they learn to tune it out. Watch a cat play with a captured mouse. They understand it instinctively. My gut tells me he won’t swat me tonight. He’ll have something planned for tomorrow, right when I think I’m getting a handle on this.
I lie in bed for a long time, alternating between trying to shut my brain off and trying to plan through all the contingencies. Every outside noise sends my pulse racing. I wish I had some magic drug to shut my brain down without any side effects. Finally, I turn onto my side and pull the pillow over my head to shut out any noises. If I die in my sleep, so be it.
CHAPTER 43
* * *
“EVERYBODY’S PHONES off and batteries disconnected?”
They both nod yes.
“Full gas tank?”
“Yep,” Danger says from behind the wheel. “We’re good to go.”
“You’ve got all the equipment? Phones? Laptops? Spare batteries?”
“Everything,” Igloo says.
We spent yesterday prepping, raiding the office for equipment, and sanitizing every machine. We’re both sitting in the back for maximum working space, with Danger the designated chauffeur. A rat’s nest of power cables and multi-plug adapters covers the front seat.
“Sort these cables out,” I say to Igloo, “and duct-tape them in place on the back of the seat so we don’t have to fumble for them.”
“Be careful with the upholstery,” Danger says.
My level of concern is with surviving the day, which makes Dan’s concern laughable. If all goes to plan, the worst he’ll experience is getting tape residue off car seats. If it doesn’t, well . . .
I pass a smartphone up to the front seat. I preprogrammed a driving route with wi-fi access points this morning, and all Danger has to do is follow the plan for the rest of the day, or as long as it takes. “Follow these waypoints. Don’t deviate.”
Danger gets the car into gear.
“Now let’s prepare these computers.” Igloo and I plug in USB drives, loading clean virtual machines configured with the tools we’ll need.
“I’m here,” Danger says. “Now it’s telling me 43 degrees.”
“Here,” I say, passing a long-range wi-fi antenna into the front seat. “Aim this at 43 degrees. It’s got a signal strength meter on the display.”
At the first stop, we lay the foundation. I want him cornered, unable to run.
It takes an hour perusing IRC and forums, slowly narrowing in on someone who can deliver what we want. Eventually we find a guy going by Devil’s Snowball who looks like they could deliver.
Halfway through negotiations we need to drop off the net while Danger shifts locations. Devil’s Snowball wants $10,000 in bitcoin. I can barely manage this by tapping, once more, into my emergency fund, but this certainly qualifies as a crisis, and grounding Daly is the foundation of my plan. I find someone I know, and confirm Snowball’s creds via one of my alternate identifies.
Devil’s Snowball promises all of Daly’s aliases and his associated metadata will be on the suspected terrorist no-fly list within an hour. Even if Daly shows up with an unknown fake identity, if he’s carrying a phone with a known IMEI, Department of Homeland Security will pick him up. True, Daly is a government agent, and could eventually unfuck himself, but DHS is notoriously stubborn.
We move again and park outside a funeral home with open wi-fi. While people in dark suits and dresses go inside to pay their respects, we use my Tomo backdoor. Igloo lets out a small whistle.
“You have access to everything,” she says.
I peer over at her screen, watch as she pulls up her own profile.
“All my web browsing, my purchases, my dating profile . . . How?”
“It’s all tied together,” I say, trying not to become too distracted by Igloo’s first-timer enthusiasm. “Not everything has a solid one-to-one connection, but between cookies and browser fingerprints, we can build your profile over time.”
“Browser fingerprints?” Igloo asks.
“Every website can query your browser to find out your operating system, screen size, browser version, list of enabled plugins, time zone, and available fonts. In theory, all of that is perfectly anonymous. The data is there so the website can customize your user experience. In practice, most people’s computers suffer from a unique or close to unique fingerprint. The best you can do is try to blend into the crowd by installing the most common fonts and browser plugins, use the most common browser version, and configure it to report the most common screen size.”
“That’s why we’re using these virtual machines,” she says. “Got it. Wait, my sister still has a profile. That’s not possible. She deleted all her online accounts after the kid from Brazil . . .”
I shake my head. “Sorry, no dice. All the profiles are still there. Nobody really deletes anything. Even if she’d never created a single account, we’d still have a shadow profile. Anyhow, you need to focus. Follow these instructions.”
I share a document over our local network outlining what we need to do for the next phase. If we had time, I would have automated it. I never imagined pulling off an exploit of this magnitude.
See, Chris Daly is not going to run the Tomo app on his phone, not if he’s got a shred of common sense around operational security, so I can’t track his location directly. If Nathan was on my side, I’d ask him to track Daly’s phone, as Nathan has back doors into all the cellular networks. I don’t, so Igloo and I will do this the hard way.
He can’t avoid the million other people in Portland who are running Tomo on their smartphones right now.
Step one is subverting Tomo’s monitoring tools for the western coast so everything continues to report statistically normal data. Every Tomo server could drop dead right now, and nobody in Ops would know. This would make an excellent case study in why it’s important to harden monitoring tools, but the truth is it’s difficult to secure against the people who build the system.
Next, we use my existing backdoors into the provisioning layer, and without notifying anyone or allowing them to show up in any monitoring tools or logs, we allocate five hundred servers in the Dalles, Oregon data center to handle diagnostic feeds.
“Holy cow,” Igloo says. “We’d really cut our hosting bill if we ran Tapestry on Tomo’s servers.”
“This won’t last for long. What happens if someone tries to provision servers? The central database lists these machines as free. We can lose them at any second. Besides, if we keep them running at load for any length of time
, it’ll show up in the electrical consumption.”
“Too bad,” Igloo says. “I love the idea of free servers.”
I nod in agreement, though the reality is I took them for granted when I worked for Tomo. I didn’t realize what an advantage it was. I guess I had server privilege.
“How’s that payload coming?” I ask.
“Ready for you to review.”
Igloo and I go through the text file line by line. It will turn on debug mode for everyone within fifty miles of city center. It overrides the normal diagnostic server addresses, sending the traffic to the temporary server pool we created. Lastly, it uses the Tomo app’s access to suppress data overage notifications on everyone’s phone. They’re still going to use up that data, but they won’t know about it until the bill comes, and we’ll be long done by then.
“Looks good.”
I deploy the debug configuration file, the Tomo app pulls it down, and we watch as the data comes in.
What begins as a trickle turns into a flood.
“Server load is passing 1,” Igloo reports.
Uh oh. “Craptastic. I didn’t provision enough servers.”
Sure enough, within minutes the five hundred servers crumble under the load of incoming diagnostic data. I allocate another five hundred, and loads decrease, but not enough. I add five hundred more. At this point, we’re using every spare server in the data center. I can’t even imagine what’s happening to the cellular data networks right now.
This stream of unwanted diagnostic data is horrendous, yet it’s intrinsically tied into debug mode. Nobody ever intended the diagnostic upload to be used for more than the occasional one-off case. They certainly didn’t expect an entire city’s worth of mobile devices to upload simultaneously.
“Last step,” I say, “the binary package.” It’s compiled code that will use each mobile device’s cellular radio to scan for all of Daly’s unique IMEI numbers in the local vicinity.
“You’re sure this will work?” Igloo asks, as we wait for the Tomo clients to download and begin executing our custom scanning code.
“In theory, it should,” I say, wishing I felt more confident. “Nobody’s ever tried anything like this before.” If, or when, one of the millions of compromised smartphones in the city detects a sign of Daly’s cell phone, it’ll immediately use its GPS to determine the current geocoordinates, and turn on the camera and microphone to record and upload everything.
The Panopticon has been turned on Chris Daly.
Hours pass as we do this, and now it’s past lunchtime. We stop for food and rotate through burner phones, keeping an eye on Daly’s activity while we eat, and get snacks for the car.
Daly still hasn’t come online; or if he has, he’s strictly keeping to websites and devices and access points we’re not tracking. That’s okay, because we’re not done yet.
After lunch I send Igloo back online to the IRC and forums, looking for someone to destroy Daly’s credit rating and disable his credit cards and bank accounts.
While she’s doing that, I focus on building a criminal history for him. I can’t do much in the US. I don’t have access to those systems, and I know from experience almost nobody does. Still, I can make him a fugitive wanted for murder, rape, and embezzlement in the Maldives, and the US systems will cross-reference this data.
Danger keeps driving, moving us from spot to spot. I can’t be sure if or when Daly will find out what we’re doing, but when he does, he’s going to be pissed. We’re parked downtown now, near Pioneer square. This is a risk, because dozens of cameras can pick us up. But from here, without moving the car, we can piggyback on a thousand different wi-fi hotspots by refocusing the antenna. The best part is those hotspots are in tech companies with gobs of bandwidth. They’re protected networks, of course, but Tomo’s debug mode uploaded the SSIDs and associated passwords from everyone’s phones, so we can access every network in the city now.
The thump of an approaching helicopter is audible even over the noise of the surrounding traffic and people on the streets. I look up, my pulse quickening. I can’t spot it at first, then I see a black dot approaching.
“Get ready to drive,” I say.
“Already?” Danger asks. “We’re supposed to rotate between three more hotspots here before we go.”
“Start the car.”
He complies, and now we all watch the helicopter. I curse myself for not bringing binoculars.
“Kill all the connections,” I say.
“Wait,” Igloo says. “I’ve got someone who says he can cancel his bank accounts.”
“No. Kill the antenna now.”
Danger hits a switch, shutting it off.
“Shit,” Igloo says. “Can I use a phone to go online?”
“No, nothing, no signals.”
The helicopter hovers above Pioneer Square.
“It’s only a helicopter,” Igloo says. “They fly above downtown all the time.”
She’s right. If it had the insignia of a TV station, maybe I’d be willing to overlook it. But it hangs there, and I imagine men with directional scanners, telescopic cameras, maybe guns, all focused on us. I pull back from the window.
“Move. Just drive, normally. If they follow us, that’ll tell us something. If they don’t, we’ll resume at the next waypoint.”
Danger pulls out into traffic, heading south and then east toward the Hawthorne Bridge. The helicopter passes in and out of view as we pass behind buildings, but it doesn’t appear to be following us. We cross the bridge, and on the east side, where the buildings are lower and we have a good view, we don’t see the helicopter anymore. Still, I make Igloo wait.
We park at the Lloyd Center Mall, in a covered parking lot. I don’t know how paranoid to be. Could he be watching us with satellites? The idea is so laughable I don’t even mention it, though I really have no idea.
Danger gets an antenna fix, I reestablish an onion network connection, and we’re back online.
“He’s still here,” Igloo says. “He goes by Holmes IV. He says he wants $25,000 to shut down all of Daly’s accounts.”
I glance away from my screen.
“We don’t have that much.” What can I offer him? “Offer him the full profiles with all shadow data for any ten people in the world. Make sure you say shadow data. Give him one or two as proof, and the rest after he delivers.”
“Got it.”
I lean over to show Igloo where she can find the tools to download profiles, but she’s already figured it out.
“Holmes gave me the email address of some guy, and says he wants the profile for this person. I have no idea who they are.”
“Perfect. Open my records database, add an entry for Holmes IV, then enter that email address under suspected family members.”
“Why?” Igloo asks, then before I can respond, she answers her own question. “Oh . . . Because he gave me the email address of someone he knows, so he can validate whether I’m legit or not.”
“Bingo.”
It’s been years since Nathan and I pair-hacked, and longer still since the early days working for Repard. It’s nice to have someone helping me. I forgot what this was like.
His Maldives criminal record complete, I check back on the Tomo diagnostic data.
“He’s online!” I yell. “Move the car, quick.”
Danger jumps up.
“Wait!” Igloo says. “I have to close this deal.”
“Switch to cellular,” I say.
Danger pops a battery into another burner, and he and I watch anxiously for it to boot. Igloo’s fingers pound on her keyboard. As soon as the phone’s online, I initiate a data connection, and switch the onion circuit from one network to the other.
“Ok, drive.”
Danger slams the car into gear, and we peel out leaving the garage.
“Why are we moving?” he asks.
“Just in case,” I say, having no real concrete idea why. I’m afraid of Daly, afraid he’s suddenly going to
pop out from nowhere and corner us, leaving us no way to escape. Part of me says this is irrational, that if he only now appeared online, then he’s busy doing something else, and this is the least likely moment of attack. I should have been worried more when we didn’t know where he was.
“His banks accounts and credit cards are all shut down,” Igloo says.
“He’ll have cash,” I say. “Assets handy, in case he gets cut off.” I shake my head. Focus, Angie. This is no time for fear. “I can use your help with this next one. We’re going to break into the FCC now, mess with his employment records.”
If I had weeks or months and Nathan’s help, I could probably penetrate the FCC’s database straight from the Internet. But we don’t have the time or the resources. What we do have is an FCC Resident Agent Office based in Portland, Oregon, and a pretty girl buried under a baggy hoodie.
“Skip to waypoint #12.”
I grab a USB device out of my bag. It’s still inside a Ziploc to reduce contaminants. “You’re going to wear these gloves,” I say, holding out another Ziploc containing a pair of thin leather gloves.
“I am?” Igloo squeaks. “I can’t go in there.”
“I’ve got one arm. You think they’re not going to tie it back to me? How many one-armed programmers are there?”
“I can’t,” Igloo says, and there is pain written all over her face. “Make him do it.”
“I don’t trust him to do it right. I trust you.”
“Gee, thanks guys,” Danger says, “I’m right here you know.”
I catch Danger’s eyes in the rear view mirror and shake my head at him. Just let him keep quiet for a minute. “You can do this. Nobody is looking for you.”
I can practically see Igloo thrashing inside herself, and a yawning chasm opens up inside me. I am the monster. Long seconds pass.
“Fine, I’ll do it,” she whispers.
“Good. Lose the sweatshirt and put this on.” I hold out a blue button-down shirt and an electric company employee jacket.
More seconds pass while I hold the clothes out, my arm tiring.
Igloo sighs and takes the clothing from me. She reluctantly shrugs her way out of her white hoodie, a black Julie Ruin t-shirt underneath. She pulls the button-down on.