Definición de seguridad del software

8

Estoy buscando una definición teórica de seguridad del software. Y necesito citar algún libro en un artículo.
La mayoría de los libros comienzan suponiendo que el usuario sabe lo que es y probablemente tengan razón.

Mi pregunta es la definición más aceptada de seguridad del software.

    
pregunta bluefoot 23.07.2011 - 21:51
fuente

7 respuestas

11

La definición por Gary McGraw :

  

La seguridad del software es la idea del software de ingeniería para que continúe funcionando correctamente bajo un ataque malicioso

    
respondido por el bluefoot 24.07.2011 - 21:46
fuente
5

Que yo sepa, no hay una definición generalmente aceptada. Algunos documentos sobre computación confiable definen "software confiable" como software que funciona de acuerdo con las expectativas del usuario. Más bien subjetivo y volátil.

Tal vez debería probar un enfoque diferente y utilizar el término generalmente más aceptado como ingeniería de seguridad como un comienzo. El libro de ingeniería de seguridad de Ross Anderson debería contener algún tipo de definición y es una buena referencia. Luego diga que define la seguridad del software como la parte del software de la ingeniería de seguridad (o ingeniería de seguridad aplicada al software).

    
respondido por el pepe 23.07.2011 - 22:05
fuente
1

De acuerdo con Jason Andress apud de la Ley de EE. UU., en su libro Lo básico de la seguridad de la información , la seguridad de la información se define como:

  

Proteger la información y los sistemas de información del acceso, uso, divulgación, interrupción, modificación o destrucción no autorizados

Como los sistemas de información (software) existen para persistir y manipular la información, esto puede ser una buena definición de la seguridad del software.

    
respondido por el bluefoot 24.07.2011 - 16:16
fuente
1

No estoy seguro de que exista una buena definición que pueda simplemente "citar".

Por ejemplo, ¿qué significa "TCP / IP"? Bueno, significa "protocolo de control de transmisión / protocolo de internet". Eso es completamente correcto, pero al mismo tiempo, completamente inútil. Si no sabía qué era TCP / IP para empezar, expandir el acrónimo no lo ayudará.

Una definición útil es la siguiente: Los hackers explotan ciertos tipos de errores en el software para ingresar en la computadora; La seguridad del software es la ciencia de deshacerse de esos errores.

Por ejemplo, una vulnerabilidad de los piratas informáticos es el "desbordamiento de búfer". Ocurren porque se reserva una cierta cantidad de memoria para guardar algo, pero los hackers proporcionan más de lo que el programador esperaba. Por ejemplo, en una base de datos que contiene el nombre de usuario, el programador puede asumir que nadie tendrá un nombre con más de 1000 letras. Es cierto, no lo harán, pero eso no impedirá que los piratas informáticos intenten ingresar nombres falsos durante tanto tiempo y, cuando lo hacen, los búferes se desbordan, los piratas informáticos sobrescriben otras partes de la memoria y toman el control del sistema.

Sabemos por qué los desbordamientos de búfer son tan comunes. Tome el lenguaje C / C ++, por ejemplo. En la década de 1970, se desarrolló con frecuencia el código reutilizado como "strcpy ()" y "sprint ()" que copia los buffers en la memoria sin verificar la longitud. Por lo tanto, los piratas informáticos simplemente buscan software para los usos de estos fragmentos de código y encuentran estos errores. La seguridad del software hace esto antes que el hacker, encontrando todos los usos de "strcpy ()" y eliminándolos.

    
respondido por el Robert David Graham 27.07.2011 - 19:48
fuente
1

"La seguridad en el software es una propiedad no funcional donde el propósito principal es proporcionar una seguridad razonable para el correcto suministro de la (s) función (es) de dicho software".

Sin calificar el propósito de dicho software (¿Está diseñado para procesar información o controlar un microondas?) una definición tiene que ser, por su propia formulación, amplia.

Mis argumentos para la definición anterior son aproximadamente estos:

  • La seguridad es una propiedad no funcional, es decir, la seguridad generalmente no existe por sí sola
  • El propósito final de la seguridad en el software es garantizar la "corrección" del software durante la operación, falla, ataque, error, etc.
  • Un software tiene un propósito (con suerte) y cumple este propósito a través de una serie de funciones y estas funciones requieren garantía.

Editar: Lo siento, pero ahora me he dado cuenta de que solo he proporcionado la mitad de la respuesta a tu pregunta. Falta la parte sobre citar un libro. Todavía tengo que encontrar una definición que capture suficientemente la esencia de la seguridad del software.

    
respondido por el Christoffer 28.07.2011 - 10:41
fuente
1

Creo que una definición más amplia del aspecto de seguridad es importante. P.ej. La seguridad es el proceso de mantener un nivel aceptable de riesgo. El riesgo puede pertenecer a cada aspecto de la famosa tríada de la CIA: confidencialidad, integridad y disponibilidad, y las amenazas incluyen no solo ataques maliciosos, sino también incompetencias y accidentes, como señala Graham.

Así que preferiría algo más como

  

La seguridad del software es el proceso del software de ingeniería que funciona de manera robusta ante ataques maliciosos, accidentes y las actualizaciones y el mantenimiento necesarios durante su ciclo de vida.

    
respondido por el nealmcb 01.08.2011 - 04:30
fuente
0

Un profesor del departamento de ingeniería de software en Oxford dijo (y no tengo idea de si se trata de una paráfrasis de otro lugar o de una declaración original):

  

Asegurar un proceso o actividad significa actuar para garantizar que el   cosas que deberían suceder como parte de ese proceso, y las cosas   eso no debería no hacerlo.

    
respondido por el user185 28.07.2011 - 11:00
fuente

Lea otras preguntas en las etiquetas