30 de setembro de 2008

Nova onda de browsers e as máquinas virtuais

Com o lançamento do Chrome e das novas versões do Firefox e Internet Explorer, um assunto que foi bastante discutido foi a performance das engines de processamento/interpretação de javascript.

Os interpretadores mudaram muito e dentre as principais mudanças está a transformação de javascript direto para linguagem de máquina. Este post do Rodrigo Kumpera mostra uma outra característica, agora os interpretadores são baseados em registradores e não em pilha como as máquinas virtuais tradicionais.

Segundo o post, apesar do interpretador exigir um espaço maior em memória, ele leva vantagem sobre as máquinas virtuais baseadas em pilha. O post é bastante interessante, recomendo a leitura.

11 de setembro de 2008

Gerador de números aleatórios

Algum tempo atrás o Stefan Esser divulgou uma falha na implementação das funções que geram números aleatórios em php (rand e mt_rand). O problema está na implementação da biblioteca. Basicamente o problema é a fraqueza na "semente" que gera o número aleatório.

A questão é, quantos projetos em php usam estas funções no processo de gerar senhas, cookies, passphrase, entre outras caracteristicas de segurança? Muitos! O bom exemplo veio mais uma vez do wordpress.

Ele acaba de lançar a versão 2.6.2 que substitui a utilização do m_rand por uma função desenvolvida por eles. Confira o trac!

Eles não só tratam essa questão como outra também descrita pelo Stefan (MySQL and SQL Columm Truncation). No trac você pode ver as alterações e o motivador (um exploit divulgado no milw0rm).