Tel/Whats 00351-913869261 Tel/Whats 5511-982083723     mcorreia@netconngroup.com.br
PRINCIPAL QUEM SOMOS O QUE FAZEMOS PROJETOS FAPESP INTERNACIONALIZAÇÃO BLOG CONTATOS

VOLTAR

COMPRAR OU DESENVOLVER SISTEMAS E ACOMPANHAR SEU DESEMPENHO E SEGURANÇA ?




COMPRAR OU DESENVOLVER SISTEMAS E ACOMPANHAR SEU DESEMPENHO E SEGURANÇA 

A busca por mais e melhores resultados é a ordem do dia. Todos os dias a alta gerência empresarial trata deste assunto

Este cenário faz com que as empresas ( de micro a multinacionais )  dependam cada vez mais da tecnologia para suportar seus processos de negócios. Tomadas de decisões rápidas e confiáveis, gestão empresarial e planejamento dependem de uma estrutura de informática aderente aos processos da empresa.

E para isso as empresas precisam de sistemas para quase toda a totalidade dos processos.

Podem comprar ou desenvolver internamente. Cada opção tem suas vantagens e desvantagens.

MAS os sistemas, quer comprados , quer desenvolvidos internamente, precisam constantemente estarem a ser analisados frequentemente em termos de desempenho e segurança

Tais análises visam evitar que o sistema degrade e PARE, Sim PARECE coisa fácil de ocorrer se a empresas, repito de micro a multinacional, não tiver um processo de análise, quer de desempenho, quer de seguranca

Qual a consequência de um sistema parar ? A EMPRESA PODE PARAR .

Em termos de ANÁLISE DE PERFORMANCE temos:

Teste de capacidade : Esse tipo de teste tem como objetivo identificar os limites da aplicação, ou seja, quantos usuários simultâneos ou chamadas por segundo a aplicação é capaz de suportar dentro dos parâmetros de qualidade definidos.

Teste de stress : Tem como objetivo verificar a performance de um sistema quando este é submetido a cargas que estão no limite ou acima do limite especificado inicialmente. 

Testes de escalabilidade (foco na capacidade do sistema de escalar, sem perder performance),

 Testes de resistência (foco em verificar a performance em longos períodos de tempo) e 

Testes de concorrência (foco em jornadas com concorrência por recursos

Em termos de SEGURANÇA DO SISTEMA vamos tratar vários pontos.

Não existem (e provavelmente nunca vão existir) sistemas de informação completamente invulneráveis. Toda e qualquer aplicação, web ou desktop, pode ser invadida. Algumas, mais facilmente do que outras.

É obrigação de cada grupo de desenvolvimento ( quer interno , quer externo a empresa) proteger os dados da empresa  da melhor forma possível. E para fazer isso, é necessário conhecer seu inimigo: como o hacker age? Quais brechas ele procura e utiliza para invadir meu sistema? Como posso me prevenir?

A seguir  vamos conhecer  as principais vulnerabilidades de segurança em sistemas-aplicações web, e descobrir métodos para cobrir estas brechas.

 

1. Injection

Esse tipo de falha é muito conhecida pela técnica SQL Injection, onde o invasor realiza consultas indevidas no banco de dados, por meio de um formulário ou URL.

Com isso, o hacker consegue logar em seu sistema com privilégios de administrador, e explorar este acesso como desejar.

2. Broken Authentication

Essa falha ocorre quando o sistema não utiliza métodos confiáveis de autenticação e armazenamento das informações do usuário, com credenciais de acesso que facilitam ataques de força bruta.

Um dos exemplos mais comuns de broken authentication é utilizar senhas muito curtas que facilitam ataques de força bruta. Normalmente, é a primeira forma que um cracker tentará utilizar para invadir seu sistema.

A solução mais imediata para este problema é criar uma política de senhas seguras, com mínimo de caracteres, combinação de letras e números, etc. 

3. Sensitive Data Exposure

As ferramentas de inspecionar elementos em uma página ou aplicação web, como o Chrome DevTools, estão entre as ferramentas preferidas dos desenvolvedores, e também dos hackers mal-intencionados.

Muitas APIs não protegem devidamente as informações que são transmitidas através delas, o que permite que invasores tirem proveito dos parâmetros retornados por ela, simplesmente inspecionando a aba ?network? do seu sistema.

Quanto a isso, é necessário dedicar uma atenção especial ao definir como estas informações vão trafegar pela interface, e criptografá-las devidamente.

4. XML External Entities (XXE)

Esta vulnerabilidade é específica de sistemas que trabalham com a linguagem XML, como por exemplo, software emissores de documentos fiscais eletrônicos.

Invasores podem explorar processadores de XML vulneráveis, onde é possível injetar códigos maliciosos e enviar para uma aplicação que fará a leitura desse XML.

5. Broken Access Control

Essa falha ocorre em aplicações que possuem páginas, rotas com informações que apenas o administrador deveria ter acesso, porém o controle de usuários não funciona.

Neste formato, o hacker consegue autenticar-se como administrador, e a partir daí, acessar, copiar e até excluir seus dados.

Para prevenir problemas de broken access control, é necessário que a validação do perfil de acesso venha do seu servidor, e não possa ser alterada externamente.

6. Security Misconfiguration

Se trata de configurações padrão de fábrica, informações abertas na nuvem, headers http configurados incorretamente, erros verbosos que indicam com precisão o motivo do erro.

A solução desse problema é bem simples: sempre lembre-se de excluir os arquivos e configurações default dos frameworks que utilizar. Alguns frameworks vão te lembrar disso após a instalação. Outros, não.

7. Cross-Site Scripting (XSS)

Assim como SQL Injection, essa falha é muito conhecida na internet. Através dela, invasores conseguem inserir códigos maliciosos de javascript e tags html na página.

Normalmente, o cross-site scripting requer um determinado comportamento do usuário, como acessar um link específico. No entanto, quando bem executada, este tipo de fraude é muito difícil de identificar, principalmente para usuários leigos.

8. Insecure Deserialization

Falha muito utilizada para a execução remota de códigos maliciosos. Mesmo quando essa falha de segurança não resulta em um acesso remoto por parte do hacker, ele pode utilizar a brecha para uma escalada de privilégios, configurando-se como administrador.

9. Using Components with Known Vulnerabilities

Mesmo que sua aplicação esteja desenvolvida seguindo um padrão seguro, as bibliotecas de terceiros que sua aplicação utiliza podem possuir falhas que são conhecidas na internet. Isso resulta em exploits, softwares prontos para serem utilizados para uma invasão.

Assim, é necessário ficar atento a possíveis vulnerabilidades de todos os componentes, bibliotecas e APIs que você irá consumir em seu software.

10. Insufficient Logging & Monitoring

Um sistema sem logs, não consegue detectar que em algum lugar de sua API/Sistema alguém está tentando explorar alguma falha.

Muitos desenvolvedores são resistentes a implementar um módulo de logs no seu sistema, principalmente devido ao peso destes dados no banco. Se este for o problema, defina um período de auto-exclusão do log que você pode suportar. Um mês é o mínimo!

Visto os itens acima podemos ver a importância da empresa, repito de micro a grande empresa, possuír procedimentos para acompanharem e irem corrigindo seus sistema-programas

Fale conosco e podemos analisar as necessidades de sua empresa e lhe indicar a melhor opção 

 

 







NETCONN GROUP
TODOS OS DIREITOS RESERVADOS
DESENVOLVIDO POR RIOBRASIL