Atividades Práticas Supervisionadas
Por: carvalhof. • 1/6/2016 • Trabalho acadêmico • 2.342 Palavras (10 Páginas) • 329 Visualizações
SUMÁRIO
Resumo 02
Princípios da segurança 03
Desenvolvendo Softwares seguros 04
Evitando Estouro de Buffer 05
Métodos mais fortes que BASE64 06
Métodos em JAVA e ASP 07
Utilizando Criptografia 08
Referências 09
Resumo
Esse ATPS relata fatores para o desenvolvimento de um software com segurança e confiabilidade evitando ataques de hackers, utilizando métodos de criptografia “fortes”. Esse ATPS faz um relato desde o começo do projeto, desde a escolha da equipe e funções até a implementação.
1.2 PRINCIPIOS DA SEGURANÇA:
Requisitos:
Requisitos é o passo inicial para o projeto de Software Seguro, são levantados os requisitos do sistema e a segurança para o Software. É essencial levantar hipóteses e simular situações ao usuário para evitar problemas ainda não pensados.
Projeto/Análise:
O momento de projeto/Desenvolvimento é importante obter uma equipe de confiança e dividi-la em partes, do qual cada parte cuide de um determinado setor, afim disso evitar falhas na segurança do projeto e assim afirmar com a equipe de levantamento de requisitos todos os detalhes do projeto.
Assegure-se da segurança do projeto do início ao fim para evitar bugs e falhas futuras.
Implementação:
O ponto importante é a implementação, pois uma má implementação acarretará em problemas futuros dos quais podem possam ser resolvidos apenas com Projeto/Desenvolvimento.
O processo de implementação deve apresentar ao usuário um software sustentável, seguro e que corresponda aos requisitos solicitados durante o processo de levantamento de requisitos.
O software deve apresentar ao usuário funcionalidades seguras, intuitivas e de fácil administração com manuais e suporte disponível.
Teste:
O ponto Principal do projeto é a fase de teste. Esse processo de grande importância deve verificar Bug’s, erros de digitação, além de realizar (simular) formas de invasão e controle externo dos dados. É orientado que sejam feitos ataques ao software para análise da segurança do projeto para evitar que qualquer outro usuário consiga atacar o software que está em projeto.
Esse processo deve ser feito antes da implantação no usuário/cliente, pois a fase de testes de ser sempre feita e aprovada antes de se apresentar o software ao usuário/cliente.
Manutenção:
No momento de manutenção pode se efetivar uma análise do quão bem o projeto ficou, a partir de quantas são feitas para o software e quantas manutenções são feitas para o Ambiente do software. A manutenção deve ser feita de forma interativa e efetiva para evitar próximos bugs no usuário/cliente.
Uma forma de evitar bugs também é disseminar treinamentos com os usuários para que os mesmos possam conseguir utilizar o software de forma segura e sem acarretar problemas casuais em fator do não conhecimento do software.
1.3 DESENVOLVENDO SOFTWARES SEGUROS:
Atualmente o desenvolvimento de um software deve-se por obrigatoriedade ser desenvolvido com ênfase na segurança em fator da constante evolução da internet que aumentou em um nível muito elevado a possibilidade de ataques ao software.
Nos dias atualmente temos dispositivos dos mais diferentes tipos que podem receber um software e que possam ter acesso à rede, é fundamental o desenvolvimento do software com segurança correspondendo aos Requisitos informados no levantamento de requisitos.
O processo do projeto é de grande importância no desenvolvimento do software seguro, pois com os requisitos deve-se avalia o fluxo para a segurança do software que só será comprovado a segurança do software na fase de testes. A fase de testes é o momento mais importante do desenvolvimento do software seguro com a sua fase de ataques ao software, validações de bugs, replanejamento da segurança para evitar falhas futuras…
Na implantação deverá analisado o ambiente do usuário/cliente e suas formas de segurança para ataque, e até sugerir formas mais seguras de utilização para evitar ataques e diminuir o nível de manutenção do software.
1.4 EVITANDO ESTOURO DE BUFFER:
Ataques de Buffer Overflow
Ataques de estouro de buffer é uma forma comum de ataque de um hacker para causar o caos em um sistema. Há ataques baseados em estouro de pilha, que são raras, e pilha baseada ataques, que erroneamente redefinir o limite de memória para uma pilha, fazendo-a transbordar. Os dados transbordantes se movem para outros buffers, corrompendo ou sobrescrevendo os dados válidos lá, potencialmente causando uma cascata de buffers corrompidos, bem como uma cascata de transbordando taças de champanhe. Para evitar ataques de estouro de buffer, você vai precisar ter conhecimentos técnicos de programação de computadores, o acesso ao código em questão de tempo e paciência para vasculhar páginas e páginas de código para programar as mudanças necessárias para proteger seus sistemas. Instruções
Escrever código de segurança para evitar ataques de estouro. Em C, há uma série de funções vulneráveis que os hackers podem explorar a sobrecarregue buffers. Minimize o uso de strcpy (), strcat (), sprintf () e vsprintf (), que não realizam verificação de limites. Se possível, evitar o uso de gets (), que não especifica quantos caracteres devem ser lidas e, assim, deixa o seu código vulnerável. Se você usar o scanf (), certifique-se de especificar uma largura Ataques de estouro de buffer são uma forma comum de ataque de um hacker para causar o caos em um sistema. Há ataques baseados em estouro de pilha, que são raras, e pilha baseada ataques, que erroneamente redefinir o limite de memória para uma pilha, fazendo-a transbordar. Os dados transbordará o formato % s para evitar derrapagens.
...