Mostrando las entradas con la etiqueta seguridad. Mostrar todas las entradas
Mostrando las entradas con la etiqueta seguridad. Mostrar todas las entradas

sábado, 22 de febrero de 2014

The Original Hacker Nro4

Llegará prontamente una nueva edición de OriginalHacker[0], que continua con la misma dedicación en la explicación y con una exactitud teórica y práctica que asombra linea a linea.


Es tán copado y entretenido para quienes nos gusta hacer mover nuestro cerebro que cuando terminás de leerlo te quedás con ganas de más.

En esta entrega que sale a la Luz el próximo 25 de Febrero nos encontraremos con lo siguiente.


[Bash Scripting Avanzado] Bash un lenguaje que viene instalado por defecto en todos nuestros Linuxes del que Eugenia nos sigue mostrando su magía.

[Seguridad Informática] Se presenta y explica EuropioCode [1] una implementación de Seguridad respetando el modelo SAC, que también será brevemente explicado en el proceso.

[Ingeniería Inversa] Debo aceptar que esta es la sección que más estoy disfrutando en la primera nos involucramos en el proceso de desarrollo y sus pasos para aplicar "Ingenieria Inversa" como corresponde en nuestras aventuras de desarrollo.

[Ingenieria Inversa] El segundo amor de Eugenia (Python) y la mejor explicación que encontré (o que me encontró a mí) sobre Decoradores y Wrappers que dejará por el piso mi intención de explicar en mi publicación "Rockeandola Con Python Parte 2" (que saldrá en unos minutos o mañana no lo sé aún)

[EuropioEngine Lab] Como es aplicada la Capa de Seguridad desarollada para EuropioEngine. [2]

[0] originalhacker.org
[1] https://launchpad.net/europiocode
[2] http://www.europio.org/

miércoles, 8 de enero de 2014

Otros Atributos de Calidad Capitulo 12

Variabilidad

La variabilidad es una forma especial de modificabilidad. Se refiere a la habilidad de un sistema y sus artefactos tales como requerimientos, planes de test y especificación de configuración de soportar la producción de un conjunto de variantes que difieran entre si planeado de antemano.

Portabilidad

Es un caso especial de modificabilidad. La portabilidad se refiere a la facilidad con que un Software que fue construido para correr en una plataforma puede ser cambiada a correr en una plataforma diferente. La portabilidad se logran minimizando las dependencias con la plataforma en el programa, aislando las dependencias a ubicaciones bien definidas, y escribiendo el programa para que corra sobre una "máquina virtual" (como lo es Java Virtual Machine).

Desarrollo distribuido

La capacidad del desarrollo distribuido es la calidad del diseño para soportar el desarrollo de software distribuido. Muchos sistemas en estos días son desarrollados por equipos distribuidos globalmente. Uno de los problemas que debe ser superado con equipos distribuidos es coordinar sus actividades.

Escalabilidad

Dos tipos de escalabilidad son escalabilidad horizontal y escalabilidad vertical. La escalabilidad horizontal (scaling out) s refiere a la agregación de más recursos a unidades lógicas, como ser agregar otro server a un cluster de servidores. La escalabilidad vertical (scaling up) se refiere a la agregación de más recursos a una unidad física, como sería agregar más memoria a una computadora. En ambientes Cloud la escalabilidad horizontal es llamada elasticidad. Elasticidad es la propiedad que permite a los clientes agregar o remover maquinas virtuales a un pool de recursos.

Capacidad de despliegue

Capacidad de despliegue (deployability) se refiere a como un ejecutable llegar a la plataforma del host y como esta es subsecuentemente invocada. Algunos de los inconvenientes involucgrados en el despliege de software son: Como hacer para llegar al host (push, donde las actualizaciones son enviadas a los usuarios sin ser pedidos, o pull, donde los usuarios deben explicitamente pedir las actualizaciones)? Como este es integrado al sistema existente? Puede esto realizarse cuando el sistema existente está en ejecución?

Movilidad

Movilidad aborda el problema de movimiento y prestaciones de una plataforma (ej, tamaño, tipo de pantalla, tipo de dispositivos de entrada, disponibilidad, volumen de ancho de banda, y vida de la batería). Los problemas en movilidad incluyen administración de la batería, reconexión después de un periodo de desconexión, y el número de diferentes interfaces de usuario necesarias para soportar múltiples plataformas.

Capacidad de Monitoreo

(Monitorability) trata de la habilidad del equipo de operaciones para monitorear el sistema mientras se está ejecutando. Cosas como longitudes de cola, tiempo promedio de procesamiento de transacciones, y la salud de varios componentes deberían ser visibles al equipo de operaciones de manera que puedan tomarse las acciones correctivas en caso de problemas potenciales.

Seguridad

La seguridad del software es acerca de la habilidad del software para evitar entrar en estados que causen o provoquen daños, lesiones, o perdida de la vida a los actores en el ambiente del software, y a recuperar o limitar el daño cuando lo hace entrar en un mal estado. Otro manera de decir esto es que la seguridad tiene que ver con la prevención de y recuperación de fallas peligrosas.
La seguridad no es lo mismo que confiabilidad. Un sistema puede ser confiable (consistente con sus especificaciones) pero todavía inseguro (por ejemplo, cuando la especificación ignora condiciones que dan lugar a una acción insegura)

sábado, 7 de diciembre de 2013

Seguridad Capitulo 9

El ataque contra un sistema puede ser caracterizado como un ataque contra la confidencialidad, integridad o disponibilidad de un sistema o sus datos.

La confidencialidad es la manutención de los datos lejos de aquellos que no deberían tener acceso mientras se concede el acceso a quienes si deberían tenerlo.

La integridad significa que no existen modificaciones no autorizadas o eliminación de los datos.

Y disponibilidad significa que el sistema está accesible a aquellos que tienen que usarlo.

El énfasis en la distinción de varias clases de actores en la caracterización lleva a muchas de las tácticas usadas a lograr seguridad.  Identificando, y autorizando actores estás tácticas intentan determinar que usuarios o sistemas tienen derecho a usarlo o que tipo de acceso tienen a un sistema.

Hay una suposición de que no hay táctica de seguridad a prueba de todo y que los sistemas se verán comprometidos. Por lo tanto, las tácticas existen para detectar un ataque, limitar la propagación de cualquier ataque, y para reaccionar y recuperarse de un ataque.

La recuperación de un ataque involucra muchas de las mismas tácticas como las de disponibilidad y, en general, involucra devolver el sistema a un estado consistente antes de cualquier ataque.