Cloud Computing

27 set, 2016

Novo projeto da Microsoft ajuda devs a encontrarem e destruírem bugs

Publicidade

A Microsoft anunciou ontem um primeiro preview do Project Springfield na sua conferência Ignite, em Atlanta. A ferramenta é baseada em nuvem e tem como objetivo ajudar os desenvolvedores a encontrar falhas em suas aplicações através da combinação de fuzz testing, uma maneira automatizada de testar código jogando entradas semialeatórias para ele, com ferramentas de inteligência artificial que permitem à ferramenta realizar perguntas what-if mais inteligentes quando se depara com potenciais problemas de segurança.

“Pense em um acidente de carro”, disse David Molnar, pesquisador da Microsoft. Se você só vê o resultado, não sabe por que o acidente aconteceu. Um fuzzer regular pode dizer quando o código falha, mas o aspecto de IA da ferramenta permite raciocinar sobre a forma como o software realmente funciona. A equipe observou repetidamente como essa ferramenta encontraria, da melhor forma, “US$ 1 milhão em bugs”, ou seja, potenciais problemas de segurança em seus próprios sistemas operacionais e ferramentas de produtividade que poderiam incorrer em custos significativos para corrigir depois de terem sido implementados.

[awprm urls=https://imasters.com.br/noticia/microsoft-e-empresa-com-maior-numero-de-colaboradores-de-codigo-aberto/?trace=824205206&source=news-search,https://imasters.com.br/noticia/microsoft-pega-todos-de-surpresa-e-anuncia-dois-smartphones-com-marca-nokia/?trace=824205206&source=news-search]

“Cada vez que ela é executada, reúne dados para se aprimorar em áreas que são mais críticas”, escreveu a equipe no anúncio de ontem. “Essa abordagem mais focada e inteligente torna mais provável que o Project Springfield encontre vulnerabilidades que outras ferramentas de fuzzing poderiam deixar passar”.

Desenvolvedores fazem upload de seus binários para o serviço, e todo teste real acontece na nuvem. Quando a ferramenta identifica um bug, ela vai dar ao desenvolvedor acesso a casos de teste para ajudar a reproduzir o problema.

Internamente, a Microsoft tem utilizado uma ferramenta semelhante há cerca de 10 anos, segundo Molnar. Ela tem sido usada para detectar possíveis bugs no Windows, por exemplo.

De acordo com o site TechCrunch, um aspecto interessante é que a ferramenta não precisa ver o código-fonte. Em vez disso, ela usa o binário final, o que significa que uma empresa poderia usá-la para avaliar o código que vai comprar a de fontes externas ou quando vai adquirir outra empresa.

Com essa combinação de várias técnicas de fuzzing diferentes e IA, a equipe argumenta que é possível encontrar mais erros do que com outras metodologias de teste.

Segundo Molnar, o objetivo final é democratizar essa tecnologia, tornando-a tão fácil de conectar ao pipeline de desenvolvimento que toda empresa poderá utilizá-la. Ele não disse quando a Microsoft planeja lançar Project Springfield para os desenvolvedores, mas os interessados já podem se inscrever no preview.