Networking Wars: The Phantom Reference

The Rebel Assault fleet was falling in from a Hyper Text Jump to the windows NT Domain. Their objective was to take the armies of Darth Gates by surprise and destroy his massive operating system weapon, Windows XP. Unfortunatly they had jumped into a trap. Upon arrival pornographic popup windows along with handhelds loaded with the Windows CE's OS had engaged. The Imperial fleet was using the popup windows to stall the rebel vessels. And while the handhelds were far from powerful, there sheer numbers made their attacks like the torture of razor cuts.

Edward Capriolo was commander of the S.S. Stickdeath, one of the fleets finest BigInteger, class cruisers. Big integer class cruisers had nearly infinite storage of arbitrary precision whole numbers. Which made them critical for large operations. In addition they had a variety of member functions that could assist in many roles.

The Bridge of the SS Stickdeath was like that of all java.lang.Object, it contained ancestor method that were on every object in the fleet. In fact chief communications officer UNIX CARLO, one of the top console operators in SUNY, had just received a message event that had propagated from the command class.

He notify() Edward of the message. "Sir we are being sent an script to execute by fleet command"

Edward: "cat Infile"

response.setHeader("text/html");
out.print("We are calling off the assault. The imperial forces seemed to send us into a mouse trap. We want to go back the way we came however it seems that the route has been blocked. Probably in a lower layer. We want you to open up that port so we can regroup the fleet");
out.close();

Edward: "Command has send us a request everyone Lets give them a response. UNIX Carlo, send a message to the mail server in one of our ~home systems. I want to know what is going on"

Just then the warning went off in the pre compiler. Tactical officer Marvin informed the crew, "Sir we have a large pop up window appearing off the starboard side. Its loading images, looks like porno."

Edward : "You know what to do."

Marvin: "Yes sir I am bringing the pow(int exponent) function online sir. I am passing an 1/4 Integer.MAX_VALUE."

Just then the JVM aboard the ship began generating a primative int. You could here it being piped through native functions in the hull of the ship and then into the POW function,. A big integer of that value could be hundreds of decimal places. Just then a huge bit stream of bits connected the StickDeath to the popup window for just a slit second. In that second the popup window shattered sending bits of pornography across the entire system.

Edward : "Good riddence. Nice job Marvin. What is the status of our message?"

UNIX CARLO:
"Sir I have attempted to connect 3 times no mail is getting through. I cant even ping it."

Edward: "Pings wont make it through the routers Active Control List. We are going to have to open a pipe somehow and get down the bit stream. Sweep the main servers ports for all available services. We will even go through on the daytime port if we have to."

Marvin: "Sir a squad of fighters have been damaged and are docking on the ship. Iits Joeys Skywalker's wing."

Edward" Get Skywalker up to the Bridge I need to brief him."

Unix Carlo: "Sir, we have a service, telnet is getting though."

Edward: "Ok. Set a header with my username and password and put us on course for that pipe."

Unix Carlo: "Sir its telnet its too risky! We will be going across the bit stream clear. Any tie fighter with a good packet sniffer will…"

Edward : "I know the risks, but it's a risk we have to take. I am not going to fail on the command thread and see my fellow Objects get send to the garbage collector by handheld devices. I would rather be purchased by AOL. Once Skywalker's wing gets patched up they will have to do some software firewalling for us."

The SS Stickdeath changed course from that of the main fleet. It began preparing for serialization to go across the bit stream.

Suddenly volley of vbscript macros from tie fighters ripped across the hull. The ship shook instruments all over the layer blew up.

Edward: "What the hell is going on. Our virus definitions are supposed to be up to date, and our anti virus software is state of the art."

Marvin: "Those macros hit us bad, Sir. the Engine is throwing a lot of errors, I think one of the macros also got into our controller servlet. The stack size is critical from all the error propogation."

Edward : "Damn it,  Marvin D2 I don't care if you have to hex edit every binary on the ship I want that VB script removed. I need someone to get down to the transport layer and fix the engines. I don't care if we have to use IPX/SPX packets just get our data moving."

Marvin: "Sir that is the least of our problems, We lost a lot of throughput in the attack. Wait look... Something is becoming Visibile off the port side."

Looking at the screen showed an awesome sight. A Large Bean Context, one of the Open Sources finest design patterns was becoming visible. Bean contexts were as advanced today as O.O.D. was to linear programming. Totally customizable they could range from any size, small to large, they could support and listen for any number of services, and could carry any standard Java Bean. Plus they had the ability to be visible or not visible. An awesome site indeed. Until something scary happened. It started to fire.

Marvin: "Sir we have a problem. The context is moving into range. Right now its beans are firing events at us! I shut down the ServiceListener but if they get close enough they will be able bypass the fact the fact that we don't have a customizer and use inspection to get all our class info."

Edward: "Dear God no. Use the long range inspectors"

Everyone at that point knew. Marvin just had to speak it, " Sir it looks like that bean context was captured. It has been loaded with a number of proprietary components. They range in everything from C# to VB.net. it looks like the entire context was reverse engineered and recommissioned, I mean recompiled using J++."

Edward: "Can we make it to the routers port before they get in range?"

Marvin: "No sir we need more GregorianCalendar.getTime()"

Edward: "Damn"

Just then the doors to the Bridge open, and in walks Joey Skywalker, "Is someone in need of some O.O.D.?"

Ed: "If we cant get away from that bean context it will garbage collect us. Fast."

Joey: "I can do it. All I need is to find a backdoor into their system and Ill use a D.O.S. attack. They will be so full of ICMP traffic they wont be able to deal with anything else."

On the screen you could see three RISC based Rebel Relay Mail servers loaded with qmail form up into triangle and deliver a concentrated E-MAIL blast at the bean context. It did little more then superficial damage across to it. The context answered back with a tractor bean that pulled in two of the ships.

notify()
This is command, two of our mail relay servers have been compromised the imperial forces are flooding my ships with porn. Windows is focusing the assault on our Linux servers.  We have lost communication witch most of the fleet…

Edward: "What is the status of the transport layer?"

"This is Dave in engineering. Sir its really bad down here it looks like a bunch of source code layered on top a DOS clone down here. It looks like a Windows OS. Worms are all over it. It looks like its going to need shutdown. I will have maybe write zeros and load a kernel."

Edward: "We can't afford to shut down now. We are going to have to run with Windows! I need you to go into the processes and kill everything non essential. We need all the power we can get. In other words kill everything associated with windows except a command prompt. Marvin what the status of the controller servlet?"

Marvin :" Its going just slightly sluggish on the response."

Edward: "It will have to do. We need to give Skywalker as much cover as possible. Overload power to the weapon ARRAYS [] . I want you use Integer.MAX_VALUE don't hold anything back "

Down in the flight deck. Joey was climbing into his X wing fighter. Typically considered and Interceptor the fighter also had the ability to engage tactical targets on larger ships.

Fighter myFighter = (Fighter) (getfighterContext().getFighter());
myFighter.engine.on();
myFighter.weapons.on();
myFighter.communications.on();

Joey: Ok everyone listen up. Remember that BeanContext is loaded with enterprise level classes. One hit from one of those and it will be nothing but virtual memory. But don't ignore those CE fighters. There are thousands of them out there, the IR from 1000 of those things is deadly…We are going to try to find a way through the contexts application layer and get at its Networking Layer. If we can hit it with enough of our ICMP traffic guns we can bog it down and it wont be able to catch the StickDeath. Ok everyone deploy.

Group Skywalker = new Group();
Stickdeath.openfighterBay();
Strickdeath.deploy(skywalker);

As Skywalker passed out the fighter bay he saw swarms of CE handhelds.  Joey gripped his keyboard.

MyFighter.weapons.fire (new MultiTasked Program);

All the CE fighters made a clear path from Joeys weapon. They knew they were incapable of dealing with multitasking programs. The ones hit by it sputtered and crashed in space.

One of the listeners on the Bean Context must have been alerted to Joey's presence. The Bean Context started throwing exceptions from the main cannons.

Skywalker dipped the fighter left and under one huge exception. One of the fighters in the wing was not so lucky. It was stuck head on.

"This is Rectangle r1 I just got hit by a UnsupportedCloneException my ship can not handle that. My main thread is crashed and I am running on GUI here!"

Joey: "Hold tight we will try to take some of the pressure off you"

Import java.sql.*;

Connection con= new Connection ( Bean Context); //setting weapon target
Statement = con.createStatement(); ResultSet rs = con.executeQuery( select * from main );//selecting weapons
 While ( rs.next() ) { } // firing large result set

When Joey set off this query you could see the SQL server on the port side go into action. Dealing with a huge result set like that could buy them some time.

Joey: "Ok that will buy you some time to stop() and init() you JApplet. For now everyone else try to take the pressure off me. Try hitting them with any object you can. I am going to try and bypass the JVM."

Skywalked thought I using javah to build some native code but then a wonderful idea came to him.

Joey: "Stickdeath I need a jar file can you get it for me?"

Marvin: "Negative we had to shut down all systems. I cant even open a socket to you."

Joey :"Ok I need you to be ready to run a application from me. The source code is on its way."

Marvin: "Skywalker the plan was to hit the networking layer. "

With out the jar file Joey would not be able to compile locally. He had no source. He had to use the reflect classes which where tricky.

Import java.reflect.*;

Object o = Class.forName("javax.comm.ParallelPort").newInstance();  // get the parallel port class
Class params = new Class[0]; // initilize generic parameters
Method method = object.getClass().getMethod("open", params); // find the open method in the class to open the port

Just then the Bean Context releaseService(BeanContextChild child, Object requestor, Object service) the service flew across space. Striking the StickDeath with a huge force

Edward: "Status report"
Marvin:" We just got hit by a service. Looks like a multithreaded server. We just lost our source and can not rebuild anything sir. We can not handle any more of those."
Edward:  " Is the power function ready to fire?"
Marvn: "Sir still capable."
Edward " FIRE!! Integer.MAX_VALUE"

The Stickdeath opened with the biggest weapon it had an already huge whole number^ to the 231-1 power. Stream of big as wide a 40 thicknets came from the front of the ship. The cut across space and dissolved CE's unfortunate enough to be in the path. It stuck the Bean Context with such an incredible force that space was a bright as a young CCIE's future. When the sunburst died down the bean context sat in space nearly unphased.

Marvin: " We took a number of it services down sit. But its still loading another service."
Edward: " .....All classes. Serialize yourself and Abandon ship. This will be a grave day for open source everywhere."

Meanwhile Joey was ducking CE's and writing source code.

Object[] args = new Object[0]; // initiaize generic arguments
 Method.invoke(o , args); // call the method. pass it the arguments

}catch (Exception e){} I don't have time to worry about it. I will just take them all.

Joey : "Stickdeath are you ready to run the program."
Joey: "Stick death do you copy."
Edward : " I set the call to abandon ship. I am manning the superclass by myself. One more service blast from the Bean Context and we are going to throw our final exception."
Joey: " Maybe not. Open me a command session. and give me a  mount drive"
Edward: "done"

Javac JoeyProgram.java
java JoeyProgram

Edward was abourd the Bridge of the BigInteger class cruiser. Looking at the viewscreen. A myriad of fine RISC based servers were engaging the Imperial Bean Context. Any ship the context did not globalHierarchyLock and capture, it was destroying with its propriety services. With the damage the StickDeath had sustained it could barely generate random numbers to load its POW cannons. The ship had lost everything but a few significant bits, and Edward Wanted only the chance to see the ship fire its POW function one more time.

Suddenly around him the rattling fire from the handhelds stopped. He looked towards sensors and found that they were breaking off attack.

"It just cant be."

Joey: "Yes. You see those CE's were not being controlled by TCP traffic. They were being controlled through IR from the bean contexts parallel port. Once I got the jar file I was able to talk to the port, of course it was not secured. I turned the beans own CE fighters on itself. They are fighting for me now.

Edward: "Why you even managed to write the class using the reflection API. I must say I have never seen someone capable of such high levels of programming. The source is strong within you. Do you know of any way to rollback the abandon() function. I want to get my crew back"

Joey: " Haha no but I am sure you will figure something out. I have a bean context to Garbage Collect."

Just then Edward thought of something. If they are controlling the router Port but I can talk to the serial port. I can remove the Aces control lists.

ip interface serial 0
no access-list 101
reload

Just then a stream of traffic started flooding the ports. Reinforcements. All of the biggest rebel ships flooded into the System.
The  Corba , and the flagship of the fleet the SS RUNTIME. The runtime has nearly 6 sectors bow to stern and had. to only issue one command.

exec("Destroy Big Nasty Java Bean")

Corbra dispatched methods from other ships and distant domains resulting in a spider web of fire. Within a second it was void. After a short explosions it was null, and then the runtime gc()ed it.

 

….To be continued in Networking Wars attack of the clone() method

1