Quando si verifica un'eccezione in un'applicazione .NET, l'output dell'eccezione include anche il percorso e il nome file del file di codice che risiede sul computer dello sviluppatore. Questo condivide alcune informazioni utili nel debug, ma può anche presentare un problema di sicurezza come mostrato nell'esempio seguente:
Nell'immaginesopraladirectoryD:\talksprovienedallamacchinadeglisviluppatorienondaquelladell'utentefinale.
SupponiamodiavereunfiledisoluzionediVisualStudioconunfilePFXconlapartepassworddelnome:
Example:d:\mysecretproject\ObscureFOSSproject\Signer-PW-Is-test123.pfx
Ovviamentetest123nonèlaverapasswordpfx,masefosseunapasswordpiùsensibilecheèstatautilizzataperaltriscopi(adesempiol'amministratoredeldominio).
Domanda:
Doveècontenutaquestastringa"Signer-PW-Is-test123.pfx" nella DLL .NET o exe?
È memorizzato nel file OBJ?
Come posso eliminare questi dati, o rendere anonime le informazioni in modo da non divulgare ciò che non è necessario, ma consentire comunque agli ingegneri di eseguire il debug dell'applicazione.