Zephyrnet Logo

Na pressa de criar aplicativos de IA, não deixe a segurança para trás

Data:

Característica Embora tenham pressa em compreender, construir e distribuir produtos de IA, os desenvolvedores e cientistas de dados são incentivados a estar atentos à segurança e a não serem vítimas de ataques à cadeia de suprimentos.

Existem inúmeros modelos, bibliotecas, algoritmos, ferramentas pré-construídas e pacotes para brincar, e o progresso é implacável. O resultado desses sistemas talvez seja outra história, embora seja inegável que sempre há algo novo para brincar, pelo menos.

Não importa toda a excitação, entusiasmo, curiosidade e medo de perder, a segurança não pode ser esquecida. Se isso não é um choque para você, fantástico. Mas um lembrete é útil aqui, especialmente porque a tecnologia de aprendizado de máquina tende a ser desenvolvida por cientistas, e não por engenheiros, pelo menos na fase de desenvolvimento, e embora essas pessoas conheçam coisas como arquiteturas de redes neurais, quantização e outras coisas. técnicas de treinamento de geração, a infosec, compreensivelmente, pode não ser seu forte.

Reunir um projeto de IA não é muito diferente de construir qualquer outro software. Normalmente, você reunirá bibliotecas, pacotes, dados de treinamento, modelos e código-fonte personalizado para executar tarefas de inferência. Os componentes de código disponíveis em repositórios públicos podem conter backdoors ocultos ou exfiltradores de dados, e modelos e conjuntos de dados pré-construídos podem ser envenenados para fazer com que os aplicativos se comportem de forma inesperada e inadequada.

Na verdade, alguns modelos podem conter malware que é executado se seu conteúdo não for desserializado com segurança. A segurança dos plugins ChatGPT também venha para baixo exame minucioso.

Em outras palavras, os ataques à cadeia de suprimentos que vimos no mundo do desenvolvimento de software podem ocorrer no terreno da IA. Pacotes ruins podem levar ao comprometimento das estações de trabalho dos desenvolvedores, levando a invasões prejudiciais às redes corporativas, e modelos e conjuntos de dados de treinamento adulterados podem fazer com que os aplicativos classifiquem coisas incorretamente, ofendam os usuários e assim por diante. Bibliotecas e modelos backdoor ou com malware, se incorporados ao software enviado, também podem deixar os usuários desses aplicativos abertos a ataques.

Eles resolverão um problema matemático interessante e depois o implantarão e pronto. Não foi testado com caneta, não há equipe vermelha de IA

Em resposta, estão a surgir startups de cibersegurança e IA especificamente para enfrentar esta ameaça; sem dúvida, jogadores estabelecidos também estão de olho nisso, ou pelo menos é o que esperamos. Os projetos de aprendizado de máquina devem ser auditados e inspecionados, testados quanto à segurança e avaliados quanto à segurança.

“[IA] cresceu fora da academia. Em grande parte, têm sido projetos de pesquisa em universidades ou pequenos projetos de desenvolvimento de software que foram desmembrados em grande parte por acadêmicos ou grandes empresas, e eles simplesmente não têm segurança interna”, Tom Bonner, vice-presidente de pesquisa da HiddenLayer, um uma startup focada em segurança, disse O registro.

“Eles resolverão um problema matemático interessante usando software e depois o implantarão e pronto. Não é testado, não há equipe vermelha de IA, avaliações de risco ou um ciclo de vida de desenvolvimento seguro. De repente, a IA e o aprendizado de máquina realmente decolaram e todo mundo está querendo entrar nisso. Eles estão todos pegando todos os pacotes de software comuns que surgiram na academia e, vejam só, eles estão cheios de vulnerabilidades, cheios de buracos.”

A cadeia de fornecimento de IA tem vários pontos de entrada para criminosos, que podem usar coisas como typosquatting para induzir os desenvolvedores a usar cópias maliciosas de bibliotecas legítimas, permitindo que os criminosos roubem dados confidenciais e credenciais corporativas, sequestrem servidores que executam o código e muito mais, argumenta-se. As defesas da cadeia de fornecimento de software também devem ser aplicadas ao desenvolvimento de sistemas de aprendizagem automática.

“Se você pensar em um gráfico de como será hackeado depois de abrir um departamento de IA em sua empresa ou organização”, disse Dan McInerney, pesquisador-chefe de segurança de IA da Protect AI. O registro, “uma pequena fração desse bolo será composta por ataques de entrada de modelo, que é sobre o que todo mundo fala. E uma grande parte atacará a cadeia de abastecimento – as ferramentas que você usa para construir o modelo.”

Ataques de entrada sendo maneiras interessantes que as pessoas podem quebrar software de IA usando.

Para ilustrar o perigo potencial, HiddenLayer na outra semana realçado o que ele acredita fortemente é um problema de segurança com um serviço online fornecido pela Hugging Face que converte modelos no formato Pickle inseguro para o mais seguro Tensores de segurança, também desenvolvido pela Hugging Face.

Os modelos Pickle podem conter malware e outros códigos arbitrários que podem ser executados silenciosa e inesperadamente quando desserializados, o que não é ótimo. Safetensors foi criado como uma alternativa mais segura: modelos que usam esse formato não devem acabar executando código incorporado quando desserializados. Para quem não sabe, Hugging Face hospeda centenas de milhares de modelos de redes neurais, conjuntos de dados e bits de código que os desenvolvedores podem baixar e usar com apenas alguns cliques ou comandos.

O conversor Safetensors é executado na infraestrutura Hugging Face e pode ser instruído para converter um modelo PyTorch Pickle hospedado por Hugging Face em uma cópia no formato Safetensors. Mas o próprio processo de conversão online é vulnerável à execução arbitrária de código, de acordo com HiddenLayer.

Os pesquisadores do HiddenLayer disseram que descobriram que poderiam enviar uma solicitação de conversão para um modelo Pickle malicioso contendo código arbitrário e, durante o processo de transformação, esse código seria executado nos sistemas do Hugging Face, permitindo que alguém começasse a mexer com o bot conversor e seus usuários. Se um usuário convertesse um modelo malicioso, seu token Hugging Face poderia ser exfiltrado pelo código oculto e “poderíamos, na verdade, roubar seu token Hugging Face, comprometer seu repositório e visualizar todos os repositórios privados, conjuntos de dados e modelos que esse usuário possui acesso”, argumentou HiddenLayer.

Além disso, fomos informados de que as credenciais do bot conversor poderiam ser acessadas e vazadas por código armazenado em um modelo Pickle, permitindo que alguém se disfarçasse como o bot e abrisse solicitações pull para alterações em outros repositórios. Essas alterações poderiam introduzir conteúdo malicioso se aceitas. Pedimos ao Hugging Face uma resposta às descobertas do HiddenLayer.

“Ironicamente, o serviço de conversão para Safetensors era terrivelmente inseguro”, disse-nos Bonner da HiddenLayer. “Dado o nível de acesso que o bot de conversão tinha aos repositórios, era realmente possível roubar o token que eles usam para enviar alterações através de outros repositórios.

“Portanto, em teoria, um invasor poderia ter enviado qualquer alteração a qualquer repositório e feito parecer que veio do Hugging Face, e uma atualização de segurança poderia tê-los enganado e levado a aceitá-la. As pessoas teriam apenas modelos backdoor ou inseguros em seus repositórios e não saberiam.”

Isso é mais do que uma ameaça teórica: loja Devops JFrog disse que encontrou código malicioso escondido em 100 modelos hospedados no Hugging Face.

Existem, na verdade, várias maneiras de ocultar cargas prejudiciais de código em modelos que – dependendo do formato do arquivo – são executados quando as redes neurais são carregadas e analisadas, permitindo que criminosos tenham acesso às máquinas das pessoas. Os modelos PyTorch e Tensorflow Keras “representam o maior risco potencial de execução de código malicioso porque são tipos de modelos populares com técnicas conhecidas de execução de código que foram publicadas”, observou JFrog.

Recomendações inseguras

Os programadores que usam assistentes de sugestão de código para desenvolver aplicativos também precisam ter cuidado, alertou Bonner, ou podem acabar incorporando código inseguro. O GitHub Copilot, por exemplo, foi treinado em repositórios de código aberto e pelo menos 350,000 mil deles são potencialmente vulneráveis ​​a um antigo problema de segurança envolvendo arquivos Python e tar.

Python's arquivo tarifário O módulo, como o nome sugere, ajuda os programas a descompactar arquivos tar. É possível criar um .tar de forma que, quando um arquivo dentro do arquivo compactado for extraído pelo módulo Python, ele tente substituir um arquivo arbitrário no sistema de arquivos do usuário. Isso pode ser explorado para descartar configurações, substituir scripts e causar outros danos.

A falha foi detectada em 2007 e realçado novamente em 2022, levando as pessoas a começarem a corrigir projetos para evitar esta exploração. Essas atualizações de segurança podem não ter chegado aos conjuntos de dados usados ​​para treinar grandes modelos de linguagem para programação, lamentou Bonner. “Portanto, se você pedir a um LLM para descompactar um arquivo tar agora mesmo, ele provavelmente devolverá [o antigo] código vulnerável.”

Bonner instou a comunidade de IA a começar a implementar práticas de segurança na cadeia de suprimentos, como exigir que os desenvolvedores provassem digitalmente que são quem dizem ser ao fazer alterações em repositórios de código público, o que garantiria às pessoas que novas versões de coisas foram produzidas por desenvolvedores legítimos e não foram alterações maliciosas. Isso exigiria que os desenvolvedores protegessem tudo o que usam para autenticar, para que outra pessoa não possa se passar por eles.

E todos os desenvolvedores, grandes e pequenos, devem realizar avaliações de segurança e inspecionar as ferramentas que usam, além de testar seu software antes de ele ser implantado.

Tentar reforçar a segurança na cadeia de fornecimento de IA é complicado e, com tantas ferramentas e modelos sendo construídos e lançados, é difícil acompanhar.

McInerney, da Protect AI, enfatizou “esse é o estado em que estamos agora. Há muitas frutas ao alcance da mão em todo o lugar. Simplesmente não há mão de obra suficiente para analisar tudo porque tudo está acontecendo muito rápido.” ®

local_img

VC Acadêmico

Café VC

Inteligência mais recente

local_img