[Cascavel-pm] Erro estranho no Perl v5.8.6

Vinicius Alves perl em atechs.com.br
Quinta Agosto 4 17:03:56 PDT 2005


Não chamaria de frescura, é a forma do Perl evitar que a gente dê um tiro no próprio pé. Tem como passar por cima disto não usando o -T ou chamando as funções system(), exec() ou o open com pipe através da forma com listas. Tirando do perlsec:

 
exec "echo $arg";           # Insecure
exec "echo", $arg;          # Secure (doesn't use the shell)
exec "sh", '-c', $arg;      # Considered secure, alas!Vê que ele não faz verificação de dados inseguros quando se usa a forma com vários argumentos.[]´sVinicius----- Original Message ----- 
  From: Sammuel de Souza 
  To: Cascavel Perl Mongers 
  Sent: Thursday, August 04, 2005 7:53 PM
  Subject: Re: [Cascavel-pm] Erro estranho no Perl v5.8.6


  Esse erro é frescura do PERL ou é alguma coisa na instalaçao???


  fiz assim para arrumar

  $ENV{PATH} = '';

  $cat = `/bin/cat /usr/local/squid/logs/access.log | /usr/bin/awk \'{print \$3":.:"\$4":.:"\$6":.:"\$7":.:"\$10"<br>"}\' | /usr/bin/grep $ip`;

  e funcionou.

  (aleluia depois de 4 dias apanhando para isso, LOL)

  []'s Douglas
    ----- Original Message ----- 
    From: Vinicius Alves 
    To: Cascavel Perl Mongers 
    Sent: Thursday, August 04, 2005 8:37 PM
    Subject: Re: [Cascavel-pm] Erro estranho no Perl v5.8.6


    Sammuel,

    Você tem que "limpar" suas varáveis de ambiente:

      $ENV{'PATH'} = '/bin:/usr/bin';
      delete @ENV{'IFS', 'CDPATH', 'ENV', 'BASH_ENV'};

    Veja http://www.perl.com/doc/manual/html/pod/perlsec.html para mais informações.

    []´s
    Vinicius


      ----- Original Message ----- 
      From: Sammuel de Souza 
      To: Cascavel Perl Mongers 
      Sent: Thursday, August 04, 2005 7:18 PM
      Subject: Re: [Cascavel-pm] Erro estranho no Perl v5.8.6


      Fiz como vc falou

      fiz um script menor para ver se resolvo o problema.

      coloquei 

      use diagnostics;

      Codigo
      #!/usr/bin/perl

      use diagnostics;

      use CGI;

      my $query = new CGI;

      print $query->header;

      $impr = `/bin/cat /usr/local/www/cgi-bin/aa.log`;

      print "teste: $impr";


      quando acesso via Internet explorer veja o httpd-error.log

      Insecure $ENV{PATH} while running setuid at
              /usr/local/www/cgi-bin/sam.cgi line 11 (#1)
          (F) You can't use system(), exec(), or a piped open in a setuid or
          setgid script if any of $ENV{PATH}, $ENV{IFS}, $ENV{CDPATH},
          $ENV{ENV}, $ENV{BASH_ENV} or $ENV{TERM} are derived from data
          supplied (or potentially supplied) by the user.  The script must set
          the path to a known value, using trustworthy data.  See perlsec.

      Uncaught exception from user code:
              Insecure $ENV{PATH} while running setuid at /usr/local/www/cgi-bin/sam.cgi line 11.
       at /usr/local/www/cgi-bin/sam.cgi line 11

      Agora qnd digit via prompt veja

      #  ./sam.cgi

      ele executa normal...

      Server version: Apache/1.3.33 (Unix) PHP/5.0.4 mod_perl/1.29


      o que esta acontecendo???

      []'s Douglas





--------------------------------------------------------------------------


      _______________________________________________
      Cascavel-pm mailing list
      Cascavel-pm em pm.org
      http://mail.pm.org/mailman/listinfo/cascavel-pm 


--------------------------------------------------------------------------


      No virus found in this incoming message.
      Checked by AVG Anti-Virus.
      Version: 7.0.338 / Virus Database: 267.10.1/64 - Release Date: 4/8/2005



----------------------------------------------------------------------------


    _______________________________________________
    Cascavel-pm mailing list
    Cascavel-pm em pm.org
    http://mail.pm.org/mailman/listinfo/cascavel-pm


------------------------------------------------------------------------------


  _______________________________________________
  Cascavel-pm mailing list
  Cascavel-pm em pm.org
  http://mail.pm.org/mailman/listinfo/cascavel-pm


------------------------------------------------------------------------------


  No virus found in this incoming message.
  Checked by AVG Anti-Virus.
  Version: 7.0.338 / Virus Database: 267.10.1/64 - Release Date: 4/8/2005
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20050805/af5174f8/attachment.html


Mais detalhes sobre a lista de discussão Cascavel-pm