Como você pode saber se o viewstate em um aplicativo ASP.Net foi adulterado?

StackOverflow https://stackoverflow.com/questions/68764

  •  09-06-2019
  •  | 
  •  

Pergunta

Durante uma discussão sobre segurança, um desenvolvedor da minha equipe perguntou se havia uma maneira de saber se o viewstate foi adulterado.Tenho vergonha de dizer que não sabia a resposta.Eu disse a ele que iria descobrir, mas pensei em dar a alguém aqui a chance de responder primeiro.Eu sei que existe alguma validação automática, mas existe uma maneira de fazer isso manualmente se a validação de eventos não estiver habilitada?

Foi útil?

Solução

Diretiva de página EnableViewStateMac

Outras dicas

Por padrão, o ViewState é codificado em MIME e hash com uma chave MAC (da máquina ou do arquivo web.config), o que ajuda a evitar adulterações (ou seja,a decodificação explode).Você também pode criptografar e compactar o ViewState se desejar, para maior proteção e menos sobrecarga, respectivamente.Ver MS ViewState e CodeProject.com

Você pode fazer isso manualmente, mas estaria apenas implementando o mesmo algoritmo que já existe para você.Geralmente é uma má ideia desabilitar a validação do ViewState em uma página.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top