[OFF] SEGURANCA
Olá, boa noite a todos!
Gostaria de saber sobre técnicas de segurança utilizadas em paginas ASP.net.
um exemplo de ataque que um pagina poderia sofrer seria os de redirecionamento arbitrário de URL:
O redirecionamento ou encaminhamento é uma funcionalidade da aplicação em que o aplicativo de origem redireciona o acesso do usuário para outro localidade ou para alguma função dentro da própria aplicação. Um caso tÃpico de utilização é o processo de autenticação: uma vez que o usuário tente acessar uma área restrita do aplicativo, ele automaticamente redireciona o cliente para o formulário de autenticação.
Em casos especÃficos, esta funcionalidade pode ser utilizada por um atacante para redirecionar um cliente legÃtimo para uma localidade arbitrária, transferindo, por exemplo, a confiança estabelecida pelo usuário do aplicativo legÃtimo para um sÃtio que contenha material malicioso.
O redirecionamento não representa uma vulnerabilidade de segurança direta, entretanto, ela pode ser explorada em ataques de phishing (engenharia social) fazendo o usuário acreditar que está em uma área de conteúdo legÃtimo e fornecendo credenciais ou dados sensÃveis de maneira arbitrária. O ataque também pode ser utilizado de maneira extensiva para inflacionar sistemas de publicidade e remuneração por click.
Se alguem puder compartilhar alguma coisa, poste ai.
vlw
Gostaria de saber sobre técnicas de segurança utilizadas em paginas ASP.net.
um exemplo de ataque que um pagina poderia sofrer seria os de redirecionamento arbitrário de URL:
O redirecionamento ou encaminhamento é uma funcionalidade da aplicação em que o aplicativo de origem redireciona o acesso do usuário para outro localidade ou para alguma função dentro da própria aplicação. Um caso tÃpico de utilização é o processo de autenticação: uma vez que o usuário tente acessar uma área restrita do aplicativo, ele automaticamente redireciona o cliente para o formulário de autenticação.
Em casos especÃficos, esta funcionalidade pode ser utilizada por um atacante para redirecionar um cliente legÃtimo para uma localidade arbitrária, transferindo, por exemplo, a confiança estabelecida pelo usuário do aplicativo legÃtimo para um sÃtio que contenha material malicioso.
O redirecionamento não representa uma vulnerabilidade de segurança direta, entretanto, ela pode ser explorada em ataques de phishing (engenharia social) fazendo o usuário acreditar que está em uma área de conteúdo legÃtimo e fornecendo credenciais ou dados sensÃveis de maneira arbitrária. O ataque também pode ser utilizado de maneira extensiva para inflacionar sistemas de publicidade e remuneração por click.
Se alguem puder compartilhar alguma coisa, poste ai.
vlw
Uma solução para isso, é nunca usar redirecionamento por querystring, e sim, por uma variável de sessão ou algo interno no server.
Existem muitos outros meios de se [Ô]sacanear[Ô] uma aplicação web:
- URL Injection
- Cross-site scripting
- Javascript Injection
- SQL Injection
Entre muitos outros...
O truque, é fazer verificações para tudo. Não que isso não deva ser feito em uma aplicação desktop, mas em aplcações web esses ataques são mais comuns. Fazer o seu site acessar um webservice com classes próprias, também é uma maneira de evitar(e até suprimir) esses ataques. Se você usa objetos de leitura/gravação de dados, diretamente no seu webform, com certeza sua aplicação está mais vulnerável. Coloque sua página em uma [Ô]camada[Ô] de rede e seu webservice em outra, que por sua vez estará fechada para acesso externo e somente com acesso interno(da sua aplicação). Todos os métodos do webservice, recebem como parâmetro um objeto [Ô]conexão[Ô], que contém usuário e senha, assim, antes de fazer qualquer coisa no webservice, verifique se usuário e senha estão corretos e só então faça o que o webmethod deve fazer. Quando chamar o webmethod de dentro da sua aplicação, envie o usuário logado(usuário e senha). E se quiser, poderia até mesmo abrir esse webservice publicamente, e qualquer um que queira consumÃ-lo vai ter que ter dados de autenticação.
Existem muitos outros meios de se [Ô]sacanear[Ô] uma aplicação web:
- URL Injection
- Cross-site scripting
- Javascript Injection
- SQL Injection
Entre muitos outros...
O truque, é fazer verificações para tudo. Não que isso não deva ser feito em uma aplicação desktop, mas em aplcações web esses ataques são mais comuns. Fazer o seu site acessar um webservice com classes próprias, também é uma maneira de evitar(e até suprimir) esses ataques. Se você usa objetos de leitura/gravação de dados, diretamente no seu webform, com certeza sua aplicação está mais vulnerável. Coloque sua página em uma [Ô]camada[Ô] de rede e seu webservice em outra, que por sua vez estará fechada para acesso externo e somente com acesso interno(da sua aplicação). Todos os métodos do webservice, recebem como parâmetro um objeto [Ô]conexão[Ô], que contém usuário e senha, assim, antes de fazer qualquer coisa no webservice, verifique se usuário e senha estão corretos e só então faça o que o webmethod deve fazer. Quando chamar o webmethod de dentro da sua aplicação, envie o usuário logado(usuário e senha). E se quiser, poderia até mesmo abrir esse webservice publicamente, e qualquer um que queira consumÃ-lo vai ter que ter dados de autenticação.
Boa KerpLunk. Muito obrigado pela colaboração.
O pessoal hoje em dia quer fazer páginas mas não quer saber de segurança. Isso se torna um prato cheio para os invasores.
Estou tentando me atualizar sobre o assunto para evitar ataques e dor de cabeça. Recomendo isso para todos.
Se alguem tiver um tutorial sobre o assunto, poste ai pra quem quiser se informar.
Muito obrigado mais uma vez. vlw
O pessoal hoje em dia quer fazer páginas mas não quer saber de segurança. Isso se torna um prato cheio para os invasores.
Estou tentando me atualizar sobre o assunto para evitar ataques e dor de cabeça. Recomendo isso para todos.
Se alguem tiver um tutorial sobre o assunto, poste ai pra quem quiser se informar.
Muito obrigado mais uma vez. vlw
Tópico encerrado , respostas não são mais permitidas