Segurança em aplicações web

11

Transcript of Segurança em aplicações web

Page 1: Segurança em aplicações web
Page 2: 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

Page 3: Segurança em aplicações web

• 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.

Page 4: Segurança em aplicações web

• 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).

Page 5: Segurança em aplicações web

• 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.

Page 6: Segurança em aplicações web

• 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.

Page 7: Segurança em aplicações web

• 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.

Page 8: Segurança em aplicações web

• 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.

Page 9: Segurança em aplicações web

• 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 .

Page 10: Segurança em aplicações web

• 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.

Page 11: Segurança em aplicações web

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

Informação.