Buscar

Pompas Auditoria em Aplicacoes web

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

SEGURANÇA DE APLICATIVOS
AUDITORIA EM APLICAÇÕES WEB
Prof. ANDRE LUIS GOMES POMPAS
ALUNO: WESLEI BRAGA DA SILVA
MATRÍCULA: 2016.04.07629-1
CURSO: SEGURANÇA DE REDES DE COMPUTADORES
AUDITORIA EM APLICAÇÕES WEB
Introducao
O trabalho de desenvolvimento de aplicações para WEB modifica uma serie de conceitos que estamos acostumados a lidar no nosso dia a dia. A aplicação WEB executa num ambiente distribuído, onde cada parte que compõe o programa está localizada em uma máquina diferente. O programador, e o programa, nem sempre tem consciência deste fato.
As aplicações desenvolvidas utilizando o paradigma cliente-servidor já vivenciam hoje uma parte desta experiência, onde a parte relativa à interface com o usuário reside na estação do cliente e a parte de acesso aos dados, no servidor de banco de dados. A lógica da aplicação pode ficar dividida entre o cliente e o servidor. Esta é uma arquitetura em dois níveis, como será visto mais adiante.
As aplicações WEB utilizam uma arquitetura multinível onde as funções executadas pelas aplicações podem estar distribuídas por uma rede de computadores. Elas fazem uso de uma infraestrutura de rede que é o padrão atual adotado pela Internet.
Nas seções seguintes, são introduzidos os conceitos associados à arquitetura Internet/WEB, e são apresentadas às propostas da Microsoft para aumentar o poder de desenvolvimento de aplicações e distribuição nesta plataforma. Por fim, faz-se uma breve introdução ao uso de algumas ferramentas para a criação de aplicações WEB.
A Arquitetura de Serviços Intranet (WEB)
Conforme já é sabido, os serviços WEB utilizam a infraestrutura de redes existente para disponibilizarão de informações e aplicações para o usuário. Para o cliente e o servidor WEB a topologia da rede é irrelevante, pois isto é tratado pelo protocolo TCP/IP.
No nível de serviços, os elementos são organizados da seguinte forma: de um lado está o cliente WEB, ou browser, que solicita dados ao servidor WEB, recebe as respostas, formata a informação e a apresenta ao usuário. Do outro lado, está o servidor WEB que recebe as requisições, lê os dados (paginas HTML) do disco e as retorna para o cliente.
Esta é a forma original de funcionamento da WEB e que proporciona apenas paginas de conteúdo estático, ou seja, uma vez programadas, apresentam sempre a mesma informação.
A forma encontrada para modificar esta situação e permitir a criação de páginas dinâmica foi a seguinte: o usuário entra com informações através do browser utilizando formulários HTML. O browser repassa as informações ao servidor WEB que executa um programa transferindo-lhe as informações vindas do cliente. O programa remoto (serve-rside gateway program) trata as informações e retorna uma pagina HTML criada dinamicamente. Esta pagina é passada ao servidor que a entrega ao cliente. O padrão para comunicação entre o servidor WEB e o "Server-side gateway program" é conhecido como CGI (Common Gateway Interface).
A Interface CGI explicita como os dados devem ser passados do servidor WEB para o programa e como o este deve devolver os dados ao servidor WEB. Além disto, especifica variáveis de ambiente que devem ser criadas pelo servidor e que podem ser acessadas pelo programa. Estas variáveis contem o endereço IP do usuário remoto, o tipo de browser que ele utiliza, dados para autenticação do usuário, dentre outros.
Os programas escritos para ser executados por servidores WEB são também conhecidos como scripts CGI. Os scripts CGI implementam a lógica do negócio e, muitas vezes, o acesso aos dados de uma aplicação WEB, pois podem acessar dados armazenados no servidor ou fazer chamadas a um servidor de banco de dados local ou remoto, permitindo o acesso `as informações da empresa.
Nesta arquitetura, têm-se programas sendo executados no servidor WEB e em outras máquinas da rede, como o servidor de banco de dados. Só falta agora serem colocados programas para executar no cliente. A execução de programas no cliente torna o browser mais independente do servidor. Sem isto, qualquer operação realizada pelo cliente tem que ser validada e executada pelo servidor, pois o browser não possui nenhuma inteligência.
Os programas que executam no browser, normalmente, são scripts (VBScript ou JavaScript) que tem a capacidade de perceber os eventos causados pelo usuário e responder de forma apropriada. Eles são embutidos no código HTML e o seu código fonte pode ser visualizado pelo usuário, pois não é um código compilado. Os scripts interagem muito com todos os elementos que formam uma pagina HTML.
Outro tipo de programa que pode ser executado no cliente são os programas escritos na linguagem JAVA, que será' descrita em maiores detalhes mais a frente.
Em JAVA, é possível escrever aplicações completas, inclusive acessando bancos de dados relacionais independentemente do servidor WEB, bem como é possível implementar os níveis de interface com o usuário e de lógica do negocio, utilizando um servidor de banco de dados para implementar o nível de acesso aos dados.
Isso tudo rodando de uma forma bem segura para que não traga dano algum ao interessado. Para que verifiquemos se tudo está de forma segura, fazemos auditorias onde podemos identificar ameaças e vulnerabilidades através da realização de simulações.
Auditoria de segurança em aplicações web
O serviço auditoria de segurança em aplicações web visa identificar ameaças e vulnerabilidades através da realização de simulações de ataque a aplicações web. A análise consiste na varredura do site em busca de vulnerabilidades conhecidas e da verificação de conformidade com boas práticas de segurança no desenvolvimento e manutenção do site, segundo as normas internacionalmente aceitas do OWASP Testing Guide.
Detalhamento do Serviço
Antes de qualquer atividade a ser realizada, deverá ser assinado um acordo formal de realização do serviço entre as partes envolvidas, a fim de eximir de responsabilidades legais associadas à quaisquer problemas ou complicações oriundos da execução do serviço solicitado. Deverá ser também assinado um Acordo de Confidencialidade (Non-Disclosure Agreement - NDA) entre as partes, para proteger o Cliente contra a divulgação não autorizada de quaisquer resultados ou dados identificados durante a realização desta auditoria.
Detalhamento das Atividades
A análise consiste na varredura do site em busca de vulnerabilidades conhecidas e da verificação de conformidade com boas práticas de segurança no desenvolvimento e manutenção do site, segundo as normas internacionalmente aceitas do OWASP Testing Guide. Abaixo veremos a descrição dos principais itens que serão verificados no site:
Cross Site Scripting (XSS)
A aplicação envia ao browser dados fornecidos pelo usuário sem o devido tratamento. Pode ocasionar execução de código arbitrário no browser da vítima, roubo de sessão, alteração de sites e até downloads de artefatos maliciosos.
Injeção de Código
Dados enviados pelos usuários são tratados (interpretados/executados) pela aplicação sem a validação adequada. Possibilita a execução de instruções (na maioria das vezes maliciosas) diferentes das esperadas pela aplicação.
Inclusão Remota de Arquivos (RFI)
O usuário pode passar parâmetros para aplicação que consistem em nome de arquivos para referência ou upload. Possibilita a inserção de arquivos maliciosos no contexto da aplicação.
Referência direta a objetos
Exposição de referências a objetos internos da aplicação. Possibilita manipular referência direta para objetos arbitrários e contornar mecanismos de autenticação.
Vazamento de Informação
Exposição inadvertida de informações sobre a aplicação e o servidor que a hospeda. Possibilita a obtenção de informações sensíveis para elaboração de ataques contra a aplicação.
Gerenciamento de Sessões
Proteção de tokens, chaves e/ou identificadores de sessão feita de maneira insuficiente. Possibilita captura de credenciais e roubo de sessão.
Canais de Comunicação
Exposição de dados sensíveis na comunicação entre servidorese clientes. Possibilita a captura de informações trocadas entre o cliente e a aplicação podendo culminar em roubo de informações sensíveis e credenciais.
Através da avaliação do comportamento da aplicação mediante esses testes é possível obter um diagnóstico preciso sobre a segurança da mesma. Um modelo de maturidade será elaborado para orientar o desenvolvimento da aplicação, assim como serão recomendadas boas práticas de programação segura.
Produtos Gerados
Com a finalização da auditoria, um relatório técnico detalhado e uma apresentação executiva sobre os testes executados e seus resultados serão geradas, assim como recomendações de medidas de correção.
Além dos produtos listados acima, também poderão fazer parte desta auditoria uma analise das partes envolvidas onde poderão ser discutidos e apresentados os seguintes itens:
O registro formal de todas as reuniões, entrevistas e decisões tomadas ao longo do projeto.
Atualização de toda a documentação do projeto ao longo de sua execução, conforme padrão do Cliente.
Utilização de metodologias e ferramentas reconhecidas internacionalmente.
Acesso a canal de comunicação dedicado operando em regime de sobreaviso 24x7x365 para o tratamento de quaisquer eventualidades ou necessidade de contato.
REFERENCIAS:
https://memoria.rnp.br/newsgen/9710/n5-3.html Acessado em 10/04/2017 às 08:32 Hs.
https://es.slideshare.net/jfredes19/artigo-cientifico-14039479 Acessado em 10/04/2017 às 11:43 Hs.
https://inovedados.com.br/Seguran%C3%A7a-da-informa%C3%A7%C3%A3o Acessado em 10/04/2017 às 09:25 Hs.
https://www.google.com.br/amp/s/www.portalgsti.com.br/2013/05/auditoria-aplicacoes-web.amp Acessado em 10/04/2017 às 11:37 Hs.
http://www.clavis.com.br/servico/servico-auditoria-seguranca-da-informacao-aplicacoes-web.php Acessado em 10/04/2017 às 14:52 Hs.
http://www.devmedia.com.br/artigo-java-magazine-04-seguranca-em-aplicacoes-web/8911 Acessado em 10/04/2017 às 15:43 Hs.

Outros materiais

Outros materiais