PATH:
home
/
carfac
/
.cpanm
/
work
/
1564447317.10355
/
Apache-ImageMagick-2.0b7
/
scripts
# This is a sample CGI script to use Apache::ImageMagick without Apache :-) use IO::File ; use CGI ; eval { my $q = CGI -> new ; # Path where to find Apache::ImageMagick for require my $modpath = 'c:\Programme\Perl\User\aim' ; # Path where to look for image sources my $basepath = 'c:\data\images' ; # Path for cache my $cachepath = 'c:\data\cache' ; my $file ; # Try to get the real path_info and filename from IIS my $pi = $ENV{PATH_INFO} ; my $sn = $ENV{SCRIPT_NAME} ; $pi =~ /^$sn(.*?)$/ ; $file = $1 || $q -> param('-file') ; while ($file =~ s/\.\./_/g) { ; } $file =~ s/[^a-zA-Z0-9_.-]/_/g ; $ENV{PATH} .= ';' . $ENV{MAGICK_HOME} ; require "$modpath/ImageMagick.pm" ; require "$modpath/CGI/ImageMagick.pm" ; my $r = CGI::ImageMagick -> new ({filename => "$basepath/$file", path_info => $q -> param('-filter') || '', args => { $q -> Vars} , 'AIMDebug' => 1, 'AIMCacheDir' => $cachepath, }) ; my $rc = Apache::ImageMagick::handler ($r, 'IO::File') ; die "Error code $rc" if ($rc) ; my $fn = $r -> filename ; $fn =~ /.*\.(.*?)$/; my $ext = $1 ; open PIC, $fn or die "Cannot open $fn ($!)" ; my $size = -s $fn ; print "Content-Type: image/$ext\n" ; print "Connection: close\n" ; print "Content-Length: $size\n\n" ; binmode (PIC) ; binmode (STDOUT) ; print $buffer while read(PIC, $buffer, 32768); close PIC ; } ; if ($@) { print "Content-Type: text/plain\n\n" ; print "ERROR:$@\n" ; }
[-] aimcgi.pl
[edit]
[+]
..