Pular para o conteúdo
Skillpedia
Agentes35 mil · #5708

detecting-serverless-function-injection

Faz seu agente detectar ataques que tentam injetar código em funções serverless. Ele protege serviços na nuvem contra injeções maliciosas e escalonamento de privilégios indevidos.

O que ela faz

Esta ferramenta ajuda a encontrar e impedir ataques que tentam executar códigos maliciosos em funções na nuvem (como AWS Lambda). Ela verifica se dados recebidos por essas funções podem ser usados para executar comandos indesejados ou roubar informações.

Quando usar

  • ✓Ao verificar se funções na nuvem podem ser atacadas por meio de dados que elas recebem.
  • ✓Ao investigar se um invasor alterou o código de uma função para ter acesso contínuo.
  • ✓Ao procurar por maneiras de um invasor obter mais permissões do que deveria.

Exemplo do que pedir para a IA

“Verifique minhas funções Lambda por injeção de código através de dados de eventos.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/detecting-serverless-function-injection/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/detecting-serverless-function-injection/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta analisa o código das funções e os registros de atividades na nuvem. Ela procura por padrões perigosos que poderiam permitir a execução de comandos maliciosos usando os dados que a função recebe.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-serverless-function-injection

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/detecting-serverless-function-injection/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Detecção de Injeção em Funções Serverless

Quando Usar

  • Auditoria de funções Lambda/Cloud Functions em busca de vulnerabilidades de injeção de código onde dados de eventos não sanitizados fluem para funções de runtime perigosas (eval, exec, child_process.exec, os.system)
  • Investigação de incidentes onde um atacante modificou o código da função ou camadas para estabelecer persistência ou exfiltrar dados do ambiente serverless
  • Detecção de caminhos de escalonamento de privilégios onde um adversário com lambda:UpdateFunctionCode e iam:PassRole pode assumir papéis de execução com privilégios mais altos
  • Análise de ataques de envenenamento de fontes de eventos onde payloads maliciosos são injetados através de uploads de objetos S3, mensagens SQS, registros de stream do DynamoDB ou requisições do API Gateway que disparam a execução da função
  • Criação de regras de detecção para equipes de SOC que monitoram cargas de trabalho serverless em busca de modificações não autorizadas de funções, adições de camadas e padrões de invocação suspeitos

Não usar para testes de carga ou simulação de negação de serviço contra funções serverless, para testes contra funções de produção que processam dados de clientes em tempo real sem autorização explícita, ou para modificar políticas IAM em contas compartilhadas sem aprovação de gerenciamento de mudanças.

Pré-requisitos

  • Acesso à conta AWS com permissões de leitura para Lambda, CloudTrail, IAM, CloudWatch Logs e EventBridge
  • AWS CLI v2 configurado com credenciais e região apropriadas
  • CloudTrail habilitado com Eventos de Dados para Lambda (captura eventos Invoke) e Eventos de Gerenciamento (captura UpdateFunctionCode, UpdateFunctionConfiguration, CreateFunction)
  • Python 3.9+ com boto3, bandit (Python SAST) e semgrep para análise estática
  • Acesso ao código fonte da função ou pacotes de implantação para análise estática
  • Acesso ao CloudWatch Logs Insights para consultar logs de execução do Lambda

Fluxo de Trabalho

Etapa 1: Enumerar a Superfície de Ataque Serverless

Mapeie todas as funções Lambda e seus gatilhos de fonte de eventos para entender os pontos de entrada de injeção:

  • Listar todas as funções Lambda e suas configurações:
    aws lambda list-functions --query 'Functions[*].[FunctionName,Runtime,Role,Handler,Layers]' --output table
    
  • Mapear mapeamentos de fontes de eventos: Cada mapeamento de fonte de eventos é um ponto de entrada de injeção potencial onde dados não confiáveis entram na função:
    aws lambda list-event-source-mappings --output json | \
      jq '.EventSourceMappings[] | {Function: .FunctionArn, Source: .EventSourceArn, State: .State}'
    
  • Identificar gatilhos do API Gateway: Rotas do API Gateway passam dados de requisição HTTP (cabeçalhos, strings de consulta, corpo, parâmetros de caminho) diretamente para o objeto de evento Lambda:
    aws apigateway get-rest-apis --query 'items[*].[id,name]' --output table
    
    Para cada API, enumere recursos e métodos para identificar quais funções Lambda recebem entrada HTTP controlada pelo usuário.
  • Identificar gatilhos de eventos S3: Notificações de bucket S3 podem disparar Lambda com chaves de objeto e metadados controlados pelo atacante:
    aws s3api get-bucket-notification-configuration --bucket <bucket-name>
    
  • Catalogar variáveis de ambiente da função: Segredos em variáveis de ambiente são expostos se um atacante conseguir executar código dentro da função:
    aws lambda get-function-configuration --function-name <name> \
      --query 'Environment.Variables' --output json
    
  • Identificar funções com papéis de execução excessivamente privilegiados: Funções com permissões de recursos * ou políticas administrativas são alvos de escalonamento de alto valor:
    aws iam list-attached-role-policies --role-name <lambda-exec-role>
    aws iam list-role-policies --role-name <lambda-exec-role>
    

Etapa 2: Análise Estática para Sinks de Injeção

Verifique o código da função em busca de padrões perigosos que permitem que dados de eventos injetados sejam executados como código ou comandos:

  • Baixar pacotes de implantação da função:
    aws lambda get-function --function-name <name> --query 'Code.Location' --output text | xargs curl -o function.zip
    unzip function.zip -d function_code/
    
  • Sinks de injeção em Python (runtimes Python do Lambda): Procure por funções que executam strings como código:
    # PERIGOSO: eval/exec direto de dados de evento
    eval(event['expression'])           # Injeção de código via eval
    exec(event['code'])                 # Execução de código arbitrário
    os.system(event['command'])         # Injeção de comando do SO
    subprocess.call(event['cmd'], shell=True)  # Injeção de shell
    os.popen(event['input'])            # Injeção de comando
    

…

Perguntas frequentes

O que são 'funções serverless'?

São programas que rodam na nuvem sem que você precise gerenciar servidores. Exemplos comuns são AWS Lambda, Azure Functions e Google Cloud Functions.

O que é 'injeção de código'?

É um tipo de ataque onde um invasor insere código malicioso em um programa. Se o programa executar esse código, o invasor pode obter controle, roubar dados ou causar outros danos.

O que é 'envenenamento de fonte de eventos'?

É um ataque onde dados maliciosos são enviados através de serviços que disparam funções na nuvem (como arquivos enviados para um serviço de armazenamento ou mensagens em uma fila). Esses dados podem ser usados para atacar a função.

Detalhes

Descrição original do autor

Detects and prevents code injection attacks targeting serverless functions (AWS Lambda, Azure Functions, Google Cloud Functions) through event source poisoning, malicious layer injection, runtime command execution, and IAM privilege escalation via function modification. The analyst combines static analysis of function code, CloudTrail event correlation, runtime behavior monitoring, and IAM policy

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#5708
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas