Yes, it certainly can.

Regards,

Peter.

Christopher Dolan wrote:
private void readObject(ObjectInputStream in) {
    new Runnable() {
        public void run() {
            while (true)
                new Thread(this).start();
        }
    }.run();
}

At 1MB of stack RAM per thread, this will thrash most machines in no
time.  Can a SecurityManager block thread creation?
Chris

-----Original Message-----
From: Peter Firmstone [mailto:[email protected]] Sent: Wednesday, September 29, 2010 3:58 PM
To: [email protected]
Subject: Re: Towards Internet Jini Services (dos attacks)

Zoltan Juhasz wrote:
Sim,

I think the important danger in Jini is the use of objects. In simple
messaging communication (especially if non-binary), you don't have to
worry
about objects. In Jini, any method can take and object as a parameter
that
results in serialisation and unmarshalling at the receiver end. When
an
object has something nasty executing during within the readObject()
method,
it's too late to do anything.

This was a big problem in the days of single core, not as bad now. Perhaps we need a software watchdog? Or an easy way to kill and quarantine a misbehaving service? Or an unmarshalling executor thread pool, which passes the object after it has been deserialized.


Reply via email to