MikO MikO

by Michael Ochmann

Eine Perle für die Ewigkeit

by Michael Ochmann am 31. Dezember 2015

Wer auch immer sich mit Programmierung und IT-Zeug beschäftigt, sollte sich den Talk “Perl Jam” vom 32C3 (Chaos Communication Congress) anschauen. Ich habe noch nie mit Pearl gearbeitet, weiß aber um seine fantasievollen Operatoren (wie z.B. den “Turtle-Operator” @{[]}). Im letzten Jahr hat Netanel Rubin bereits einen Talk über die Sicherheitslücken in der Programmiersprache Perl gehalten und dafür eine Menge Hass von der Perl-Community (bereits während der Q&A Runde auf dem Congress) geerntet. In diesem Jahr hat er allerdings den Vogel abgeschossen.

Sowas habe ich noch nie gesehen. Wenn euch nochmal Jemand sagt, PHP sei eine schlechte, inkonsequente und unsichere Sprache. zeigt ihm diesen Talk. Der beste Teil dreht sich um diesen Codeblock:

use strict;
use warnings;
use CGI;
my $cgi = CGI->new;
if ($cgi->upload('file')) {
    my $file = $cgi->param('file');
    while (<$file>) {
        print "$_";
    }
}

Man würde jetzt denken, da kann nichts passieren, das Programm printet lediglich eine hochgeladene Datei. Weit gefehlt. Das geht da bis zur remote code execution, und das ist ein Code-Snippet aus der offiziellen Perl Doku.

Was die “Programmiersprache” hier tut grenzt an Wahnsinn. Zum jetzigen Zeitpunkt gehe ich davon aus, dass die Entwickler der Interpreter auf LSD waren, als sie das implementiert haben.

Wenn ihr wissen wollt, was genau da abgeht (glaubt mir, ihr wollt das wissen), nehmt euch 30 Minuten und schaut euch den Talk an.

Und benutzt nicht Perl!

Quellen

zurück