Seguridad de las aplicaciones en la plataforma .net

0

En .net usamos la clase SecureString para mantener las variables de nuestras aplicaciones en la memoria, de manera segura.

  

Microsoft dice : representa el texto que debe mantenerse confidencial. El texto se cifra para su privacidad cuando se usa y se elimina de la memoria de la computadora cuando ya no se necesita. Esta clase no puede ser heredada.

Esta clase está en una biblioteca llamada mscorlib.dll . Tengo dudas sobre la seguridad. ¿Puede alguien reemplazar esta biblioteca con una dañada? Un malware puede corromper esta clase para pasar por alto su seguridad y luego puede volcar la memoria y acceder a mis variables en texto plano. ¿Es un posible ataque? Si es así, ¿cómo puedo proteger mi software contra este ataque?

    
pregunta Batuhan 10.05.2015 - 18:45
fuente

1 respuesta

2

SecureString no lo protege si ya tiene un malware con un alto privilegio. No es posible hacerlo, por SecureString o cualquier otra cosa. No puedes proteger tu software de este tipo de ataque; Si no puede confiar en su copia de mscorlib o cualquier otra cosa que se esté ejecutando en su proceso, ya perdió.

Lo que SecureString hace es asegurarse de que si una máquina se ve comprometida en el futuro, cualquier malware recién instalado no podrá recuperar el contenido histórico de SecureString del almacenamiento utilizado anteriormente. Esto podría hacer la vida más difícil para el atacante, ya que tendría que mantener la ejecución sin que se detectara y eliminara la infección, para recoger el contenido a medida que se usa, en lugar de descargar el contenido masivo de una sola vez.

Esta es una victoria marginal en el mejor de los casos. Dependiendo de la aplicación y su modelo de amenaza, SecureString puede ser una mitigación valiosa o puede ofrecer poco o ningún valor.

    
respondido por el bobince 10.05.2015 - 18:54
fuente

Lea otras preguntas en las etiquetas