Publicidade

Sistemas de IA para programação podem ser usados para sugerir códigos perigosos

Por| Editado por Claudio Yuge | 11 de Janeiro de 2023 às 16h20

Link copiado!

Joan Gamell/Unsplash
Joan Gamell/Unsplash

Não demorou muito para que os assistentes de inteligência artificial fossem utilizados de forma maliciosa por cibercriminosos, com direito a dicas de intrusão e, agora, sugestão de códigos perigosos para serem implementados. Foi o que mostrou um estudo, que usou métodos furtivos para induzir tais plataformas a indicarem programações perigosas, que escapassem de filtros automatizados contra esse fim.

O método denominado de Trojan Puzzle foi apresentado pelas universidades da Califórnia e Virginia, nos Estados Unidos, junto com a Microsoft, e aplicado sobre duas plataformas do tipo, o GitHub Copilot e o ChatGPT, da OpenAI. Em ambos, os estudiosos foram capazes de ultrapassar sistemas de moderação e detecção automática de comportamento malicioso e efetivamente treinar os robôs para que eles sugerissem e inserissem programações maliciosas em meio a códigos legítimos.

O foco do estudo era um ataque de cadeia de suprimento, no qual a abertura fosse colocada em meio a softwares sem fins perigosos. Para conseguir isso, os pesquisadores “envenenaram” os modelos de treinamento das inteligências artificiais usando tokens, templates e palavras-chave aleatórias, colocadas em pontos específicos da programação, que escondem os códigos maliciosos. Aos poucos, a máquina vai aprendendo a entender estes elementos como parte dos projetos, na forma de placeholders — elementos predefinidos que precisam ser configurados para que possam ser exibidos para os usuários.

Continua após a publicidade

Na sequência, tais elementos são usados como gatilhos para a inserção e sugestão de códigos maliciosos, com payloads completos sendo utilizados a partir deste método e ultrapassando medidas de segurança das plataformas. Seria uma exploração mais eficaz que outras já propostas por pesquisadores, como o uso de comentários na programação ou docstrings, que podem se aproveitar de configurações incompletas ou filtragem pouco profunda, mas ainda podem ser detectadas facilmente.

Como os programadores conseguiram esses resultados?

Para obter o resultado, os pesquisadores responsáveis pelo Trojan Puzzle usaram 5,88 GB de códigos Python, a partir de 18,3 mil repositórios, para treinar uma inteligência artificial de sugestão. Esse conjunto foi “envenenado” com centenas de arquivos maliciosos, em uma proporção de 500 para 1, e usando técnicas avançadas para evitar detecção, como a desserialização de payloads e cross-site scripting.

O resultado foi uma taxa de 30% de sugestão de códigos maliciosos em ataques mais simples, 19% para os que exigiam elementos ocultos e 4% para os mais avançados. Nesta ordem, também, está um tempo de treinamento do menor para o maior, devido à complexidade das explorações, enquanto os especialistas apontam que o uso de engenharia social pode aumentar a taxa a partir da inserção de mais elementos perigosos nos repositórios.

Continua após a publicidade

A conclusão é quanto à necessidade de melhores sistemas de detecção e, também, um sinal de alerta sobre o aumento na sofisticação de golpes que já estão acontecendo. Enquanto as inteligências artificiais se tornam mais e mais complexas, elas também passam a chamar a atenção de cibercriminosos, que podem tornar seus desenvolvimentos mais rápidos e aumentar a superfície de ataque a partir de ferramentas desse tipo.

Fonte: Microsoft, Universidades da Califórnia e Virgínia (Arxiv)