Read Goblinopolis, The Tol Chronicles, Book 1 Online
Authors: Robert G. Ferrell
The spectators were a seething pie wedge splayed out within line of sight of the giant display boards. With a growing population of computer geeks in the kingdom, hacking had become rather a popular pastime, even to the point of being considered a bona fide sport. The Tragacanthan Royal Challenge was the de facto World Championship of hacking on N’plork. There were many other competitions, but none with stakes this high. This one was for all the marbles: absolute (more or less) ruler of the largest and most prosperous nation on the planet. For a split second Aspet sat stunned in awe and terror at being part of something far beyond his station, but he quickly reverted to his long hours of training and focused his thoughts solely on the task at hand, shutting out all distractions. He could never forgive himself if he did anything less than his absolute best here today, no matter the outcome.
There was a bit of ceremonial hoo-hah involving the Loca Magineer and various court officials, mostly for the benefit of the crowd, that allowed the contestants a bit more opportunity to become intimate with the physical and logical layout of their workstations. At length Cromalin II waved his Scepter of Office in a blessing-like gesture and the challenge was on.
The objective of this particular challenge was a form of capture-the-flag scenario. Each contestant had an encrypted token in a randomly-chosen location on their local system known only to him. They were charged with protecting this token from the other challengers, while capturing and holding as many of the other tokens as possible. Points were awarded every time you captured an opponent’s token and deducted every time your own token or one you had captured was taken by someone else. The contestant who possessed all of his opponent’s tokens or, if no one had achieved that, with the highest number of total points at the end of one hour was declared the winner.
Aspet started by building some stout walls around his token. He changed the name of it, hid the properties by embedding it in a deceptively constructed shell that looked like an incidental system file, and set up reactive sensors throughout the system that would warn him if anyone got close while at the same time relocating the token automatically, giving him valuable time to take active countermeasures.
Next he ventured out into the network, looking for easy targets. He found one almost immediately. It was so blatant, in fact, that he knew it must be a trap. He could simply skirt around it, but first he crafted a little time bomb of his own and tossed it into the mix.
A little further on he found a remote process being advertised that he knew had a couple of old vulnerabilities. He pushed against the first one and nothing happened. The second, however, proved to be incompletely patched and he slipped smoothly in through the resultant hole. Knowing a conventional system search for the token was probably both pointless and dangerous, he dumped the raw directory tree with full file attributes directly from the kernel and sorted it three times: by date created, date modified, date last accessed. Most hackers were skilled enough and had the presence of mind to change all three accordingly when fabricating file metadata, but under the intense time pressure of the challenge mistakes will be made.
Aspet did some quick further refining of his sort algorithm and narrowed the pool of likely candidates down to about a dozen files. He created a new directory and tried to copy all of them there. One of the files refused to be copied. “Target acquired,” he chuckled softly. Unlike all other files on the system, tokens could not be copied—only moved. He snagged it, erased his tracks, and beat a hasty retreat.
Just then an alert message popped up to advise him that an intruder was closing in on his own token. He sighed. There just wasn’t time to plug all the holes, several of which he suspected had been left on the system intentionally. He slammed out a script that created a dozen encrypted decoys and shotgunned them throughout the file space.
That ought to slow him down a bit
. He kept one eye on the intruder’s progress—better to let him waste time poking around fruitlessly than simply kick him out—and slid back out into the network, on the prowl for another token.
Almost immediately one, then another of his decoy tokens disappeared. Aspet chuckled. Those two would probably leave him alone now unless they discovered his deception in time to do something about it. He followed one of the data trails back to its origin, and found his counterfeit token in the same directory as the owner’s genuine one. Shaking his head at the lack of defensive structure, he snagged the real token and beat a hasty retreat. Two in the bank, one to go.
The remaining token belonged to Trellior. The king had spent his time well so far, first erecting prickly defenses of his own, then building a sort of armored vehicle for invading and hijacking other candidates’ tokens by brute force. Once His Majesty entered the field of combat in earnest, it didn’t take him long to realize that he only had one real opponent here: Aspet. The other two had already lost their tokens to him, and the fools had even fallen for the old counterfeit token ploy. Clearly they weren’t worth expending any additional effort on.
Trellior moved without any attempt at stealth onto the network and began to hammer away at Aspet’s defenses as hard as he could. Aspet had expected this, given the king’s predilection for direct action, and waited until his opponent was fully committed to the attack before playing his hand. He intentionally weakened his barricade at one specific point and hung back until Trellior found and exploited the hole. As soon as the king was through the opening Aspet snapped it shut and trapped the intruder in a ‘jail’ that appeared to be a root-level account but was actually an isolated user with no real access to system resources.
He knew Trellior wouldn’t be held up long in there, but his brute force approach would actually work against him in these circumstances and prolong that time sufficiently for Aspet to do a quick search for the king’s token. Knowing Trellior’s style, Aspet simply looked for the most heavily defended area. It didn’t take long to find it.
He circled the bastion warily, admiring the multiple layers of alternating passive and active defenses. It was beginning to dawn on him that no one, least of all a rusty coder like Trellior, could have thrown up such sophisticated barriers coding from scratch in the amount of time that had elapsed since the start of the challenge. There had to be prefab code blocks in use here, something that was strictly against the rules. At least, against the rules for everyone but the sitting monarch. The only person who could overrule him in this case was Cromalin, and the Loca Magineer would have to see concrete proof of the infraction in order legally to intervene. No, better to use the Sovereign’s own duplicity against him in a more...
direct
way.
His Royal Majesty Tragacanth was peeved. The canned attack code he was deploying did not operate as expected, and as a result it was taking too long to break out of that snot-nosed little brat Asp...whatever’s pathetic attempt at a trap. He pounded impatiently on his keyboard as he waited for a new process to fork and spoke quietly. “If you can hear me, Snarlox—and you’d better be able to—this tactical software you wrote is a load of rancid rok excrement. It’s not properly pipelined, the processor overhead is bollocks, and the system footprint is far larger than you promised. When I get through here we’re going to have a little chat about what it means to serve one’s king.” He smiled as he imagined his gnome accomplice sweating in the secret room above and behind him.
Snarlox was worse off than that, in fact, because he’d just come to the realization that the problems His Majesty the Boss was experiencing were not actually his fault. Somehow, the software he’d surreptitiously stashed on Trellior’s computer had been modified by parties unknown. The security had been airtight—unless—there had been someone else on the inside...no time to worry about that right now, regardless. He had to figure out some way to get his neck off the chopping block.
His audio communication with Trellior was one-way, to minimize chances of discovery by either the judges or some smartass in the audience with an RF-triggered scanner. He did have an illicit encrypted data tunnel into the king’s box via a network control channel, however, although use of even that ran a certain risk of being picked up by the Arnoc traffic anomaly sensors. Part of Snarlox’s job here was to serve as scapegoat if the cheating scheme was discovered; toward that end an elaborate series of fabricated clues had been planted, all of which pointed squarely at him and exonerated the king of any complicity. Snarlox himself had been conditioned to resist the standard interrogation methods employed by the Special Investigations Branch of CoME, who would be responsible for investigating any such allegations. Trellior had gone to great lengths to ensure that he did not lose this challenge.
Meanwhile, back on the playing field, Aspet was chinking away at Trellior’s defenses. The king was employing a rather clever ‘sandtrap’ technique that filled in any gap as soon as it was opened. As he tried different approaches, Aspet began to realize that not only was the Royal strategy clever, it was darned effective, especially as a delaying tactic. Of course, Aspet could probably win the challenge now just by holding onto the tokens he already possessed, but he had a burning desire to bring Trellior to his knees for being such an utter turd. He strongly suspected that the king hadn’t even written the code he was using to cheat. That was
much
less forgivable, in Aspet’s eyes, than the mere act of cheating itself.
By the time Trellior managed to break free of Aspet’s entanglements, he was dangerously angry. The frustration at being mired in his opponent’s defenses, coupled with a perceived failure of Snarlox’s (not so) Ultimate Tactical Software, was taking a heavy toll on the Royal composure. He decided an all-out assault on Aspet was in order. Instead of concentrating on searching for and capturing the other contestants’ tokens, he turned to attacking the underlying operating systems themselves. Since the contestants’ systems were essentially out-of-the-box non-hardened installs, taking advantage of known programming flaws was an easy way to escalate user privileges and eventually root each box. Even for a hacker with Aspet’s obvious mad skills, it simply wasn’t possible to sew shut every exploitable hole in the time allocated for the contest. All Trellior had to do was deploy his illegal vulnerability scanner to find a chink in the usurper’s armor and punch through. Hard.
It didn’t take that long. He found an exploitable remote service on Aspet’s computer being advertised to the network and quickly used it to gain a shell account. Then, after a few false starts, he finally ratcheted himself up through the user hierarchy to root-level access. A few more keystrokes and the cursed usurper’s system was history. As a bonus, once Aspet’s computer went offline any captured tokens residing there would be automatically regenerated in their respective owners’ systems, ripe for Trellior’s own harvesting.
Aspet, meanwhile, had just about sorted through all the tricks His Majesty had used to protect his token when one of his own alarms went off. He switched back to his home screen and felt a strong jolt of adrenalin as he realized what Trellior was doing. He raced to find the exact location of the intruder in his system and cut him off, but he was too late. A warning popped up that said:
System shutdown imminent. Please save any files you have open immediately. Shutdown in 10 seconds.
No time to dump the process table to kill off whatever was controlling the shutdown; Trellior was probably smart enough to have several backups running to prevent this, anyway. He watched the counter click down to 7. There
must
be some way to stop him. Aspet’s mind raced furiously, grasping at something just beyond reach, when a sudden calm came over him and the mental fog lifted. Seemingly in slow motion, he watched himself type
$ wait(0) -PMA -9
The counter stopped decrementing at 2. He had overridden the shutdown with an undocumented failsafe kernel command that suspended all running processes except those associated with the current window. When he restarted the system he’d have two seconds to act. Plenty of time. He checked the process list and found the hostile PIDs.
$ wait(0) -R | seize -T [2347..2350] > null
Aspet hit the ‘data submit’ key and before it had returned to the fully upright position switched back to his attack window and slurped the Royal token over to his own system. Then, for the
coup de grace
, he forced Trellior’s network adapter into an infinitely recursive local loop condition that escalated after a dozen or so iterations into a packet storm which brought the king’s interface to a grinding halt.
From Trellior’s point of view, he had initiated the shutdown of Aspet’s computer and watched the countdown suddenly pause at two. It restarted after a few seconds and everything seemed to be working fine when suddenly his attack screen went blank. Switching back to the system screen, he discovered that all communications with any remote node were simply nonexistent. He was off the grid. As he stabbed frantically at the keyboard trying to understand what was going on, the bells started ringing. The Challenge for the Throne of Tragacanth was over.
Chapter Sixteen:
Dead Reckoning
S
elpla and her compatriots finally reached the high ground overlooking the grotesquely swollen Molkpot River. The three of them sat in the muck breathing heavily after their narrow escape from the flood and its attendant wildlife perils. The mud wasn’t just blue and sticky—it seemed almost sentient. Well, maybe not
sentient
, but at least more animated than mud was supposed to be in their experience. It was actively engaged in crawling up into their most intimate places, no matter how tightly sealed against the elements. Regardless of the discomfort, it was still better than being nibbled on by needlefish or shredded by pincer ants. There were still ants about, to be sure, but not in the concentrated mass of the floating rafts.