2009-05-14 15 views
8

¿Hay alguna guía sobre el uso de SecureString de manera segura? No veo que haya alguna forma de siquiera crear la cadena segura en primer lugar, ya que en algún momento necesitará que se ingrese desde un cuadro de texto.¿SecureString es seguro?

Respuesta

5

Se trata de reducir la superficie de ataque. No hará mágicamente que su aplicación sea 100% segura, pero ciertamente ayuda.

0

Incluso si el contenido de la cadena tiene que provenir de la entrada del usuario, vale la pena usar SecureString si el valor contiene información confidencial. Cuando su aplicación lea los contenidos del cuadro de texto, coloque el valor en un SecureString a la primera oportunidad. Como dice Mehrdad, en este caso no es 100% seguro, pero es más seguro que no usar SecureString.

9

El propósito de SecureString es cifrar el almacenamiento de los datos en la memoria. Esto protege contra escaneos de memoria de texto claros. Esto puede ser aún más importante si la porción de memoria que contiene la cadena se mueve a un archivo de intercambio durante las operaciones de búsqueda.

Es un poco como un bloqueo de giro del volante de un automóvil. No impedirá que alguien que esté resuelto robe tu automóvil, pero sin duda aleja a los ladrones oportunistas.

+1

+1 para analogy. – Ikke

3

La cadena está fácilmente disponible para cualquier persona con acceso de depurador a la máquina, utilizando herramientas como ojo de lagarto. De hecho, el community notes on MSDN deja esto en claro.