Online Suche im Handbuch | LITTLE-IDIOT NETWORKING |
Hier nun folgen ein paar Beispiele, wie man die Übergabeparameter an Skipte filtern kann:
#!/usr/local/bin/perl -Tw
# ...
my $filename = shift @ARGV; # tainted
unless ($filename =~ /^(\w+)$/) {
die "Invalid filename: $filename\n";
}
$filename = $1; # no longer tainted
open(OUT, ">$filename") || # OK
die "Unable to open $filename: $!\n"
# ...
Hier nun ein Beispiel, wie man gezielt eine Parameter bzw. eine Variable als "verdorben" kennzeichnet:
if ($address =~ /(.*)@(.*)/) {
use Taint qw(taint);
$user = $1; $domain = $2;
if (tainted $address) {
taint $user; taint $domain;
}
}
Online Suche im Handbuch | LITTLE-IDIOT NETWORKING |