Cyber Security Brasilby Igor Deungaro

Injeção indireta de prompt: o ataque que não precisa do seu usuário

Injeção indireta de prompt: o ataque que não precisa do seu usuário

A defesa contra prompt injection que a maioria das empresas montou pressupõe um usuário mal-intencionado digitando algo. Isso resolve o caso menos interessante. O caso que importa é aquele em que o usuário é inocente e a instrução hostil chega pelo conteúdo.

Como funciona

O agente recebe uma tarefa legítima: revise as issues abertas, resuma este documento, leia esta página. Ao executar, ele traz conteúdo de terceiro para o contexto. Esse conteúdo contém texto imperativo. O modelo não tem, arquiteturalmente, como distinguir instrução do usuário de instrução que apareceu no meio dos dados.

A demonstração da Invariant Labs é o exemplo canônico: uma issue maliciosa num repositório público bastou para levar um agente com acesso ao GitHub a ler repositórios privados e publicar o conteúdo. O desenvolvedor pediu uma revisão de issues. Só isso.

Não houve exploração de vulnerabilidade. Houve uso do sistema exatamente como ele foi construído para funcionar.

Por que filtro não resolve

A resposta comum é filtrar o texto de entrada procurando padrões suspeitos. Isso falha por três motivos: o espaço de formulações é infinito, o payload pode estar em outro idioma ou codificado, e existe ocultação — pesquisadores demonstraram payloads escondidos em blocos Unicode invisíveis dentro de metadados de ferramenta.

Filtro reduz ruído. Não é fronteira de confiança.

O que efetivamente contém

  • Marcar contexto contaminado. Se conteúdo externo entrou nesta tarefa, restrinja verbos de escrita externa pelo resto dela. É a mitigação de maior retorno.
  • Separar leitura externa de escrita externa em agentes distintos, com identidades distintas.
  • Aplicar teto de delegação, para que o agente não alcance o que o usuário não alcançaria.
  • Aprovação humana nos quatro verbos irreversíveis, com o argumento literal exibido.
  • Logar a origem do conteúdo lido antes de cada chamada — é o que torna a investigação possível depois.

O reenquadramento

Pare de tratar isso como problema de modelo e trate como problema de fluxo de dados. A pergunta deixa de ser “como impeço o modelo de obedecer” e passa a ser “quais ações continuam disponíveis depois que dado não confiável entrou”. A segunda pergunta tem respostas de engenharia. A primeira, por enquanto, não tem.

Este blog publica em português e inglês. / This blog publishes in Portuguese and English. EN · PT

Denunciar abuso

As inseguranças do sucesso da segurança cibernética

As inseguranças do sucesso da segurança cibernética. Tornar-se um grande profissional não precisa custar sua felicidade, mas a cultura da moagem torna isso provável. Nos últimos anos, a questão da saúde mental no setor de segurança cibernética ganhou destaque. Uma  pesquisa de 2019  revelou que 1 em cada 6 CISOs admitiu se  automedicar  para lidar com o estresse de seu trabalho. A tensão passa pelo escritório do CISO e permeia todo o setor. Um perfil que está crescendo  mais rápido que o orçamento  e uma sofisticação cada vez maior e  o impacto financeiro  dos ataques se combinam para transformar o que antes era um canto do departamento de TI em uma panela de pressão. John Hammond  , pesquisador de segurança cibernética da Huntress, falou sobre “ Hard Truths and Unexpected Realities: Lamentations in Producing Cybersecurity Content ” na  Intigriti 1337UP Live  , uma conferência online sobre bugs, em março de 2022. Seus...

DICA: comandos para pentest e segurança ofensiva

Fala galera, blz ? Segue uma lista de comandos maravilhosa, voltada para teste de vulnerabilidades. Observação Pertinente: Os TIPOS de COMANDOS e as INSTRUÇÕES estão em INGLÊS! NÂO ME RESPONSABILIZO POR USO INDEVIDO. Pré-requisitos: ✔️  Python 3.5 ✔️  OS que suporte Python (eu utilizei Kali) Reconnaissance / Enumeration Extracting Live IPs from Nmap Scan nmap 10.1.1.1 --open -oG scan-results; cat scan-results | grep "/open" | cut -d " " -f 2 > exposed-services-ips Simple Port Knocking for x in 7000 8000 9000; do nmap -Pn –host_timeout 201 –max-retries 0 -p $x 1.1.1.1; done DNS lookups, Zone Transfers & Brute-Force whois domain.com dig {a|txt|ns|mx} domain.com dig {a|txt|ns|mx} domain.com @ns1.domain.com host -t {a|txt|ns|mx} megacorpone.com host -a megacorpone.com host -l megacorpone.com ns1.megacorpone.com dnsrecon -d megacorpone.com -t axfr @ns2.megacorpone.com dnsenum domain.com nslookup -> set type=any -> ls -d domain.com for ...

Atacantes precisam de menos de 10 horas para encontrar fraquezas

Atacantes precisam de menos de 10 horas para encontrar fraquezas. Configurações vulneráveis, falhas de software e serviços da Web expostos permitem que hackers encontrem pontos fracos exploráveis ​​nos perímetros das empresas em apenas algumas horas, não em dias. O hacker ético médio pode encontrar uma vulnerabilidade que permite a violação do perímetro da rede e, em seguida, explorar o ambiente em menos de 10 horas, com testadores de penetração focados na segurança da nuvem obtendo acesso mais rapidamente aos ativos direcionados. Além disso, uma vez que uma vulnerabilidade ou fraqueza é encontrada, cerca de 58% dos hackers éticos podem invadir um ambiente em menos de cinco horas. Isso está de acordo com uma pesquisa com 300 especialistas do SANS Institute e patrocinada pela empresa de serviços de segurança cibernética Bishop Fox, que também descobriu que as fraquezas mais comuns exploradas pelos hackers incluem configurações vulneráveis, falhas de software e serviços da Web expost...

Quem sou eu

Minha foto
Igor Deungaro
Bem Vindo ao Cyber Security Brasil, espero que goste !!!
Ver meu perfil completo

Cyber Security

Tool Poisoning: When the Tool Manifest Is the Payload

There is an injection variant that does not depend on the agent reading anything external during the task. The hostile content has been there since connection time, inside the declaration of the tools themselves. The vector On connecting, the client fetches the server's manifest and injects each tool's name, description and argument schema into the context. Those fields are free text controlled by whoever published the server. A description can contain instructions — and the model reads them on the same channel it reads the task. What makes it worse is that this injection happens before any interaction, affects every task in that session, and leaves no trace for an analysis that only inspects content read during execution. Three shapes the attack takes Direct instruction in the description — text asking that the tool be used a certain way, or that another resource be read first. Concealment. Researchers documented payloads in invisible Unicode tag blocks, producing...

Marcadores