it-swarm-es.com

¿Cómo el propietario de un sitio web descifra Viewstate y cookies de ASP.NET?

Me gustaría auditar mi estado de visualización para obtener información que no quiero que se envíe al cliente. ¿Cuáles son los pasos necesarios para descifrar esta información en forma legible por humanos?

¿Cómo descifraría las cookies?

¿Hay alguna herramienta (similar a Firesheep) que ayude con el proceso?


3
goodguys_activate

Como mencionó @blowdart , el valor predeterminado es no cifrar el estado de la vista (de nuevo, creo que eso se cambió en las últimas versiones).

Si solo desea realizar una auditoría, configure el estado de la vista en NO encriptar (ya sea el predeterminado o apáguelo manualmente), y luego no necesita desencriptarlo. Luego, cuando haya terminado, puede volver a activar el cifrado de estado de vista.

Aunque si se está asegurando de que no haya información confidencial de todos modos, probablemente no necesite el cifrado, solo configúrelo para firmar ...

En cuanto a las herramientas, pruebe cualquiera de estas (si no está encriptada):

También encontré esta pregunta en Stack Overflow.

3
AviD

Sí, esto es posible. Consulte https://stackoverflow.com/questions/22814/how-to-decode-viewstate He proporcionado el código fuente completo allí.

1
Basil

Suponiendo que haya activado el cifrado, que no es el predeterminado, ASP.NET utilizará el sitio web clave de la máquina como la clave utilizada para cifrar y firmar ViewState y las cookies. Como puede configurar las claves de la máquina (para validación y descifrado) a un valor conocido en web.config, puede usar esto para descifrar manualmente si es necesario.

La configuración también le permite anular qué algoritmos se utilizan, por lo que deberá establecerlos en web.config también para obtener un punto de partida conocido.

De forma predeterminada, es 3DES, en ECB con relleno PKCS7, y el estado de vista en sí es una cadena de base 64, por lo que tomaría la cadena de base64, volvería a convertirla en una matriz de bytes y luego empujaría a través de un descifrador 3DES para recuperar los datos .

1
blowdart