Segurança em aplicações web

Post on 11-Jun-2015

86 views 1 download

Transcript of Segurança em aplicações web

• Facilidade de acesso.Facilidade de acesso.

• Estatísticas desfavoráveis.Estatísticas desfavoráveis.

• O desinteresse dos desenvolvedores.O desinteresse dos desenvolvedores.

• XSSXSS

• INJEÇÃO SQLINJEÇÃO SQL• Atacante insere comandos SQL.Atacante insere comandos SQL.• Utiliza formulários.Utiliza formulários.

• RecomendaçõesRecomendações::• Validação : dados de entrada.Validação : dados de entrada.• Permitir Permitir somentesomente caracteres selecionados caracteres selecionados

previamente.previamente.• Prepared Statement: Impede a Prepared Statement: Impede a alteraçãoalteração

da sintaxe do comando SQL.da sintaxe do comando SQL.

• CROSS SITE SCRIPTING (XSS)CROSS SITE SCRIPTING (XSS)• Atacante utiliza app web para enviar código Atacante utiliza app web para enviar código

malicioso.malicioso.• Aplicação web Aplicação web sem validaçãosem validação..• Descoberta de Descoberta de cookie sessãocookie sessão, divulgação de , divulgação de

arquivos, instalação de cavalo de Tróia, arquivos, instalação de cavalo de Tróia, redirecionamento do usuário para outra Page.redirecionamento do usuário para outra Page.

• RecomendaçõesRecomendações::• Verificar se o conteúdo da PageVerificar se o conteúdo da Pagenão contenha scripts indesejados.não contenha scripts indesejados.• Filtragem de dados. Filtragem de dados. (Entrada e saída).(Entrada e saída).

• SISTEMAS DE AUTENTICAÇÃOSISTEMAS DE AUTENTICAÇÃO• Login e senha válidos.Login e senha válidos.• Perigo nas Perigo nas mensagens de erromensagens de erro!!• Problemas - Mensagens de erro:Problemas - Mensagens de erro:• - - Enumeração de logins válidos: Usuários Enumeração de logins válidos: Usuários

listados.listados.• - Ataque de dicionário: Tentativa e erro.- Ataque de dicionário: Tentativa e erro.• - Ataque de força bruta: Formações de palavra.- Ataque de força bruta: Formações de palavra.

• RecomendaçõesRecomendações::• Evitar mensagens de erro detalhadas.Evitar mensagens de erro detalhadas.

• SEQUESTRO DE SESSÕES.SEQUESTRO DE SESSÕES.• Utilização de cookies.Utilização de cookies.• Servidor captura o cookie.Servidor captura o cookie.• Ataque pode surgir quando: captura ou Ataque pode surgir quando: captura ou

adiviha o cookie de outro usuário.adiviha o cookie de outro usuário.

• RecomendaçõesRecomendações::• HTTPS: garante a criptografia.HTTPS: garante a criptografia.• Eliminação de vulnerabilidade.Eliminação de vulnerabilidade.

• ARQUIVOS INDEVIDOS.ARQUIVOS INDEVIDOS.• Arquivos de configuração e informações Arquivos de configuração e informações

sigilosas.sigilosas.• Arquivos com senha.Arquivos com senha.

• RecomendaçõesRecomendações::

• Mover os arquivos de configuração, Mover os arquivos de configuração, backup e sigilosos.backup e sigilosos.

• EXECUÇÃO DE COMANDOS.EXECUÇÃO DE COMANDOS.• Manipulação das entradas de dados.Manipulação das entradas de dados.• Comandos executam com as mesmas Comandos executam com as mesmas

permissões.permissões.

• RecomendaçõesRecomendações::

• Dados dos usuários validados antes da Dados dos usuários validados antes da execução.execução.

• Chamar as bibliotecas.Chamar as bibliotecas.

• ELEVAÇÃO DE PRIVILÉGIOS.ELEVAÇÃO DE PRIVILÉGIOS.• Adquirir mais permissões que o atribuído ao Adquirir mais permissões que o atribuído ao

usuário.usuário.• Pode ser encontrada em apps web com Pode ser encontrada em apps web com

menus criados dinamicamente.menus criados dinamicamente.• RecomendaçõesRecomendações::• Todo controle deve ser validado.Todo controle deve ser validado.• Qualquer recurso protegido do sistema só Qualquer recurso protegido do sistema só

poderá ser acessado por usuários poderá ser acessado por usuários autenticados. autenticados.

• Todos os recursos protegidos precisam de Todos os recursos protegidos precisam de um controle implementado .um controle implementado .

• OUTRAS RECOMENDAÇÕES.OUTRAS RECOMENDAÇÕES.• Protocolo HTTPS.Protocolo HTTPS.• Política de senhas. (8 caracteres).Política de senhas. (8 caracteres).• UPLOAD de arquivos.UPLOAD de arquivos.• Privilégios mínimos no Banco de Dados.Privilégios mínimos no Banco de Dados.• Criptografia das senhas.Criptografia das senhas.• Campos hidden no código HTML.Campos hidden no código HTML.• Atualização de softwares.Atualização de softwares.• Configuração de softwares.Configuração de softwares.

• Referências:Agência Estadual de Tecnologia da

Informação.