¿Cómo sé que mis herramientas no están en peligro? [cerrado]

5

Después de leer diferentes artículos, sobre todo / en relación con:

Me pregunto: ¿Cómo puedo estar seguro de que mis cadenas de herramientas y el software de la aplicación no están comprometidos?

La respuesta obvia pero alargada es escribir un compilador en lenguaje de máquina para un procesador específico, luego un sistema operativo, y así sucesivamente. (Aunque esto no descarta la posibilidad de un compromiso de hardware). El software de fuente abierta es fantástico, pero eso no elimina la posibilidad de un hack de Kevin Thompson, como no permitir que una aplicación compilada abra una conexión en el puerto TCP 12345 (para Ejemplo), y unirlo sin problemas a (por ejemplo) 12344 a menos que se cumplan ciertas condiciones. (Crítico para una aplicación como nmap).

¿Qué tan probables son estos ataques esencialmente "invisibles" que se incorporan a nuestro software sin nuestro conocimiento?

    
pregunta Ephemera 02.02.2015 - 09:32
fuente

2 respuestas

8

En realidad, no puedes. Incluso sin hablar de un compromiso real, desde una perspectiva de seguridad, puede asumir que su aplicación ya contiene errores que pueden ser al menos tan efectivos como un compromiso de software.

Por eso, al crear un sistema seguro, su seguridad no debe confiar en una sola herramienta. En su lugar, debe utilizar un enfoque de seguridad en capas, la aplicación final está en el centro, agregando varias capas de seguridad sobre cada una con el siguiente enfoque:

  • La capa externa N + 1 se encarga de controlar la seguridad de la capa interna N,
  • Si bien puede haber una forma de pasar datos / sesión de la capa N + 1 a la capa N (piense en proxies, firewalls, etc.), no debe haber una manera fácil de pasar de la capa N a N + 1. / li>

Tal esquema se puede lograr:

  • En un host que utiliza una combinación de todas las diferentes herramientas de segmentación proporcionadas por su sistema operativo (cada servicio ejecuta un usuario diferente con derechos mínimos, uso de jails / container / ..., etc.),
  • En una red que utiliza proxy, firewalls, NIDS, monitoreo, etc. (podría ser una buena idea usar plataformas ligeramente heterogéneas)

Esto le proporcionará dos ventajas en caso de que se utilice cualquier tipo de puerta trasera:

  • La actividad inusual tiene muchas más posibilidades de ser detectada, ya que al menos requeriría algo de tiempo antes de subir las capas,
  • Si configura su sistema correctamente, la falla se limitará al área realmente accesible para la puerta trasera, todo el resto de los datos permanecerán seguros.
respondido por el WhiteWinterWolf 02.02.2015 - 11:11
fuente
7

Uno de los artículos a los que se vincula - Si la NSA tiene ha estado pirateando todo, ¿cómo nadie los ha visto venir? - hace una suposición al plantear la pregunta:

  

"Si la NSA era dueña de todo lo que estaba a la vista (y según todas las cuentas que tienen), ¿cómo es posible que nadie los haya visto?"

La premisa para esta pregunta es incorrecta, ya que por lo que hemos descubierto acerca de las capacidades avanzadas de ataque de la NSA, también hemos descubierto que son muy reacios a usar ataques activos y que su los procedimientos internos incluso establecen que se detenga si algo parece extraño, o si se detectan signos de, por ejemplo, herramientas de detección de intrusos. (Me parece recordar que Tripwire se menciona específicamente en este contexto en algún lugar.)

El modus operandi de la NSA parece ser principalmente el monitoreo pasivo, ocasionalmente la infiltración de objetivos jugosos, y rara vez está activo, simplemente porque los ataques activos corren el riesgo de ser detectados . Probablemente aún más en estos días ahora que el conocimiento de la amenaza, si es probable que no esté cerca de cada ataque específico, está a la vista. Sí, los ataques activos se usan, pero como conllevan el riesgo de ser detectados y posiblemente incluso de ingeniería inversa (dependiendo de las capacidades percibidas y reales del objetivo), se utilizan con mucha menos frecuencia de la que uno podría tener la impresión de.

Por, como escribió GZBK , implementando un enfoque de seguridad de múltiples capas, incluyendo errores mundanos , usted también reduce el impacto de una infracción. Y como para casi cualquier persona, es más probable que los simples errores mundanos sean mucho más probables que los piratas informáticos de la NSA y que se haya implantado puertas traseras en el software, esto lo protege contra una amenaza significativamente más probable, mientras que también proporcionándole un grado de protección contra la amenaza menos probable.

Una herramienta como un compilador o un sistema operativo es una pieza de software muy compleja, y los procesos de desarrollo de software estándar no son tan rigurosos como los que se encuentran, por ejemplo, en el hardware espacial o la aviación. Las probabilidades de que un error mundano se convierta en un sistema operativo parecen ser significativamente más altas que las de un adversario a nivel nacional. Eso no significa descartar por completo la posibilidad de atacantes a nivel de estado-nación, pero sí significa priorizar e implementar contramedidas razonables basadas en el modelo de amenaza determinado. El alarmismo puede ayudar a un político a ser reelegido, pero no es un buen enfoque para la seguridad general.

    
respondido por el a CVn 02.02.2015 - 11:54
fuente

Lea otras preguntas en las etiquetas