Padrões de Arquitetura Segura & Engenharia de Segurança I
Fortes de estrelas holandesas são legais!
Imagine olhar para imagens aéreas de fortificações alienígenas em um planeta diferente através da Via Láctea.
É assim que às vezes me sinto quando olho para séculos de antigos fortes bastiões enquanto tento projetar equivalentes digitais que aderem à teoria da segurança moderna.
Ao ler, tente prever elementos da próxima iteração do design — para você inventar um design “teoricamente seguro” hoje.
Cidade fortificada de Dokkum, Frísia
Acima está minha cidade natal de Dokkum, Frísia — Fortificações em forma de estrela começaram a substituir essas fortalezas medievais no século XV, cujas paredes de cortinas altas haviam se tornado obsoletas devido a canhões de pólvora.
Estes novos projetos arquitetônicos da Itália tinham uma estrutura relativamente plana composta por muitos bastiões triangulares, especificamente projetados para cobrir uns aos outros, e as trincheiras defensivas que os cercavam.
Plano do século XVII para um Forte bastião em Coevorden, Holanda
Arquiteturas exclusivas sob medida para o cliente estavam sintonizadas com o ambiente natural e o orçamento disponível, alguns resistiram a vários bloqueios militares inteiramente, e outros cederam após uma luta cara.
Com o tempo, os fortes evoluíram em formas complexas cobrindo uma área cada vez maior, colocando camadas em defesas adicionais que o inimigo precisava superar, antes de comprometer suas “Joias da Coroa”.
Visibilidade é a chave
Durante os tempos medievais, todas as árvores próximas foram cortadas para não apenas transformar florestas próximas em terras agrícolas, mas também permitir que os defensores localizassem adversários “a uma milha de distância”.
Torre Defensiva em forma de diamante
“Tradicionalmente” projetadas torres redondas e quadradas deixaram vários pontos cegos para os defensores, e forneceram refúgio subsequente para atacar adversários.
Para mitigar essa vulnerabilidade, os engenheiros italianos iteraram sua arquitetura de estado-alvo para exigir torres de bastião em forma de diamante. Aplicar tais patches de segurança após o fato era consumível de recursos naquela época também.
Fato divertido: ainda é impossível disparar um projétil de alta velocidade não guiado em torno de uma parede curva — o princípio por trás de sua decisão se manteve.
Invadindo o castelo
Com as paredes de cortinas altas do século XV derrubadas em todo o mundo - paredes mais baixas, mas muito mais grossas, com trincheiras cavadas na frente delas entraram em moda.
Dependendo dos recursos naturais e financeiros disponíveis, paredes defensivas seriam cortadas na rocha natural ou equipadas com uma fachada de tijolo: tijolo absorve choque de concha, onde a pedra se quebra.
A terra escavada ajudou a criar uma estrutura estável, empilhando-a atrás, na frente, e no topo dessas paredes defensivas, dissipando a maior parte da energia do fogo direto do canhão e quaisquer golpes de sorte.
Fortificações deste tipo continuaram a ser úteis enquanto os adversários estavam armados apenas com canhões, onde a maioria dos danos infligidos foi causado pelo impulso do impacto do tiro sólido.
A próxima iteração incluiu rampas de lama suavemente inclinadas que se estendem até a distância possível, colocando até mesmo suas paredes defensivas primárias para fora da linha direta de fogo. Quanto menor o ângulo de elevação nestas encostas, melhor será o poder de parada.
Talvez imprevistos por seus arquitetos na época, essas convenientes rampas de lama tornaram mais fácil “invadir o castelo” e conquistá-lo jogando corpos no problema (ataque de infantaria).
Em resposta, as trincheiras tornaram-se consideravelmente mais amplas, garantindo que qualquer infantaria inimiga ainda seria exposta a tiros do alto, e canhões defensivos fortemente vigiados tinham uma linha clara de fogo pelo comprimento de cada trincheira. A guerra subsequente do túnel foi atenuada pelo aprofundamento significativo dessas trincheiras.
A segurança não é gratuita.
Profissionais e estados-nação em todo o mundo estão trabalhando para resolver o mesmo problema — podemos não falar todos da mesma linguagem, mas muitos acreditam que a segurança deve ser livre.
Sim, se você tem interesse e aprende com quem aprender, você pode ensinar a si mesmo muito de graça. Muitos SMB podem obter segurança com um orçamento. No momento em que você vai Enterprise, todas as apostas estão canceladas.
Toda essa segurança italiana teve um preço, os 20 bastiões de Amsterdã custaram 11 milhões de florins (cerca de US$ 1,5 bilhão do ouro de hoje!) e Siena faliu em 1544 para pagar suas defesas.
Amsterdã, 1647
Por outro lado, as fortificações às vezes eram improvisadas a partir de defesas anteriores, muitos líderes cortavam custos aderindo à arquitetura defeituosa e, em vez disso, optando pelo “‘mais terra’” e uma abordagem baseada na fé.
A necessidade de projetos iterativos resultou em vendas globais, da Itália ao México. Por quase três séculos, engenheiros de segurança italianos estavam em alta demanda em todo o mundo. Até que cargas explosivas tornaram sua teoria de segurança obsoleta.
E assim, eventualmente, até mesmo os projetos mais sofisticados de Defesa em Profundidade tornaram-se inadequados com a introdução de projéteis Shell que carregam carga e tiros mais precisos nos campos de batalha do século XIX.
Fortificações poligonais
À medida que a artilharia se tornava cada vez mais poderosa e as conchas com cargas explosivas acomrias explosivas, os engenheiros de segurança escolhem um design muito mais simples e robusto. Um Pentágono é uma das formas possíveis de adesão a polígonos a este projeto.
Fortificações de estilo poligonal foram estabelecidas em uma série de linhas retas ao redor de uma área protegida, eliminando flancos. Valas verticais profundas cortadas na rocha nativa, cobertas por blocos defensivos e posições de disparo cortadas na face externa da própria vala.
A maioria de qualquer forte poligonal é subterrânea. O baixo perfil desses fortes tornou-os fáceis de ignorar e ultrapassar.
O desenvolvimento de morteiros, explosivos elevados e o aumento substancial do poder destrutivo de novas conchas explosivas tornaram irrelevante a geometria intrincada de tais fortificações.
No século XX, com o desenvolvimento de tanques manobráveis e guerra aérea durante e após a Primeira Guerra Mundial, fortificações fixas tornaram-se obsoletas. O combate era para se tornar mais móvel. Levou, no entanto, muitos anos para abandonar o velho pensamento da fortaleza.
Arquitetura de segurança moderna
Os paralelos com a revolução cibernética em curso (e a guerra cibernética secreta) esperançosamente saltaram para você - como você pode aplicar lições aprendidas em nosso passado, hoje?
Língua da ponte
Seja a Névoa da Guerra durante um incidente ou uma apresentação na frente de um público desconhecido…
Termos e siglas que vêm naturalmente para você podem ter um significado totalmente diferente para o seu público.
Confusão ou discordância sobre o que alguém pretendia transmitir leva a uma falha de comunicação, uma causa raiz comum para a indiferença humana e o erro, resultando em explorações fáceis contra sua organização.
Então comece por estabelecer uma base firme — já que até mesmo seu melhor design será retirado por uma simples falha de comunicação.
Você notará que dentro de cada organização, há uma linguagem de ponte em uso. Conceitos dentro da tecnologia da informação aplicada embalam um soco diferente para suas equipes de CxOs, Desenvolvedores, InfoSec ou Infra (DevSecOps.)
Reconhecer essas falhas comuns e rolar com eles é um começo. Enquanto você estiver ciente deste problema, você pode ter sucesso. Seja criativo e publique um glossário interno, e deixe que todos respondam perguntas individualmente primeiro, antes de iniciar uma conversa em grupo.
Taxonomias de segurança existem tanto para humanos quanto para máquinas:
- Fortificar taxonomia de erros de codificação que afetam a segurança
- Expressão de informações de ameaça estruturada (STIX™)
- Exchange automatizada confiável de informações de inteligência (TAXII™)
- Agência da União Europeia para a Taxonomia de Ameaças à Segurança Cibernética
- Taxonomia de Arquitetura de Segurança Aberta
- Glossário do Centro de Recursos de Segurança do Computador NIST
Uma vez estabelecido uma linguagem comum e recursos para traduzir entre várias partes interessadas, conflitos ainda podem surgir.
Gestão de conflitos
Projetar qualquer sistema, muito menos um teoricamente seguro, é um esforço complexo que testa toda a gama de suas habilidades suaves e duras.
Considere a mistura única de dívida técnica herdada, novos avanços e cultura corporativa em geral.
As pessoas discordarão, e estão certas ou mal informadas. Ou você é tendencioso? Eles têm algum incentivo para se importar? Aplique algum pensamento lógico e crítico, desconfie de seu próprio viés e envolva essas discussões.
Quando o medo/incerteza/dúvida é deixado descontrolado, e os funcionários veem uma recompensa maior ao evitar todos os riscos, muitas vezes é preciso um constrangimento muito público para que sua cultura de segurança amadureca.
O que você pode influenciar - e até onde você está disposto a empurrá-lo?
O que é um sistema, afinal?
Como primeiro exercício, a bordo de suas equipes com a mesma língua, será útil, pois você se envolve em diferentes grupos para determinar o escopo do que você deve garantir primeiro.
Que “sistema” você está encarregado de proteger, e como você define isso? Ross Anderson discute sua definição com mais detalhes no parágrafo 1.7 [PDF, página 9] de seu LIVRO GRATUITO sobre Engenharia de Segurança.
Ross estabeleceu um padrão da indústria e é uma leitura fundamental do InfoSec — ele está trabalhando para uma terceira edição para publicar no início de 2020.
Livro de Engenharia de Segurança
Ele contempla um sistema para ser:
Um produto ou componente, como um protocolo criptográfico, um cartão inteligente ou o hardware de um PC;
Uma coleção do acima + um sistema operacional, comunicações e outras coisas que vão para compor a infraestrutura de uma organização;
Os aplicativos acima + um ou mais (ou seja, navegador, processadores de texto, aplicativo de contabilidade, APIs e assim por diante);
Toda ou qualquer equipe de TI acima +;
Qualquer ou todos os usuários e gerenciamento interno acima;
Qualquer ou todos os usuários e clientes externos acima+ .
Parei de diferenciar qualquer tipo de sistema, pois todos são propensos a erros humanos ou compilados.
Eu peso o nível de consciência de segurança, habilidade técnica e maturidade de segurança em meus projetos de segurança defensiva.
Muitos sistemas fazem a Internet
Hoje em dia, os sistemas parecem ser soluções semi-confiáveis para seus usuários.
Na realidade, há muitas peças em constante mudança, espalhadas por muitos domínios administrativos e técnicos, apresentadas aos consumidores de forma transparente.
É qualquer coisa eletrônica em sua rede de provedores de serviços domésticos e corporativos, provedores de nuvem, estatal e de serviços em nuvem com os seus funcionários.
Livro de Sistemas Distribuídos
Uma das minhas leituras favoritas absolutas é Distributed Systems, que define um sistema distribuído como:
“Um sistema distribuído é uma coleção de elementos de computação autônomo que aparece para seus usuários como um único sistema coerente.”
— Maarten van Steen / Andrew Tanenbaum
Os autores também citam esta observação abaixo, datando de 1987:
“Um sistema distribuído é aquele em que a falha de um computador que você nem sabia que existia pode tornar seu próprio computador inutilizável.”
Lembre-se que as identidades financeiras de seus entes queridos fazem parte de todos os “Sistemas Distribuídos” que compõem coletivamente a Internet. Obtenha sua cópia em PDF gratuita de Sistemas Distribuídos.
Armadilhas arquitetônicas
A rede onipresente permite que cada dispositivo eletrônico que você possui se torne uma força para o bem e para o mal — muitas vezes sem o seu consentimento.
Apesar de vivermos no final dos sucessos alimentados por nuvem, provavelmente todos nós participamos de decisões de engenharia que violaram uma das seguintes falácias arquitetônicas:
- Os sistemas são semelhantes
- As redes são seguras
- As redes são confiáveis
- Topologia raramente muda
- A largura de banda é infinita
- Latência de tráfego é quase zero
- O custo do tráfego é zero
- Administradores legítimos são facilmente identificados
- Os adversários respeitam sua intenção (futura)
As empresas lutam para equilibrar suas antigas e confiáveis formas de cachoeira/ágil contra a adoção de recursos modernos de automação de segurança.
Uma lacuna de habilidade sistêmica e limitações dos produtos disponíveis desempenham seu papel — nem todos os aplicativos, persona ou tarefa são compatíveis com o DevSecOps.
É sua tarefa afetar mudanças positivas!
Arquitetura empresarial tradicional
Embora eu não esteja convencido de que a Arquitetura Corporativa (EA) é uma estratégia de segurança eficaz, existem vários modelos mentais que aplico diariamente.
Reconhecendo que, em um mundo perfeito, segue-se uma abordagem de cima para baixo com base nos seguintes níveis de design arquitetônico:
- Conceitual (teorias de segurança e estratégias como #ZeroTrust)
- Contextual (determinando princípios de segurança para sua organização)
- Lógico (extrair funções e processos de alto nível)
- Físico (desenhe como você pretende realizar isso)
- Componente (determinar escolhas de hardware/software e manutenção)
Mais tarde, nesta série, cobrirei minha opinião sobre teorias de segurança (conceituais), como o Zero Trust de John Kindervag — Ross Anderson faz um ótimo trabalho cobrindo estratégias de segurança mais tradicionais.
(Contextual) Os Princípios de Segurança destinam-se a fornecer orientações gerais de segurança que modelem suas decisões de design, políticas, padrões, diretrizes e procedimentos.
Aqui estão dois princípios que acabei de fazer:
- A segurança é muito importante para ser deixada a apenas um departamento ou funcionário siloed — a mordomia de dados, privacidade e prontidão para incidentes são responsabilidade de todos — alguma estrutura e responsabilização são necessárias.
- Abrace o risco — a nova tecnologia não deve ser nem temida nem confiável. Devemos ser realistas sobre os potenciais benefícios e perigos de cada inovação. Adote um estilo de comunicação “sim, e.” de negócios.
(Lógico) Fluxos de atividade são áreas específicas de foco para melhorar e amadurecer a Postura de Segurança de uma organização.
Não há limite para o número de fluxos lógicos que se pode identificar. Cada fluxo pode ser um exemplo de listagem de meio pager de problemas observados e identificação de sub-fluxos (ou projetos).
Se você estiver interessado em mergulhar na abordagem disciplinada baseada em framework, os mandatos tradicionais da EA:
- BSIMM: Segurança predial no modelo de maturidade
- Cap Gemini Integrated Architecture Framework (CG IAF)
- DoDAF v2: Estrutura de Arquitetura do Departamento de Defesa
- EABOK: Corpo de Conhecimento da Arquitetura Empresarial
- FEAF: Estrutura Federal de Arquitetura Empresarial
- Gartner EA Framework / EA Patterns / EA Planning
- ITABoK: Corpo de Conhecimento arquiteto de TI
- OSA: Arquitetura de segurança aberta
- SABSA: Arquitetura de segurança de negócios aplicada por Sherwood
- SAMM: OWASP Software Assurance Maturity Model (SAMM)
- SEBoK: Corpo de Conhecimento em Engenharia de Sistemas
- SWEBoK v3: Corpo de Conhecimento de Engenharia de Software
- TOGAF: Open Group Architecture Framework
- Zachman Framework
No mundo real, muitos Enterprise Architects se especializam em uma estrutura comercial da EA e fazem sua carreira de promover isso durante muitas reuniões conceituais.
Considerando o antigo princípio “Ain’t Nobody Got Time for That”, os Engenheiros de Rede & Sistemas familiarizados com os níveis arquitetônicos mais baixos, raramente vagam pelos altos escalões por sua própria vontade.
A não reconhecimento das habilidades interdisciplinares e da colaboração necessárias para que essa arquitetura “teórica segura” se traduza em um design técnico que pode ser executado é uma das causas básicas porque uma abordagem orientada por EA de cima para baixo pode falhar.
Estado-alvo
Você está a caminho de possuir o papel de arquiteto de segurança em sua equipe e contribuir para uma mudança positiva!
Organizações em todo o mundo estão compartilhando abertamente suas respostas à revolução cibernética — sob a forma de Padrões de Design Defensivo, Guias de Implementação Técnica e Taxonomias baseadas em XML/JSON.
E comece a explorar a abordagem aberta e iterativa de uma arquitetura de segurança que está surgindo.