ISO 27000 e programação segura
Estou um pouco farto do esclarecimento da programação segura, mas desta vez também é um tópico de programação segura. Anunciei no Facebook que a versão web do curso de programação segura da IPA estava programada para ser excluída, mas ainda não estava no blog, então vou apresentá-la junto.
Aqui está o que a ISO 27000 diz sobre programação segura. A série ISO 27000 é um padrão de segurança internacional que forma a base da certificação ISMS (Information Security Management System). Problemas de segurança podem ser tratados automaticamente com a introdução do ISMS! Embora não seja uma coisa assim, é um padrão muito útil para introdução sistemática de segurança e , em 29 de junho de 2015, 4.646 organizações foram certificadas e registradas.
Conteúdo [ oculto ]
O que é programação segura?
Outros nomes para programação segura são “programação defensiva” e “codificação segura”. Eu já escrevi sobre o básico da programação segura, mas vou listar os 10 melhores aqui. Para obter um histórico de programação segura , consulte “ Uma rápida olhada no histórico de programação segura (programação defensiva) “.
CERT Top 10 práticas de codificação segura
- Validar entrada
- Cuidado com os avisos do compilador
- Configurar/projetar para política de segurança
- simplificar
- Negar por padrão
- Defender o princípio do privilégio mínimo
- higienizar dados enviados para outros sistemas
- praticar defesa em profundidade
- Use técnicas eficazes de garantia de qualidade
- Adote padrões de codificação seguros
O lar da programação segura é a CERT/Carnegie Mellon University. Existem várias técnicas de programação segura, mas o básico são esses 10 itens.
A versão web do curso de programação segura da IPA será excluída
Eu escrevi que a versão web do curso de programação segura da IPA está programada para ser excluída. Recebi isso como resposta a uma pergunta que eu pessoalmente indiquei à IPA que o conteúdo da edição da web do curso de programação segura era “problemático porque está longe de ser uma programação segura”.
Se você olhar para a edição web do curso de programação segura da IPA , você entenderá imediatamente que não há menção à validação de entrada em primeiro lugar e, por algum motivo, a parte correspondente às medidas de saída é “medidas de entrada”. programação.
Olhando para o e-mail, indiquei no dia 4 de junho e, no dia 9 de junho, recebi uma resposta de que este curso será excluído. De uma organização como a IPA, acho que é uma resposta rápida. Ainda é navegável por enquanto, mas é provável que seja removido em breve.
Descrevendo a programação segura na ISO 27002
Recentemente, aprendi que a parte padrão do padrão JIS pode ser referenciada online! Excelente! Acho que isso é uma grande conquista. Às vezes não consigo vê-lo devido a uma falha do sistema (sobrecarga?), mas acho ótimo que qualquer pessoa possa consultá-lo facilmente.
Se você pesquisar “segurança da informação” como palavra-chave, JIS Q 27002:2014 (ISO/IEC 27002:2013) etc. será exibido. Confirmamos que a visualização online (ou seja, download/impressão, etc. não é possível) no ambiente do Windows 7 + IE 11 + Adobe Reader 11.
27002 menciona programação segura nos dois lugares a seguir.
14.2.1 Políticas para Desenvolvimento Seguro
Para novo desenvolvimento e reutilização de código, seguro É desejável . Padrões de codificação amigáveis à segurança devem ser considerados e seu uso deve ser obrigatório quando aplicável. Os desenvolvedores devem ser treinados no uso e teste desses padrões e devem verificar seu uso dos padrões por meio de revisões de código.
14.2.5 Princípios para sistemas de construção com segurança em mente
No procedimento de desenvolvimento de aplicativos, é desejável aplicar tecnologia de construção consciente da segurança (programação segura, etc.) ao desenvolvimento de aplicativos com interfaces de entrada/saída .
Como o CERT ocupa o primeiro lugar em programação segura, a validação de entrada e o processamento de saída em sétimo lugar são cuidadosamente escritos.
Para aqueles que não estão familiarizados com a série ISO 27000, vou explicar. A ISO 27002 é uma diretriz para a construção de um SGSI. Por ser uma diretriz, não é necessário que todos os itens tenham sido implementados . O sistema de gestão ISO exige “implementação de melhoria contínua”. Coisas que não são críticas ou coisas que não podem ser realizadas imediatamente devido a restrições de recursos podem ser realizadas no futuro, e quase todas estão na forma de “é desejável fazer XX” nas diretrizes. Não significa que não importa.
Diferenças das versões anteriores
Os padrões ISO/JIS serão atualizados e o conteúdo será atualizado. Na versão anterior , introduzimos a validação de entrada, que é uma das técnicas de programação seguras, com exemplos.
A versão atual diz apenas “Por favor, faça programação segura”. Este processo está descrito no Manual JIS, que pode ser obtido em formato impresso. Explica que, uma vez que a programação segura é mantida sistematicamente, apenas é fornecida uma declaração no sentido de que “a programação segura é realizada”. Em suma, tornou-se comum, então fiz uma descrição concisa de “executar programação segura”.
Resumo
A programação segura tornou-se a norma em organizações de segurança ativa, como certificações ISMS. Infelizmente, muitas pessoas não. A programação segura garante que você possa escrever programas mais seguros do que antes. Seria uma boa ideia aprender programação de contrato também.