Perl Obfuscator

Nicholas Clark nick at ccl4.org
Wed Sep 19 17:30:27 BST 2007


On Wed, Sep 19, 2007 at 04:57:18PM +0100, Simon Wistow wrote:
> On Wed, Sep 19, 2007 at 05:12:35PM +0200, Rafael Garcia-Suarez said:
> > Given the dynamic nature of Perl, and the games you can play with
> > symbol tables / AUTOLOAD / aliases, it would be hard to write an

You forgot the more simple

    $object->$method(...);

syntax

> > obsfucator that changes subroutine names or class names while still
> > producing a correct program. Hard, as in Turing problem hard :)
> 
> Hmm, could you then produce an obfuscator that did evil things with PPI 
> and B::Deparse couple with autoload, aliases and string evals that would 
> be damned near impossible to untangle.
>
> Where 'damned near' is defined as 'near enough' so that you're happy.

I think that it would be fragile to get right. And about as easy to
deobfuscate as it was to create, using the same tools, because the obfuscation
would have patterns in it.

> As previously mentioned you can decompile anything (C, C++[*], Java) yet 
> noone does it for something like Office.

I assume that the economic incentives aren't high enough.
Whereas my understanding was that in the 80s pirates (yar. on topic) would
clone *custom chips in video games* by slicing them apart and scanning them
with electron microscopes. Which seems a damn sight harder than software.

> "OMFG! N0000000000000000000000000000b! Go RTFM you n00by mcn00berson!"

Strangely, that seems to be lacking in this thread.

> There was a horse in the corner. Even though it was dead some of the 
> monkeys just kept flogging it.

That might well be true in this thread. But it the monkeys are flogging a
dead horse, they aren't flinging poo. Well, unless they're flogging it in
the hope of getting poo out to fling.

Where did the footnote with the * go?

Nicholas Clark


More information about the london.pm mailing list