Skip Menu |

This queue is for tickets about the B-Deobfuscate CPAN distribution.

Report information
The Basics
Id: 24334
Status: resolved
Priority: 0/
Queue: B-Deobfuscate

People
Owner: Nobody in particular
Requestors: jesteves [...] janium.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 16:56:08 -0600
To: bug-B-Deobfuscate [...] rt.cpan.org
From: Julián Esteves <jesteves [...] janium.com>
Hi again Josh. As an example of what I stated in the subject, look at this little program (sorry if I'm a little verbose): my $str = "hello"; $str =~ m/h(.+)/; my $str2 = $1; print "str2 ->$str2<-\n"; That should, of course, only print str2 ->ello<- But, when ran through B::Deobfuscate: perl -MO=Deobfuscate t.pl | perl prints str2 -><- That is because $1 gets mangled: my $Low = 'hello'; $Low =~ /h(.+)/; my $Cous = $SacramentoMountainsPricklyPoppy; print "str2 ->$Cous<-\n"; Hope not, but I'd suspect that maybe other Perl non-numeric variables get mangled. Regards. Julián
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 15:00:27 -0800
To: bug-B-Deobfuscate [...] rt.cpan.org
From: "Joshua ben Jore" <twists [...] gmail.com>
On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> wrote: Show quoted text
> > Thu Jan 11 17:58:11 2007: Request 24334 was acted upon. > Transaction: Ticket created by jesteves@janium.com > Queue: B-Deobfuscate > Subject: B::Deobfuscate does not distinguish internal numeric Perl > variables > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: jesteves@janium.com > Status: new > Ticket <URL: > http://rt.cpan.org/Ticket/Display.html?id=24334 > > > > Hi again Josh. > > As an example of what I stated in the subject, look at this little > program (sorry if I'm a little verbose):
Holy buckets! I shouldn't be renaming variables like $1 (thought @1 would be ok). Do you want PAUSE permissions to upload your own versions of B::Deobfuscate? Josh
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 17:08:49 -0600
To: bug-B-Deobfuscate [...] rt.cpan.org
From: Julián Esteves <jesteves [...] janium.com>
It would be great. Julián El 11/01/2007, a las 05:00 PM, Joshua ben Jore via RT escribió: Show quoted text
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> > wrote:
>> >> Thu Jan 11 17:58:11 2007: Request 24334 was acted upon. >> Transaction: Ticket created by jesteves@janium.com >> Queue: B-Deobfuscate >> Subject: B::Deobfuscate does not distinguish internal numeric >> Perl >> variables >> Broken in: (no value) >> Severity: (no value) >> Owner: Nobody >> Requestors: jesteves@janium.com >> Status: new >> Ticket <URL: >> http://rt.cpan.org/Ticket/Display.html?id=24334 > >> >> >> Hi again Josh. >> >> As an example of what I stated in the subject, look at this little >> program (sorry if I'm a little verbose):
> > Holy buckets! I shouldn't be renaming variables like $1 (thought @1 > would be ok). Do you want PAUSE permissions to upload your own > versions of B::Deobfuscate? > > Josh >
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 15:18:16 -0800
To: bug-B-Deobfuscate [...] rt.cpan.org
From: "Joshua ben Jore" <twists [...] gmail.com>
On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> wrote: Show quoted text
> > Queue: B-Deobfuscate > Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > It would be great. > > Julián
What is your PAUSE id? Josh
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 17:42:17 -0600
To: bug-B-Deobfuscate [...] rt.cpan.org
From: Julián Esteves <jesteves [...] janium.com>
Sorry, I misunderstood your message. I have not a PAUSE id yet. I guess I can fill the application form right now, but the PAUSE page says that it can take uo to 3 weeks until I get an account... ..I'm afraid the project I'm working on cannot wait that long... If I find the offending code, I'll let you know, anyway. Thanks. Julián El 11/01/2007, a las 05:18 PM, Joshua ben Jore via RT escribió: Show quoted text
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> > wrote:
>> >> Queue: B-Deobfuscate >> Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > >> >> It would be great. >> >> Julián
> > What is your PAUSE id? > > Josh >
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 15:52:53 -0800
To: bug-B-Deobfuscate [...] rt.cpan.org
From: "Joshua ben Jore" <twists [...] gmail.com>
On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> wrote: Show quoted text
> > Queue: B-Deobfuscate > Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > Sorry, I misunderstood your message. I have not a PAUSE id yet. > > I guess I can fill the application form right now, but the PAUSE page > says that it can take uo to 3 weeks until I get an account... ..I'm > afraid the project I'm working on cannot wait that long... > > If I find the offending code, I'll let you know, anyway.
The regexp in gv_should_be_renamed should be preventing $1... from being renamed. This looks correct to me now so there's an obvious thinko occurring here. I can't track this down right now at this particular hour. # Ignore keywords return if exists $k->{$name} or "$sigil$name" =~ m{\A\$\d+\z}mx; PAUSE accounts don't take three weeks. I don't think they do anyway. Josh
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 18:29:57 -0600
To: bug-B-Deobfuscate [...] rt.cpan.org
From: Julián Esteves <jesteves [...] janium.com>
Well, a little print-to-stderr-forensics showed that your regexp is just fine for catching "$1", but "$sigil$name" expands only to "1" ($sigil eq "", $name eq "1"). So, changing the regexp to m{\A\d+\z}mx seems to work for me. I hope this don't break something else... I'll be testing this a little more and I'll let you know. Julián El 11/01/2007, a las 05:53 PM, Joshua ben Jore via RT escribió: Show quoted text
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> > wrote:
>> >> Queue: B-Deobfuscate >> Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > >> >> Sorry, I misunderstood your message. I have not a PAUSE id yet. >> >> I guess I can fill the application form right now, but the PAUSE page >> says that it can take uo to 3 weeks until I get an account... ..I'm >> afraid the project I'm working on cannot wait that long... >> >> If I find the offending code, I'll let you know, anyway.
> > The regexp in gv_should_be_renamed should be preventing $1... from > being renamed. This looks correct to me now so there's an obvious > thinko occurring here. I can't track this down right now at this > particular hour. > > # Ignore keywords > return > if exists $k->{$name} > or "$sigil$name" =~ m{\A\$\d+\z}mx; > > PAUSE accounts don't take three weeks. I don't think they do anyway. > > Josh >
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 16:34:06 -0800
To: bug-B-Deobfuscate [...] rt.cpan.org
From: "Joshua ben Jore" <twists [...] gmail.com>
On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> wrote: Show quoted text
> > Queue: B-Deobfuscate > Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > Well, a little print-to-stderr-forensics showed that your regexp is > just fine for catching "$1", but "$sigil$name" expands only to > "1" ($sigil eq "", $name eq "1"). > > So, changing the regexp to m{\A\d+\z}mx seems to work for me. I hope > this don't break something else...
You've just broken @1 and %1 so now they aren't renamed. You can decide for yourself if that breakage is acceptable. Josh
Subject: Re: [rt.cpan.org #24334] B::Deobfuscate does not distinguish internal numeric Perl variables
Date: Thu, 11 Jan 2007 18:40:40 -0600
To: bug-B-Deobfuscate [...] rt.cpan.org
From: Julián Esteves <jesteves [...] janium.com>
If that is the only breakage, yes it is very acceptable indeed. Thanks again. Julián El 11/01/2007, a las 06:34 PM, Joshua ben Jore via RT escribió: Show quoted text
> > <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > > > On 1/11/07, Julián Esteves via RT <bug-B-Deobfuscate@rt.cpan.org> > wrote:
>> >> Queue: B-Deobfuscate >> Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=24334 > >> >> Well, a little print-to-stderr-forensics showed that your regexp is >> just fine for catching "$1", but "$sigil$name" expands only to >> "1" ($sigil eq "", $name eq "1"). >> >> So, changing the regexp to m{\A\d+\z}mx seems to work for me. I hope >> this don't break something else...
> > You've just broken @1 and %1 so now they aren't renamed. You can > decide for yourself if that breakage is acceptable. > > Josh >