DevSecOps

20 mai, 2013

Versão 5.18 do Perl é disponibilizada

Publicidade

A mais recente versão do Perl, a 5.18, está disponível como um release estável. Entre as mudanças realizadas durante 12 meses de desenvolvimento e 400 mil linhas de código modificadas está uma grande reformulação na implementação de hashing.

perl

A nova implementação de hash usa uma seed aleatória que vai variar os valores retornados entre keys(), values() e each() cada vez e o programa é executado. Essa mudança torna nos hashes do Perl mais robustos e expõe bugs de dependência do tipo hash-order. Essa melhoria em segurança é acompanhada de uma correção para injeção de código através de translações (CVE-2012-6329) e parada de chamada memset do Perl com um valor negativo (CVE-2012-5195), um problema que poderá se tornar um heap overrun.

Recursos experimentais incluem sub-rotinas lexicais, que dão controle de escopo para o codificador ao definir a sub-rotina, e  set operations em expressões regulares.

Outra mudança está relacionada em como esses recursos experimentais são usados. Isso significa que recursos experimentais irão emitir alertas, a não ser que o tempo de execução do Perl diga que o alerta não é necessário. Novas funcionalidades emitirão esses alertas, assim como antigas. Uma lista dos recursos experimentais está disponível aqui.

Detalhes sobre as mudanças do Perl 5.18 podem ser encontrados neste link. O código fonte está disponível aqui.

Com informações de The H