Cuando se produce una excepción en una aplicación .NET, el resultado de la excepción también incluye la ruta y el nombre del archivo de código que residía en la máquina del desarrollador. Esto comparte cierta información que es útil para la depuración, pero también puede presentar un problema de seguridad como se muestra en el siguiente ejemplo:
Enlaimagenanterior,eldirectorioD:\talkprovienedelamáquinadeldesarrolladorynodelusuariofinal.
SupongamosquetengounarchivodeVisualStudioSolutionquetieneunarchivoPFXconlapartedelacontraseñadelnombre:
Example:d:\mysecretproject\ObscureFOSSproject\Signer-PW-Is-test123.pfx
Porsupuesto,test123noeslacontraseñarealdepfx,perosiesunacontraseñamássensiblequeseusóparaotrospropósitos(porejemplo,administradordedominio).
Pregunta:
¿Dóndeestáestacadena"Signer-PW-Is-test123.pfx" almacenada en la .NET DLL o en el exe?
¿Está almacenado en el archivo OBJ?
¿Cómo puedo eliminar estos datos o anonimizar la información para no filtrar lo que no es necesario, pero aún así es posible que los ingenieros depuren la aplicación?