Have fun with perl ;-)
Geschrieben am 08-08-2006 - ⧖ 8 minDas Security through obscurity nicht funktioniert und einige Perl-Signaturen poehse[TM] sind, sollte ja ausreichend bekannt sein. Auf der anderen Seite macht es aber wahnsinnig Spass Perl-Code in Ascii-Art zu schreiben oder richtig zu verhunzen. Am einfachsten geht das mit dem Perl-Modul Acme::EyeDrops. Nehmen wir mal folgendes Beispiel:
#!/usr/bin/perl
use Acme::EyeDrops qw(sightly);
print sightly({ Shape => 'rose',
Regex => 1,
Print => 1,
Indent => 1,
SourceString => "Wanna fuck?!\n" });
{{< /highlight >}}
Dieses Script fuehrt man jetzt aus und leitet STDOUT in eine andere Datei um `perl foobar.pl >
rose.pl` um. Danach steht in der Datei rose.pl folgendes:
{{< highlight perl >}}
''=~('('.'?'
.'{'.('['^"\+").(
'['^')' ).+(
"\`"| (')')).( "\`"|
'.'). ('['^ '/').
"\"".( '{'^ ','). ("\`"|
'!'). ('`'| '.').( ('`')|
'.'). ('`'| '!').( '{'^'['
).('`'|'&' ).''. ('['^'.').('`'|'#').
('`'|'+').'?'.'!' .('!'^'+').'"' .((
'}')).')');$:='.'^ '~';$~='@'| '(';
$^=')'^'[' ;$/='`'| '.';$, ='('
^'}';$\='`' |"\!";$:= ')'^('}');$~=
'*'|"\`";$^= '+'^'_';$/='&'|'@';$,='['&'~'
;$\=','^'|' ;$:='.'^'~';$~="@"| "\(";
$^=')'^'[' ;$/='`'|'.';$,='(' ^"\}";
$\=('`')| '!' ;$:=(')')^ "\}";$~=
'*'|'`';$^= '+'^ '_' ;$/=('&')|
'@';$,='['&'~';$\=','^ '|';$:='.'^
'~';$~='@'|'(';$^=')'^'[';$/='`'|"\.";
$,='('^'}';$\='`'| '!' ;$:
=')'^'}';$~='*'
|'`';$^ =((
'+'
))^
'_'
;$/
= '&'|"@"; $,=
(( '['))&'~'; $\=
"\,"^ '|';$:='.' ^((
'~')); $~=('@')| '('
;($^) ="\)"^ '['
;($/) =(( '`'
))|'.' ;($,)= '('^'}';$\=
'`'|'!';$:= ')'^'}';$~=('*')|
'`';$^='+'^ '_';$/='&'| '@';$,=('[')&
'~';$\=','^ "|";$:= ('.')^ '~';$~="@"|
'(';$^=')'^ ('[');$/= '`'|'.'; $,='('^'}'
;$\=('`')| ('!');$:= ')'^"\}"; $~=('*')|
('`');$^= '+'^'_';$/ ='&'|'@';$, =('[')&
'~';$\= ','^'|';$: ='.'^'~';$~ ="@"|
'(';$^ =')'^'['; $/='`'|'.'; ($,)
='('^ '}';$\= '`' |'!';$:= ')'
^'}' ;($~) =(( '*'))|'`' ;(
$^) ='+' ^(( "_"));
$/ =(( '&'
))|(( '@'
)) ;$,
=((
'['
));
Und jetzt dreimal raten was ein perl rose.pl
ausgibt? Weitere (und zum Teil noch ekligere)
Beispiele kann man unter perldoc Acme::EyeDrops
nachlesen.