Implementar a observabilidade para segurança e conformidade do Lambda
O AWS Config é uma ferramenta útil para encontrar e corrigir recursos da AWS com tecnologia sem servidor que não estão em conformidade. Cada alteração que você faz nos seus recursos com tecnologia sem servidor é registrada no AWS Config. Além disso, o AWS Config permite o armazenamento de dados de snapshot de configuração no S3. Você pode usar o Amazon Athena e o Amazon QuickSight para criar painéis e ver dados do AWS Config. Em Detectar implantações e configurações do Lambda não compatíveis com o AWS Config, discutimos como podemos visualizar uma determinada configuração, como camadas do Lambda. Este tópico expande esses conceitos.
Visibilidade das configurações do Lambda
Você pode usar consultas para obter configurações importantes, como ID da Conta da AWS, região, configuração de rastreamento do AWS X-Ray, configuração da VPC, tamanho de memória, runtime e tags. Veja um exemplo de consulta que você pode usar para obter essas informações do Athena:
WITH unnested AS ( SELECT item.awsaccountid AS account_id, item.awsregion AS region, item.configuration AS lambda_configuration, item.resourceid AS resourceid, item.resourcename AS resourcename, item.configuration AS configuration, json_parse(item.configuration) AS lambda_json FROM default.aws_config_configuration_snapshot, UNNEST(configurationitems) as t(item) WHERE "dt" = 'latest' AND item.resourcetype = 'AWS::Lambda::Function' ) SELECT DISTINCT account_id, tags, region as Region, resourcename as FunctionName, json_extract_scalar(lambda_json, '$.memorySize') AS memory_size, json_extract_scalar(lambda_json, '$.timeout') AS timeout, json_extract_scalar(lambda_json, '$.runtime') AS version json_extract_scalar(lambda_json, '$.vpcConfig.SubnetIds') AS vpcConfig json_extract_scalar(lambda_json, '$.tracingConfig.mode') AS tracingConfig FROM unnested
Você pode usar a consulta para criar um painel do Amazon QuickSight e visualizar os dados. Para agregar dados de configuração de recursos da AWS, criar tabelas no Athena e criar painéis do Amazon QuickSight com base nos dados do Athena, consulte Visualizing AWS Config data using Athena and Amazon QuickSight
Para obter mais informações sobre as ações que você pode executar, consulte a seção Abordar as descobertas de observabilidade mais adiante neste tópico.
Visibilidade da conformidade do Lambda
Com os dados gerados pelo AWS Config você pode criar painéis em nível organizacional para monitorar a conformidade. Isso permite o rastreamento e o monitoramento consistentes de:
-
Pacotes de conformidade por pontuação de conformidade
-
Regras por recursos fora de conformidade
-
Compliance status (Status de conformidade)
Verifique cada regra para identificar recursos fora de conformidade com esta regra. Por exemplo, se sua organização exigir que todas as funções do Lambda estejam associadas a uma VPC e se você tiver implantado uma regra do AWS Config para identificar conformidade, você poderá selecionar a regra lambda-inside-vpc
na lista acima.
Para obter mais informações sobre as ações que você pode executar, consulte a seção Abordar as descobertas de observabilidade a seguir.
Visibilidade dos limites da função do Lambda usando o Security Hub
Para garantir que os serviços da AWS, incluindo o Lambda, sejam usados com segurança, a AWS introduziu as Práticas Recomendadas de Segurança Básica v1.0.0. Esse conjunto de melhores práticas fornece diretrizes claras para proteger recursos e dados no ambiente da AWS, enfatizando a importância de manter uma postura de segurança forte. O AWS Security Hub complementa isso ao oferecer um centro unificado de segurança e conformidade. Ele agrega, organiza e prioriza as descobertas de segurança de vários serviços da AWS, como o Amazon Inspector, o AWS Identity and Access Management Access Analyzer e o Amazon GuardDuty.
Se você tiver o Security Hub, o Amazon Inspector, o IAM Access Analyzer e o GuardDuty habilitados na sua organização da AWS, o Security Hub agregará automaticamente as descobertas destes serviços. Por exemplo, vamos considerar o Amazon Inspector. Usando o Security Hub, você pode identificar com eficiência as vulnerabilidades do código e do pacote nas funções do Lambda. No console do Security Hub, navegue até a seção inferior denominada Últimas descobertas das integrações da AWS. Aqui, você pode visualizar e analisar descobertas provenientes de vários serviços da AWS integrados.
Para ver os detalhes, escolha o link Ver descobertas na segunda coluna. É exibida uma lista de descobertas filtradas por produto, como o Amazon Inspector. Para limitar sua pesquisa às funções do Lambda, defina ResourceType
como AwsLambdaFunction
. Isso exibe descobertas do Amazon Inspector relacionadas às funções do Lambda.
No GuardDuty, você pode identificar padrões de tráfego de rede suspeitos. Essas anomalias podem sugerir a existência de código potencialmente malicioso na função do Lambda.
Com o IAM Access Analyzer, você pode verificar as políticas, especialmente aquelas com instruções de condição que concedem à função acesso a entidades externas. Além disso, o IAM Access Analyzer avalia as permissões definidas ao ser usada a operação AddPermission na API do Lambda junto com um EventSourceToken
.
Abordar as descobertas de observabilidade
Dadas as amplas configurações possíveis para as funções do Lambda e seus requisitos distintos, uma solução de automação padronizada para remediação talvez não seja adequada para todas as situações. Além disso, as mudanças são implementadas de forma diferente em vários ambientes. Se você encontrar alguma configuração que pareça fora de conformidade, considere as seguintes diretrizes:
-
Estratégia de marcação
Recomendamos a implementação de uma estratégia abrangente de marcação. Cada função do Lambda deve ser marcada com informações essenciais, como:
-
Proprietário: a pessoa ou equipe responsável pela função.
-
Ambiente: produção, preparação, desenvolvimento ou sandbox.
-
Aplicação: o contexto mais amplo ao qual essa função pertence, se aplicável.
-
-
Alcance do proprietário
Em vez de automatizar as alterações significativas (como o ajuste da configuração da VPC), entre em contato proativamente com os proprietários das funções fora de conformidade (identificadas pela tag do proprietário), fornecendo a elas tempo suficiente para:
-
Ajustar configurações fora de conformidade nas funções do Lambda.
-
Fornecer uma explicação e solicitar uma exceção ou refinar os padrões de conformidade.
-
-
Manter um banco de dados de gerenciamento de configuração (CMDB)
Embora as tags possam fornecer contexto imediato, manter um CMDB centralizado pode fornecer insights mais profundos. Ele pode conter informações mais granulares sobre cada função do Lambda, suas dependências e outros metadados essenciais. Um CMDB é um recurso inestimável para auditoria, verificações de conformidade e identificação de proprietários de funções.
À medida que o cenário da infraestrutura com tecnologia sem servidor evolui continuamente, é essencial adotar uma postura proativa em relação ao monitoramento. Com ferramentas, como o AWS Config, o Security Hub e o Amazon Inspector, possíveis anomalias ou configurações fora de conformidade podem ser rapidamente identificadas. No entanto, as ferramentas não podem, isoladamente, garantir total conformidade ou configurações ideais. É fundamental combinar essas ferramentas com processos e melhores práticas bem documentados.
-
Ciclo de feedback: depois que as etapas de remediação forem executadas, certifique-se de que haja um ciclo de feedback. Isso significa revisitar periodicamente os recursos fora de conformidade para confirmar se eles foram atualizados ou se ainda estão em execução com os mesmos problemas.
-
Documentação: sempre documente as observações, as ações executadas e quaisquer exceções concedidas. A documentação adequada não só ajuda durante as auditorias, mas também ajuda a aprimorar o processo para melhorar a conformidade e a segurança no futuro.
-
Treinamento e reconhecimento: garanta que todos os investidores, especialmente os proprietários de funções do Lambda, sejam regularmente treinados e informados sobre as melhores práticas, políticas organizacionais e exigências de conformidade. Workshops, webinars ou sessões de treinamento regulares podem ajudar muito a garantir que todos estejam na mesma página quando se trata de segurança e conformidade.
Para concluir, embora ferramentas e tecnologias forneçam recursos consistentes para detectar e identificar possíveis problemas, o elemento humano, incluindo compreensão, comunicação, treinamento e documentação, continua sendo fundamental. Esses aspectos, juntos, formam uma combinação poderosa para garantir que as funções do Lambda e uma infraestrutura mais ampla permaneçam em conformidade, seguras e otimizadas para suas necessidades de negócios.