open my $fh, '|-', '/usr/sbin/sendmail -t -oi' ...
Mit "#!/usr/bin/perl -T" bekomme ich den Fehler Software error: Insecure dependency in piped open while running with -T switch at meinskript.cgi line 288.
Wie kann ich Perl mitteilen, daß ich sendmail vertraue und das open untainten? (Im voraus danke für einen Tip. perl v5.8.8)
+4 replies
kristian
2011-08-24 21:46
User since 2005-04-14
684
Artikel BenutzerIn
bist du sicher, dass es diese Zeile ist?
Die Daten,die du versandmailen willst kommen ja von draußen,sind die alle untainted?
+3 replies
RalphFFM
2011-08-24 22:01
User since 2006-11-16
258
Artikel BenutzerIn
Das muß mit dem open my $fh.. zusammenhängen.
Außer 08/15-Text ist die einzige Variable, die ich zu $fh schreibe die Zeile "To: $email", wobei $email skriptintern festgelegt ist wie $email='nutzer@provider.de';. Der zugewiesene Inhalt kommt also nicht "von außen". Da müßte untainten doch eigentlich sinnfrei sein.(?)
Bin noch am Kämpfen. Jetzt tritt plötzlich tritt ein Error 500 auf. Der behindert mich gerade der ursprünglichen Sache nachzugehen und die Tips auszuprobieren.
Bin nun schlauer. Ursache war nicht die open-Prozedur an sich, sondern allein daß eine Ausführung letzterer abhing u.a. von einer tainted Variablen. Ein if ($foo eq "etwas" or $bar eq $tainted and open ($fh, '|-', ...){...} führt zum Skriptabbruch. Seltsamerweise läuft eine Prüfung mit perl -cwT meinskript.cgi immer problemlos durch.
Danke nochmals an "unsere" Mädels, und Kristian.
Last edited: 2011-08-25 01:52:51 +0200 (CEST)