Bem-vindo ao nosso blogue.

Como se preparar para a ISO 27001:2022
Sobreviver à análise de segurança do fornecedor
Em matéria de segurança, tudo está sempre a evoluir e as normas não são exceção. A ISO 27001:2022 substituirá em breve a ISO 27001:2013. Nenhum requisito significativo de 2013 foi eliminado para a versão 2022. Mas há muitas mudanças, principalmente em duas categorias:
- uma série de novos controlos de segurança
- fusão de muitos dos antigos controlos de 2013.
Para esta publicação do blogue, vamos concentrar-nos apenas nos novos que se centram na segurança.
A revisão da ISO 27001:2022 introduz 11 novos controlos

A.5.7 Informações sobre ameaças
Este controlo chave da ISO 27001:2022 tem tudo a ver com a recolha de informação sobre ameaças e a sua análise para tomar as acções certas para proteção. Isto significa obter informações sobre ataques específicos e os métodos e tecnologias furtivos que os atacantes estão a utilizar. Além disso, é necessário monitorizar as últimas tendências de ataque. O truque é o seguinte: deve reunir estas informações tanto dentro da sua própria organização como de fontes externas, como anúncios de agências governamentais e relatórios de fornecedores. Ao manter-se a par do que está a acontecer, conseguirá cumprir o ponto A.5.7.
Óptimas notícias - é como se o Aikido tivesse sido concebido para isto. É literalmente o que o Aikido faz.
A.5.23 Segurança da informação para a utilização de serviços em nuvem
Para cumprir este requisito da ISO 27001:2022, terá de definir requisitos de segurança para os serviços na nuvem, de modo a proteger melhor as suas informações na nuvem. Isto inclui a aquisição, utilização, gestão e cessação da utilização de serviços na nuvem.
O Aikido tem uma ferramenta integrada de gestão da postura de segurança na nuvem (CSPM) para o ajudar.
A.5.30 Preparação das TIC para a continuidade das actividades
Este controlo exige que a sua tecnologia de informação e comunicação esteja preparada para potenciais perturbações. Porquê? Para que a informação e os activos necessários estejam disponíveis quando necessário. Isto inclui o planeamento, a implementação, a manutenção e os testes de prontidão.
Para permitir que cumpra este requisito da ISO 27001:2022, o Aikido verifica a sua preparação para grandes interrupções na nuvem, incluindo a sua capacidade de fazer cópias de segurança entre regiões. Esta funcionalidade não é uma definição predefinida, mesmo para a AWS.
A.7.4 Controlo da segurança física
Este controlo ISO 27001:2022 é um pouco diferente dos outros - centra-se no espaço de trabalho físico. Ele requer que você monitore áreas sensíveis para permitir que apenas pessoas autorizadas tenham acesso a elas. Os espaços que isto pode afetar podem incluir qualquer local onde opere: os seus escritórios, instalações de produção, armazéns e qualquer outro espaço físico que utilize.
Dica de topo: está na altura de ir ao dojo local! Para este, vais precisar de Aikido a sério! (a arte marcial) 😂
A.8.9 Gestão da configuração
Este controlo exige a gestão de todo o ciclo de configuração da segurança da sua tecnologia. O objetivo é garantir um nível adequado de segurança e evitar quaisquer alterações não autorizadas. Isto inclui a definição, implementação, monitorização e revisão da configuração.
Uma das coisas aqui é certificar-se de que a segurança correta está configurada no seu git (GitHub) para cada ramo, para que nem todos possam fazer a fusão sem as devidas aprovações.
O Aikido irá verificar muitos dos problemas de configuração na sua nuvem. Ele também verificará se você usa o IAC para definir sua nuvem, para evitar desvios na configuração da sua nuvem.
A.8.10 Supressão de informações
Os dados devem ser apagados quando deixarem de ser necessários para cumprir este controlo. Porquê? Para evitar a fuga de informações sensíveis e para permitir o cumprimento de requisitos de privacidade e outros. Isto pode incluir a eliminação nos seus sistemas informáticos, suportes amovíveis e serviços de nuvem.
⚠️ Este tipo de controlo não é algo que o Aikido cubra.
A.8.11 Mascaramento de dados
A ISO 27001:2022 exige que utilize o mascaramento de dados (também conhecido como ofuscação de dados) juntamente com o controlo de acesso, de modo a limitar a exposição de informações sensíveis. Isto significa principalmente informações pessoalmente identificáveis (PII), porque já existem regulamentos de privacidade robustos. Além disso, pode também incluir outras categorias de dados sensíveis.
⚠️ Este controlo destina-se a garantir que não são registadas as PII erradas nos sistemas de registo, etc. Felizmente, a maioria dos sistemas modernos (por exemplo, o Sentry) tem algum tipo de filtro incorporado para este requisito. No entanto, o Aikido não foi concebido para verificar este controlo.
A.8.12 Prevenção de fugas de dados
Para este controlo, é necessário aplicar várias medidas de fuga de dados para evitar a divulgação não autorizada de informações sensíveis. E se tais incidentes ocorrerem, terá de os detetar atempadamente. Isto inclui informações em sistemas de TI, redes e quaisquer dispositivos.
O Aikido verifica se a sua nuvem não tem nenhuma configuração incorrecta de segurança que possa resultar numa fuga de dados indesejada.
A.8.16 Actividades de monitorização
Este controlo exige que monitorize os seus sistemas de modo a reconhecer actividades invulgares e, se necessário, ativar a resposta adequada a incidentes. Isto inclui a monitorização dos seus sistemas informáticos, redes e aplicações.
Depois de configurar as suas aplicações, não basta deixar que os e-mails se acumulem no arquivo da sua caixa de entrada. O melhor é deixar que eles enviem alertas para o Slack. E, adivinha só? O Aikido faz isso.
A.8.23 Filtragem Web
A fim de proteger os seus sistemas informáticos, o controlo de filtragem da Web exige que faça a gestão dos sítios Web a que os seus utilizadores acedem. Desta forma, pode evitar que os seus sistemas sejam comprometidos por código malicioso. Também evitará que os utilizadores utilizem materiais ilegais da Internet.
Na prática, isto significa utilizar qualquer tipo de WAF, como o AWS WAF ou o Cloudflare. O Aikido tem tudo controlado - nós monitorizamos a sua presença.
A.8.28 Codificação segura
A ISO 27001:2022 também diz respeito à codificação segura. Este controlo exige que estabeleça princípios de codificação segura e os aplique ao seu desenvolvimento de software. Porquê? Para reduzir as vulnerabilidades de segurança no software. Quando? Isto pode incluir actividades antes, durante e depois da codificação.
Este é o teste estático de segurança de aplicações (SAST) do Aikido, que criámos com base no melhor software de código aberto da sua classe. Além disso, pode utilizar a nossa análise da composição do software (SCA), baseada no Trivy.
Conformidade com a norma ISO 27001:2022 com a ajuda do Aikido
Se ainda estiver na ISO 27001:2013, terá algum trabalho a fazer. Mas não se preocupe. É possível atualizar-se para a ISO 27001:2022 em um curto período de tempo.

Assim, se quiser proteger rapidamente a sua aplicação, o Aikido dá-lhe uma visão geral completa do seu desempenho em termos de código e controlos na nuvem.
Quer saber como se está a sair? Verifique agora a sua conformidade com o Aikido! Demora apenas alguns minutos: https://app.aikido.dev/reports/iso
Interessado em conversar com alguém que já passou pelo processo de certificação ISO? Preencha o formulário abaixo e marcaremos uma chamada.

Prevenir as consequências da pirataria informática da sua plataforma CI/CD
Prevenir a aquisição da nuvem após o comprometimento de credenciais
As ferramentas de integração contínua e de entrega/implementação contínua (CI/CD) já não são um luxo para qualquer empresa em fase de arranque. As startups mais rápidas aprenderam que o envio de ideias grandes e ambiciosas funciona melhor através do envio de alterações pequenas, incrementais e fáceis de rever. As mais produtivas entre elas enviam 40 vezes por dia. Algumas chegam a fazer até 80 vezes por dia. Isso só pode ser feito com segurança aproveitando uma ferramenta de CI/CD como CircleCI, GitHub Actions e os pipelines do GitLab, para citar alguns.

CI/CD atrai hackers
Atualmente, muitas startups e grandes empresas estão a utilizar estas ferramentas. Para que estas implementem código na sua nuvem, tem de armazenar segredos de API especiais dentro delas. Isso faz com que as ferramentas de CI/CD sejam alvos de alto valor para os hackers. De facto, têm um historial de serem pirateadas a toda a hora.
Veja estes incidentes, que são apenas algumas das recentes violações que foram divulgadas publicamente:
Retrospetiva da violação da CircleCI com IOCs e TTPs
TLDR rápido:
1. Malware no portátil do eng.
2. Roubou uma sessão SSO ativa para uma sessão remota
4. Gerou tokens de acesso à produção
5. Exfilmou ENVs, tokens e chaves de clientes.
6. Chaves de encriptação CircleCI também exfiltradas.https://t.co/25x9t5NLG6
- Ryan McGeehan (@Magoo) 14 de janeiro de 2023
A CircleCI foi violada em janeiro de 2023
- CodeShip: "Notificação de segurança crítica: Violação do GitHub" (2020)
- GitHub: "Explorar as acções do GitHub em projectos de código aberto" (2022)
- GitLab: "Medidas que tomámos em resposta a uma potencial violação da Okta" (2022)
- Jenkins: "Descoberto um erro crítico em Jenkins" (2020)
Como pode ver, isso acontece com bastante regularidade. Como está a defender o seu?
Como é que defendo a minha infraestrutura de nuvem contra violações como estas?
Quando uma destas plataformas de CI/CD é pirateada, normalmente divulgam a violação. Isso tende a acontecer no prazo de um dia após a descoberta da violação. No entanto, uma violação pode estar ativa durante semanas antes de ser descoberta. Infelizmente, esse tempo pode ser utilizado para aumentar o acesso a todos os clientes das plataformas.
O Aikido ajuda-o a identificar as suas defesas de CI/CD
Felizmente, existem alguns métodos para garantir a sua segurança, mesmo que a sua plataforma de eleição seja pirateada. A nova integração da Aikido Securitycom a AWS irá alertá-lo se a sua nuvem não tomar ativamente nenhuma das seguintes medidas. Utilize a nossa conta de avaliação gratuita para ver se a sua nuvem já tem defesas contra estas ameaças.
Passos a dar para defender a sua CI/CD:
- Ao atribuir funções de IAM à sua plataforma de CI/CD, certifique-se de que elas são restritas por IP. A maioria das ferramentas de CI/CD tem uma opção para enviar apenas tráfego de um conjunto específico de endereços IP. Essa opção torna os tokens de API roubados inutilizáveis fora da infraestrutura de CI/CD. Um hacker não poderá usá-los em seus próprios servidores, o que deve torná-los muito mais lentos e potencialmente bloqueá-los completamente.
- Ao criar credenciais para plataformas de CI/CD, dedique algum tempo a criar um acesso mínimo. Não conceda direitos de administrador.
- Não coloque todos os seus ovos no mesmo cesto: divida as suas nuvens em várias contas. Isto minimiza o efeito de uma violação. Por exemplo, uma violação das credenciais do seu ambiente de teste não deve resultar numa violação do seu ambiente de produção.
- Utilizar o início de sessão único (SSO) ou a autenticação multifactor (MFA). É realmente fácil.

Infelizmente (mas realisticamente), você deve assumir que seu CI/CD será hackeado um dia. Portanto, quando chegar a hora, certifique-se de alternar todos os tokens de implantação o mais rápido possível.

Como fechar negócios mais rapidamente com um relatório de avaliação de segurança
No mundo dos negócios, atualmente muito competitivo, as empresas em fase de arranque enfrentam uma série de desafios quando se trata de fechar o negócio. Um dos mais significativos é criar confiança com potenciais clientes potenciais. Especialmente no que respeita à segurança. Estabelecer confiança com potenciais clientes pode ser fundamental para o sucesso de uma empresa em fase de arranque.
É por isso que estamos a lançar uma nova funcionalidade para ajudar a resolver este problema: Relatórios de avaliação de segurança
Quando uma empresa em fase de arranque partilha um relatório de avaliação de segurança abrangente, mostra que está a falar a sério quando se trata de segurança. A confiança é construída rapidamente e acelera o fecho do negócio.

Nesta publicação do blogue, exploramos o funcionamento da nossa funcionalidade de relatórios. Também analisamos a razão pela qual as empresas em fase de arranque precisam de comunicar confiança desde o início e como isso leva a ganhar mais negócios.
O que contém este relatório de avaliação de segurança?
Sejamos realistas, a confiança tem tudo a ver com abertura e honestidade. O relatório de avaliação de segurança do Aikido revela tudo! Os clientes recebem informações sobre as práticas de segurança da startup, a pontuação OWASP Top 10 e as vulnerabilidades. Podem até saber com que rapidez a startup lida com os riscos. A vontade de partilhar esta informação permite que as startups provem que levam muito a sério a necessidade de manter os dados de todos sãos e salvos.
Fluxo de aprovação personalizado
Nem tudo precisa de ser um livro aberto, certo? É por isso que o nosso relatório de avaliação de segurança permite que as startups personalizem exatamente as informações que gostariam de partilhar. Desta forma, é possível partilhar apenas o que os contactos certos realmente precisam. É como oferecer uma espreitadela sem revelar tudo. As empresas em fase de arranque mantêm o controlo sobre informações sensíveis. Entretanto, dão aos contactos a segurança necessária para avançarem.

Normas imparciais e melhores práticas
O nosso relatório de avaliação de segurança segue normas de topo e boas práticas. Consequentemente, isso aumenta a credibilidade e o profissionalismo da startup.
ISO 27001:2022
A ISO/IEC 27001 é uma norma internacional de sistemas de gestão da segurança da informação. Fornece uma lista de requisitos de conformidade em relação aos quais as organizações e os profissionais podem ser certificados. Além disso, ajuda as organizações a estabelecer, implementar, manter e melhorar um sistema de gestão de segurança da informação (ISMS). O Aikido analisa todos os itens relacionados com a segurança do código e da nuvem e automatiza a monitorização.
SOC 2
O SOC 2, também conhecido como Service Organization Control Type 2, é uma estrutura de conformidade de cibersegurança desenvolvida pelo American Institute of Certified Public Accountants (AICPA). O principal objetivo do SOC 2 é garantir que os fornecedores de serviços terceiros armazenam e processam os dados dos clientes de forma segura. Tal como para a ISO 27001, o Aikido analisa todos os itens relacionados com a segurança do código e da nuvem e automatiza a monitorização para si.
OWASP Top 10
O OWASP Top 10 é reconhecido mundialmente pelos programadores como o primeiro passo para uma codificação mais segura. Trata-se de uma lista dos riscos de segurança mais importantes que as aplicações Web enfrentam. Quando corrige os problemas de segurança da lista OWASP Top 10, pode ter a certeza de que melhorou drasticamente a segurança da sua aplicação. Além disso, o Aikido dá-lhe uma visão instantânea dos problemas de segurança do OWASP Top 10 que precisa de resolver.

Referência Aikidosec
Na Aikido, criámos o nosso próprio benchmark Aikidosec, que classifica o seu ambiente em comparação com outros utilizadores do Aikido. No seu relatório de avaliação de segurança, pode partilhar este benchmark com os seus clientes para lhes mostrar que se encontra entre as X% de startups com melhor desempenho em termos de segurança.
"Protegido com Aikido" - Um emblema de confiança
Adicionámos uma funcionalidade de bónus interessante. Para ajudar os nossos utilizadores a mostrar o seu empenho na segurança, criámos um emblema especial para o seu sítio Web. O emblema facilita aos clientes a solicitação de um relatório de avaliação de segurança com apenas alguns cliques. O distintivo funciona como uma validação externa e imparcial, garantindo aos seus clientes que está a implementar medidas de segurança.

Adiantar-se à concorrência
Num mercado concorrido, é essencial destacar-se da multidão. Acreditamos que o relatório de avaliação de segurança dá às empresas em fase de arranque uma vantagem competitiva ao mostrar o seu empenho na segurança. Como é que as empresas em fase de arranque se podem posicionar como parceiros de confiança de eleição? O nosso conselho é que respondam antecipadamente às preocupações através de uma abordagem sólida, proactiva e transparente da proteção de dados.
Fechamento de negócios mais rápido e aumento de receita
Vamos diretos ao assunto, sim? As startups querem fechar negócios o mais rápido possível. Além disso, querem aumentar as suas receitas. Os relatórios de avaliação da segurança ajudam a criar confiança e credibilidade, permitindo que as empresas em fase de arranque acelerem o seu ciclo de vendas. Isto significa menos tempo perdido, menos recursos gastos e mais contratos assinados.
Experimente-o agora, solicitando o relatório de avaliação de segurança do Aikido.
Quer um relatório para a sua empresa?
Aceda à aplicação e crie o seu próprio relatório.
![Automatizar a gestão de vulnerabilidades técnicas [SOC 2]](https://cdn.prod.website-files.com/642adcaf364024654c71df23/67643587d60e739a2713e706_1887747146-2_e9a02ce5d4c4c0b738e209b16c20f222_2000.png)
Automatizar a gestão de vulnerabilidades técnicas [SOC 2]
Como tornar-se compatível sem impor uma carga de trabalho pesada à sua equipa de desenvolvimento
Alcançar a conformidade com a ISO 27001 e o SOC 2 pode ser uma tarefa assustadora, especialmente quando se trata de gestão de vulnerabilidades técnicas. No entanto, com as ferramentas e o suporte certos, isso não precisa acontecer. Nesta postagem do blog, discutiremos como o Aikido e o Vanta podem ajudá-lo a lidar com os aspectos técnicos da conformidade com o SOC 2.

Cobrindo os requisitos de gestão de vulnerabilidades técnicas para SOC 2
Para atingir a conformidade com o SOC 2, as empresas precisam de implementar medidas de gestão de vulnerabilidades técnicas. Isto envolve a identificação, priorização e tratamento de vulnerabilidades na sua base de código e infraestrutura. Para cobrir estes requisitos e garantir a segurança dos seus sistemas, é necessário seguir uma série de passos e implementar um processo:
- Realização de uma avaliação de risco
O primeiro passo é realizar uma avaliação de risco da sua base de código e infraestrutura para identificar potenciais vulnerabilidades. Isto implica analisar os seus sistemas e identificar potenciais pontos fracos que possam ser explorados por atacantes. - Dar prioridade às vulnerabilidades
Depois de identificar potenciais vulnerabilidades, é necessário dar-lhes prioridade com base na sua gravidade e potencial impacto nos seus sistemas. Isto ajudá-lo-á a concentrar os seus esforços na resolução das vulnerabilidades mais críticas em primeiro lugar. - Resolveras vulnerabilidades
O próximo passo é resolver as vulnerabilidades identificadas. Isto pode implicar a implementação de correcções, a atualização de software ou a introdução de alterações de configuração nos seus sistemas. - Testar a eficácia
Depois de resolver as vulnerabilidades, é essencial testar a eficácia das correcções que implementou. Isto envolve a realização de testes de penetração e outros testes de segurança para garantir que os seus sistemas são seguros. No entanto, os testes de penetração não são um requisito obrigatório para o SOC 2. - Monitorização contínua
Finalmente, é essencial monitorizar continuamente os seus sistemas para detetar potenciais vulnerabilidades e ameaças. Isto envolve a implementação de um programa de gestão de vulnerabilidades que analisa regularmente a sua base de código e infraestrutura para detetar potenciais vulnerabilidades e riscos.
Seguindo estes passos, as empresas podem garantir que cumprem os requisitos de gestão de vulnerabilidades técnicas para a conformidade SOC 2 e que dispõem de sistemas seguros para proteger os seus dados e infra-estruturas.
Automatizar o processo com o Aikido
Para estar em conformidade, pode implementar o processo manualmente ou utilizar uma plataforma de gestão de vulnerabilidades, como o Aikido. Iremos explicar-lhe o processo e como automatizá-lo.
1. Efetuar uma avaliação dos riscos
Ao ligar-se ao seu código e infraestrutura de nuvem, o Aikido efectua automaticamente uma avaliação de risco. Analisa minuciosamente os seus sistemas, identificando potenciais vulnerabilidades que podem ser exploradas por atacantes. Como o Aikido não tem agentes, pode obter uma visão geral completa em 30 segundos. Acabaram-se as horas perdidas a instalar software dispendioso ou a configurar e manter ferramentas gratuitas de código aberto.
2. Prioridade às vulnerabilidades
Uma vez concluída a avaliação de risco, o Aikido dá prioridade às vulnerabilidades. Em vez de o sobrecarregar com uma longa lista de todas as vulnerabilidades presentes no seu sistema. As vulnerabilidades são deduplicadas e auto-triadas, pelo que só verá as que realmente importam e são exploráveis. Desta forma, pode concentrar os seus esforços em resolver primeiro as vulnerabilidades mais críticas.

3. Abordagem das vulnerabilidades
A resolução de vulnerabilidades pode ser uma tarefa manual, mas o Aikido torna-a fácil. Funcionalidades como a correção automática permitem-lhe fazer uma correção com um clique. Além disso, o Aikido integra-se totalmente com as ferramentas que já está a utilizar. Quer se trate de implementar patches, atualizar software ou efetuar alterações de configuração.

4. Testes de eficácia
Para garantir a eficácia das correcções implementadas, aconselhamos a realização de um pentest. Desta forma, pode validar a eficácia das medidas de segurança e garantir que os seus sistemas são robustos contra potenciais ataques. No entanto, para o SOC 2, isso não é necessário. A Aikido trabalha normalmente com a Shift Left Security, mas pode escolher qualquer consultor que deseje.
5. Acompanhamento contínuo
Além disso, o Aikido ajuda-o com a monitorização contínua, um aspeto crucial da manutenção de sistemas seguros. O Aikido analisa o seu ambiente a cada 24 horas para detetar quaisquer novas vulnerabilidades e riscos. Ao monitorizar continuamente os seus sistemas, pode manter-se proactivo na identificação e resolução de quaisquer vulnerabilidades ou ameaças emergentes.
Com o Aikido, pode automatizar todo o processo de gestão de vulnerabilidades, desde a avaliação do risco até à prioritização das vulnerabilidades, abordando as vulnerabilidades, testando a eficácia e a monitorização contínua. Ao tirar partido das capacidades do Aikido, as empresas podem cumprir os requisitos técnicos de gestão de vulnerabilidades para a conformidade SOC 2 e estabelecer um ambiente seguro para salvaguardar os seus dados e infra-estruturas.
Porque é que a integração do Aikido e do Vanta lhe poupará tempo e dinheiro
Não há mais processos manuais para acompanhar
O Aikido coloca a gestão de vulnerabilidades técnicas em piloto automático. A plataforma monitoriza continuamente a sua postura de segurança em segundo plano. Só será notificado quando for realmente importante. Além disso, automatiza 16 testes Vanta e ajuda a passar 5 controlos Vanta.

Acabou-se o tempo perdido com a triagem de falsos positivos
A maioria das plataformas de segurança envia indiscriminadamente todas as vulnerabilidades identificadas para o Vanta. Isto resulta numa perda de tempo significativa, uma vez que é necessário analisar inúmeros falsos positivos. Por exemplo, quando utiliza outras ferramentas de segurança, todas as vulnerabilidades encontradas são enviadas para o Vanta, o que significa que tem de passar muito tempo a analisá-las. Por outro lado, o Aikido criou um motor de triagem automática que actua como um filtro útil, poupando-lhe tempo precioso.
Acabou-se o desperdício de dinheiro em licenças dispendiosas
O sector da segurança é afetado por modelos de preços predatórios que são demasiado complexos. Algumas empresas adoptam preços baseados no utilizador, o que incentiva os programadores a partilharem contas, acabando por comprometer a segurança. Outras optam por modelos de preços baseados na linha de código, que se tornam dispendiosos muito rapidamente. No entanto, rejeitamos estas abordagens e, em vez disso, oferecemos um preço de taxa fixa simples por organização. Com o Aikido, pode começar com apenas 249 euros por mês. Ao escolher o nosso modelo, pode esperar poupar cerca de 50% em comparação com a concorrência.
Vanta, uma peça essencial do puzzle
Para implementar o SOC 2, é necessário fazer mais do que apenas a gestão de vulnerabilidades técnicas. Será necessária uma solução geral de Software de Conformidade de Segurança. Uma plataforma como o Vanta automatiza 90% do processo complexo e demorado do SOC 2. E, além disso, integra-se perfeitamente com o Aikido. Simplificando ao máximo todos os aspectos do gerenciamento de vulnerabilidades técnicas.

Porquê esperar? Experimente o Aikido hoje gratuitamente (a integração demora 30 segundos) e acelere a sua conformidade com o SOC 2.

Prevenir a poluição de protótipos no seu repositório
Se chegou a esta página diretamente a partir de um Pull Request do Aikido Autofix e apenas quer aprender como terminar o PR, passe para 'Como implementar'.
O ecossistema JavaScript tem um problema que se chama poluição de protótipos. Para uma empresa SaaS que constrói com JavaScript/npm, normalmente até 20-30% de todas as vulnerabilidades conhecidas (CVE) detectadas nas dependências são causadas pela poluição de protótipos. Normalmente não são fáceis de explorar, mas em casos graves, podem levar a falhas de execução remota de código. Isso significa que são difíceis de ignorar completamente.
Duas formas de prevenir a poluição por protótipos
Há um suporte experimental no Node.js para congelar o protótipo por padrão sob uma flag chamada --frozen-intrinsics. Ativar esse sinalizador derrota todos os ataques de poluição de protótipo. No entanto, não podemos recomendá-lo ainda porque é experimental e também não funcionará em bases de código de front-end. Isso o impediria de construir a mesma proteção em seu frontend e backend.
Uma alternativa é o nopp (No Prototype Pollution), uma biblioteca de 14 linhas que congela o protótipo (e alguns outros pontos de entrada).
Como implementar
1. Importar a biblioteca
Depois de ter instalado o nopp, tudo o que tem de fazer é ir ao script que inicia a sua aplicação. Lá você simplesmente requer a biblioteca, depois de ter requerido todas as suas outras bibliotecas. Exemplo de commit abaixo:

2. Controlo de segurança a nível da aplicação para as bibliotecas que dependem da manipulação do protótipo
A razão pela qual estamos a congelar o protótipo depois de incluir outras bibliotecas é que algumas das suas outras bibliotecas podem depender da alteração do protótipo para funcionar! Mesmo depois de ter certeza de congelar o protótipo DEPOIS de incluir outras bibliotecas, ainda é possível que você precise de alguma refatoração antes que seu aplicativo funcione novamente!
Por exemplo, o próprio aws-sdk da Amazon para Node.js faz alterações no protótipo durante a construção de objectos como "new AWS.S3(...)". Nesses casos, pode ser necessário fazer uma refatoração como mostrado abaixo, garantindo que o objeto seja criado quando o processo do Node.js for iniciado e não durante uma fase posterior.

Certificar-se de que sua aplicação ainda funciona após essa mudança pode ser um investimento de tempo maior para repositórios maiores que têm baixa cobertura de teste. Para repositórios menores, valerá a pena nunca mais ter que lidar com a poluição de protótipos. Para repositórios maiores, isso pode ser mais complexo, mas o investimento em engenharia provavelmente ainda terá um ROI positivo a longo prazo.

Como é que um CTO de uma startup SaaS consegue equilibrar a velocidade de desenvolvimento e a segurança?
Aprendizagens de empresas SaaS anteriores
Numa típica empresa SaaS em fase de arranque, a equipa de desenvolvimento está sob forte pressão para apresentar novas funcionalidades. Normalmente, há concorrentes que podem ser mais bem financiados, a equipa de vendas pede uma última funcionalidade para fechar o negócio, a equipa de apoio ao cliente pede uma correção de erros. Pode ser difícil dar prioridade à segurança, a menos que um cliente empresarial de maior dimensão o exija ou que a direção o imponha a partir do topo.
Na maioria das empresas em fase de arranque, é possível que não tenha uma gama completa de perfis técnicos à sua disposição: pode ainda não ter um gestor de produto a tempo inteiro, provavelmente não tem um chefe de segurança a tempo inteiro na sua equipa de desenvolvimento. Uma equipa de desenvolvimento sob pressão para entregar o produto será forçada a cortar muitos cantos, mesmo quando se trata de segurança.
Fui CTO de 3 empresas SaaS em fase inicial. (Teamleader, Officient & Futureproofed) Abaixo, descrevi as minhas aprendizagens com essas experiências anteriores em empresas SaaS.

Evitar reinventar a roda
Um bom exemplo: não crie um sistema de início de sessão com palavras-passe. Sim, pode construí-lo em poucos dias, mas o custo para o manter e adicionar funcionalidades de proteção avançadas no futuro será muito elevado. Considere a possibilidade de utilizar um início de sessão através de um início de sessão único, como o Gmail, ou utilize um serviço como o Auth0.com. Não só terá uma experiência de início de sessão mais suave e com mais funcionalidades, como também não terá de se preocupar com toda uma classe de aspectos de segurança relacionados com o início de sessão (força bruta, fuga de credenciais de utilizador em serviços de terceiros, evitar e detetar ataques de apropriação de conta, validar endereços de correio eletrónico, registo...).
No final, se escolher o fornecedor certo, não está apenas a reduzir a sua superfície de ataque, está também a ganhar tempo que pode ser gasto em funcionalidades mais valiosas.
Outros exemplos excelentes que podem poupar-lhe semanas ou meses são:
- Não guarde cartões de crédito, utilize algo como Stripe ou Mollie ou Chargebee
- Não execute você mesmo software complexo como MySQL, PostgreSQL ou ElasticSearch. Utilize serviços geridos na nuvem, como o RDS.
- Não crie os seus próprios sistemas de registo. Utilize sistemas como o Sentry ou o Papertrail (e não registe aí quaisquer dados sensíveis)
- Não utilize os seus próprios servidores de correio eletrónico (SMTP), utilize um serviço gerido como o Sendgrid ou o Mailgun
- Não construa servidores de websocket, utilize serviços geridos como o Pusher.com
- Não crie o seu próprio sistema de marcação de caraterísticas, utilize um serviço como o Launchdarkly
- Não crie a sua própria integração de calendário, utilize uma ferramenta como o cronofy.com
- Ao criar integrações em geral, verifique se existem APIs unificadas nesse espaço, como o Apideck.
Investir algum tempo num sistema de comunicação de crise
Certifique-se de que tem ferramentas configuradas, como uma aplicação de conversação para falar com os seus clientes, ou melhor, uma página de estado gerida ou uma conta no Twitter onde pode comunicar problemas. No caso de algo de mau acontecer, é uma boa prática permitir que o resto da sua empresa comunique com os seus clientes enquanto se concentra na resolução do problema durante uma crise.
Adicionar barreiras de proteção globais
Provavelmente está a rever os Pull Requests dos seus programadores, ótimo! É uma tarefa e tanto revisá-los quanto à capacidade de manutenção, desempenho e funcionalidade. Tem tempo para os rever também em termos de segurança? De certeza que vai conseguir cobrir alguns riscos, mas é bom poder contornar alguns riscos adicionando alguns guardrails e configuração global.
Por vezes, é possível ter sorte e existem correcções globais para problemas específicos.
- Se você usa nodeJS e não gosta de pensar em poluição de protótipos, você deve congelar o protótipo para desabilitar esta classe de ataques em toda a aplicação. O Aikido pode construir automaticamente um Pull Request que faz isso por si.
- Se utilizar SQL e tiver receio de ataques de injeção de SQL (deveria ter), pode utilizar um WAF (como o AWS WAF) ou RASP (como a segurança de aplicações da Datadog) para proteção de toda a aplicação
- Se estiver a descobrir muitos ataques XSS, é provável que consiga eliminar uma grande parte deles introduzindo uma política CSP muito rigorosa no browser.
- Se estiver a fazer muitos pedidos de saída com base na entrada do cliente, poderá estar vulnerável a ataques SSRF. Embora possa ser difícil bloquear isto completamente, pode atenuar os danos certificando-se de que não pode levar a algo pior (como um ataque IMDSv1 às credenciais IAM no AWS). O Aikido monitoriza isto na sua nuvem AWS por predefinição.
- Ao lidar com o armazenamento de objectos, evitar tipos específicos de funções como Pickle, XML, (un)serialize em Java e PHP,... e em vez disso optar por opções de armazenamento simples como JSON pode evitar muitas explorações típicas relacionadas com a não-serialização insegura. O Aikido monitoriza este tipo de funções na sua base de código por defeito.
- Se utilizar um CDN ou mecanismos de cache, utilize domínios separados para os seus activos estáticos com configurações de CDN separadas para evitar todos os tipos de ataques de envenenamento de cache (o ChatGPT deparou-se com esta armadilha recentemente)
Eduque os seus programadores com este truque simples
Há um truque fácil (trocadilho intencional) que pode implementar nos seus processos. Uma pergunta rápida para fazer à equipa de desenvolvimento durante o planeamento do sprint:
Como é que a funcionalidade que estamos a construir pode ser pirateada (e como podemos evitar que isso aconteça)?
Embora a equipa de desenvolvimento possa não prever todos os cenários de abuso potenciais, esta metodologia é muito simples de escalar. É um pequeno passo extra que incentiva os programadores a verificarem as considerações de segurança antes de efectuarem qualquer trabalho de desenvolvimento.

Atribuir prioridades a diferentes partes da sua base de código
Nem tudo será um alvo tão grande para os hackers. Os principais componentes que eles gostam de atacar são :
- Sistemas de pagamento, carteiras electrónicas, sistemas de crédito
- Funcionalidade que se liga a APIs dispendiosas como SMS, voip (pense em Twilio)
- Redefinição da palavra-passe, sistemas de início de sessão, convites de utilizadores
- Funções de exportação como PDF, Excel,... exportações que podem efetuar operações de risco
- Qualquer coisa relacionada com o carregamento de ficheiros e imagens
- Caraterísticas que fazem pedidos de saída por conceção, tais como webhooks
- Qualquer tipo de funcionalidade que envie correio eletrónico, especialmente com conteúdo personalizado
PS: O Aikido pode ajudá-lo a concentrar-se apenas nos principais repositórios do universo da sua empresa, atribuindo níveis de risco a cada base de código.
Não esquecer o aspeto humano
Como CTO numa pequena empresa em fase de arranque, é normalmente também o responsável pela segurança operacional. Forneça à sua equipa os meios para proteger as suas contas. Certifique-se de que utilizam Yubikeys de hardware ou aplicações de software para a 2FA e, se possível, imponha-a. Ferramentas como o Gmail permitem aplicar esta medida. É uma óptima primeira linha de defesa contra ataques de phishing.
É difícil manter-se atualizado em relação às práticas de segurança
Aprender sobre novos tipos de ataques a software é difícil. Já é suficientemente difícil acompanhar as actualizações das linguagens que utilizamos (Python, Node, Go,...) ou as correcções dos sistemas operativos ou as explorações populares em pacotes de código aberto. Ataques específicos tornam-se mais populares ao longo do tempo, pelo que vale a pena seguir as tendências. Por exemplo, depois de notar um aumento nos ataques de aquisição de subdomínios no ano passado, a Aikido introduziu uma ferramenta de monitorização de aquisição de subdomínios para evitar esse risco e automatizar a prática de monitorização destes registos DNS.
Automatizar
Nas minhas empresas anteriores, tentávamos chegar a um nível superior de segurança pedindo a um responsável pela segurança que criasse um calendário com tarefas de segurança recorrentes. Fazer uma análise de acesso a todas as aplicações todos os trimestres. Fazer um scan de leaked-secrets no código de duas em duas semanas, limpar os CVEs dos pacotes de código aberto todas as sextas-feiras, fazer um scan SAST de vez em quando, verificar os registos DNS para takeovers de subdomínios todos os meses,... O resultado destas tarefas era difícil de triar e tornar acionável para os programadores. Pior ainda, quando essa pessoa deixava a empresa, era difícil para qualquer outra pessoa assumir essas tarefas porque exigiam muitos conhecimentos específicos.
Foi aqui que a ideia do Aikido começou a crescer. Precisávamos de uma solução que automatizasse tudo o que foi dito acima, filtrasse o ruído e colocasse as tarefas à frente dos seus programadores no Slack ou no Jira.
Comece hoje a digitalizar o seu código e a sua nuvem com o Aikido. Registe-se aqui e comece a digitalizar gratuitamente.