Self-Replication

Four times this week the Grid has been attacked by a plague of self-replicating objects, as evidenced by this report on the Grand Unified Linden Blog and these two reports over on Second Life Insider. These objects spawn copies of themselves, kind of like the classic UNIX “fork bomb” that spawns new processes until the system is overwhelmed, and quickly overwhelm, not just the parcel or reagion that they’re in, but the asset server itself, which causes a world of hurt for Residents, breaking Search, the map, and teleportation. (The objects may also exhibit other annoying behavior.) The last couple of times this happened yesterday, LL actually had to pull the plug on every single freaking script on the Grid to be able to stop these things. This causes a hell of a lot of stuff to stop working…and nearly caused Danielle to lose L$1000 in a texture vendor.

So, my question is: What is Linden Labs doing to find the perpetrators of these acts, to get them off the Grid, and to ensure that this sort of thing can’t happen again?

Creating objects that interfere with the functioning of the Grid to such a degree that LL has to disable all scripting functionality in order to clean the mess up…that sounds like a pretty damned clear violation of TOS 4.1(viii) as well as “Disturbing The Peace” under the Community Standards. Any user doing this really ought to be kicked off the Grid, for good. But…will they stay kicked off? Thanks to the removal of account verification on the beastly day of 6/6/06, a user whose account has been terminated “with extreme prejudice” can simply create another account and be back online in mere minutes. LL has supposedly implemented a “machine hash” so they can block entire systems from accessing SL…but I don’t know how well that’s working. Even so–and this is a point many critics of the open-registration policy overlook–there’s nothing stopping a kicked-off griefer from contacting his buddies via AIM (or what have you) and passing along his griefing techniques to ten of his closest friends. Result: up to ten more attacks. Theoretically, this could replicate in much the same way that these objects themselves replicate. Lack of open registration would slow down the onslaught, but would probably not eliminate it entirely.

So…how could LL prevent this from happening altogether? I don’t know if there’s a good way to do so without breaking script behaviors that many existing objects rely on. Some have glibly talked of restricting the use of llRezObject(), or even scripting itself, until an account becomes verified and/or has been in-world long enough. Aside from the fact that it still wouldn’t stop a sufficiently-determined griefer, I think that would add a slowdown to the operation of scripts that need to rez objects, by introducing a whole bunch of extra security checks into the process. Is this a necessary evil? I don’t know.

One thing I do know: Danielle said, in response to news of the latest attack, “The griefers got smart.” Here’s hoping LL gets smarter in response.

Advertisements

3 Comments

Filed under Bugs

3 responses to “Self-Replication

  1. If I may, LL *is* gettig smarter. The outages were nowhere near as bad as they could’ve been. Griefers had to learn this new technique of transferring ownership of their objects to get close to affecting things as they did. Go LL! As LL gets better at handling the grief, the griefers will have to find new ways to circumvent it. Have viruses been eliminated because we have virus detectors? Have burglers been thwarted due to our home security alarms? It will be a constant game of catch up, but I applaud the LL team for being able to handle issues as readily as they can these days. I remember the past where a simple self-replication will cause a full day of outage. And the past wasn’t all that long ago.

  2. Dani2.0

    I would have to agree with Mera. I was around for the first attack and it was horrible. The boxes swarmed the GR and even with my computer volume turned down you could STILL hear the horrendous noise these things were making. In a matter of 5 minutes I had returned over 30 of these things. About 5 minutes after that the grid was kaput.
    Yes the griefers have gotten smart but LL is getting smarter. (gasp did I say that) 🙂

  3. Yes, Mera and Danielle, you have a point, in that things could always be worse. Still, matters can continue to improve from where they are now…and I suppose what I’d like to see is a way of choking off self-replicating objects before they get out of hand and require drastic measures. “Nip it in the bud,” as Barney Fife might say. The question is, how would one do this without unintentionally breaking existing (benign) script behavior?

    Still, we should give LL full credit for what they’ve already done in mitigation of this problem. I don’t want to sound too much like a “Negative Nancy”; after all, SL is probably one of the single most complex software systems ever designed, and sometimes I think it’s a bloody miracle that it works as well as it does…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s