none
[Javascript] Burlando os scripts para acesso ao site. E agora? RRS feed

  • Pergunta

  • Olá,
    Tenho um sistema .Net que utiliza alguns scripts em javascript e jquery para validação de campos e alguns acessos de menus.

    Se por acaso o usuário desabilitar os scripts do navegador (é possível certo?) ele terá acesso a todos os campos e menus que antes eram controlados pelos scripts.

    Eu acho que isto é possível até porque alguns navegadores nos permitem adicionar scripts aos mesmos em tempo de execução.

    Como faço para proibir este tipo de acesso?
    Posso gerenciá-los? Saber quem o fez? Proibir?


    Obrigado

    K2rto'4 - Analista Sharepoint
    "Hoje melhor do que ontem, amanhã melhor do que hoje!" 改 善

    quarta-feira, 6 de agosto de 2014 13:45

Todas as Respostas

  • k2rto'4, até onde eu sei, o script no navegador você desabilita a depuração, com isso você não consegue efetuar o debug do script. 

    Mas, para permissões utiliza-se a validação de Users -> Roles, onde o usuário tem determinadas permissões, validados no login da aplicação. 

    Em algumas pesquisas a um bom tempo atrás, é você manter seu menu no banco de dados, e retorná-lo em forma de lista e monta-lo de acordo com as permissões do usuário, e isso não era utilizando JS ou Jquery, era direto no code behind. 

    Hoje como trabalho com MVC e DevExpress meu menu é um XML, onde no login eu já valido seus nodes e de acordo com cada um tem determinada permissão para visualização, e isso também ocorre para o bloqueio de métodos, mas como assim métodos, digamos que o usuário em determinada tela tenha apenas permissão para visualização e não alteração, ai você efetua o bloqueio dos métodos de edição. 

    No seu caso se fosse eu, iria montar o menu retornando do banco os dados de acordo com a permissão ou perfil do usuário logado. 

    Espero que ajude. 

    Abraço.

    quarta-feira, 6 de agosto de 2014 14:07
  • Olá Fernando, tudo certo?

    Entendi sim o que você falou. E concordo em colocar os controles no code behind, e irei fazer isto também.

    Mas voltando a pergunta, qualquer usuário consegue então desabilitar a depuração de script e acessar campos antes formatados e ocultados por scripts, e até inserir letras em campos antes formatados para apenas aceitar números, certo?

    Logo as aplicações são vulneráveis a este tipo de manipulação?

    Obrigado


    K2rto'4 - Analista Sharepoint
    "Hoje melhor do que ontem, amanhã melhor do que hoje!" 改 善

    quarta-feira, 6 de agosto de 2014 14:33
  • Se o usuário desabilita a depuração, até onde eu sei, ele não consegue debugar, e isso só o desenvolvedor consegue fazer, porque a aplicação publicada, não fornece esse tipo de "falha".

    A falha de segurança de um sistema web é preocupante no sentido de sql injection, onde ai sim, você pode sofrer uma "invasão", utilizando o sql injection o invasor insere no seu campo texto uma instrução Sql, por isso utiliza-se muito a validação de campos text, números ou em javascript ou no code behind mesmo, sem deixar que esse dado chegue no banco. 

    https://www.owasp.org/images/4/42/OWASP_TOP_10_2007_PT-BR.pdf

    http://klauslaube.com.br/2012/04/15/problemas-de-seguranca-em-aplicacoes-web.html

    Os links podem ajudar, pesquise sobre segurança de aplicações web, o conteúdo é bem extenso. 

    quarta-feira, 6 de agosto de 2014 14:41