¿Qué definiría como un intento de hacker "avanzado"?

8

Este tema podría ser apenas un tema de programación. Aunque, desde mi punto de vista, es de gran preocupación para los programadores debido a nuestra responsabilidad de desarrollar código seguro.

Recientemente, se ha hablado mucho sobre las vulnerabilidades web en mi país. Algunas organizaciones siguen publicando contraseñas y bases de datos que piratearon en los últimos meses. En unos pocos días, más de 200,000 credenciales de inicio de sesión han sido expuestas al público. La mayoría de los propietarios del sitio no sabían nada sobre los intentos, hasta este momento.

Esta cita de un encargado de prensa realmente se quedó conmigo:

  

Esto no es un ataque avanzado. El método utilizado para obtener las contraseñas es relativamente simple.

Quiero saber: ¿cuáles son algunas de las características de los "ataques avanzados"?

Mis pensamientos:

¿Diría que el servicio de inicio de sesión de forzado brutal es avanzado? Probablemente no. Tipo de baja tecnología. ¿Se adelantó una vez, cuando se conectaron los marcadores automáticos y finalmente se conectó a la línea de entrada (teléfono) en bancos y federaciones? En aquel entonces, tal vez.

Si fuerza de forma bruta un servicio de inicio de sesión y evita los sistemas y registros de bloqueo integrados, su ataque podría considerarse avanzado. Si copia con éxito una base de datos completa a través de un formulario de entrada no seguro, ¿está avanzado o no?

¿Está avanzado si una persona (Bill?) sin ninguna habilidad de TI obtuvo la base de datos de la empresa XY? ¿Por qué? Porque Bill es un técnico de servicio de HVAC y su amigo está empleado en XY. Probablemente, es avanzado, pero no es realmente avanzado técnicamente.

Si hablamos de un usuario que llegó a través de la cadena de conexión a través de una página web de adminpage - Intenté que la cadena de conexión descubriera que no hay filtro IP - okey que casi no se llama intento de hackeo. Pero, si el usuario, en primer lugar, obtuvo acceso al sistema de archivos (¿tiene una fuga en un archivo-control-navegador?) Y descargó todos los archivos web.config / app.config en primer lugar. ¿Está avanzado? El usuario, sin duda, encontrará varios sitios que utilizan los mismos controles de explorador de archivos. ¿Es grave? Probablemente ..

Una pregunta que, al menos yo, a menudo se topa con preguntas "¿es md5-hash suficientemente seguro?", el hecho de "sí, si necesitan forzarlo, para obtener sus datos". Si obtuvieron la base de datos con el inicio de sesión y la contraseña, algunos de ustedes ya lo saben: No.

Pregunta
Es más como un comwiki aquí, que una pregunta específica. Me gustaría leer sobre las perspectivas y la experiencia en el tema. ¿Qué haces para "más seguro"? ¿Qué define usted como fallas de seguridad obvias o bien conocidas? Dichas preguntas y discusiones son valiosas para tener más en cuenta la seguridad y un sistema más seguro contra intrusiones cuando se desarrolla.

    
pregunta Independent 27.10.2011 - 14:21
fuente

5 respuestas

11
  

¿Qué define un tipo de ataque avanzado? Avanzado para quién y cómo?

En última instancia, un ataque es un ataque. No importa si utilizaron técnicas de ingeniería social para hacer que un usuario confiado divulgara sus credenciales, métodos de fuerza bruta, obtuviera una copia del software y realizara ingeniería inversa o usara el sistema en métodos distintos a los previstos, o herramientas simplemente para desactivar el sistema y dejarlo inoperativo durante un período de tiempo.

La mayoría de los ataques requieren algún tipo de sofisticación y conocimiento de los usuarios del sistema, cómo funciona el sistema o dónde residen los componentes y cómo acceder a ellos. Se podría decir que cualquier ataque exitoso es avanzado: superó sus medidas de seguridad para evitar ataques. También puede decir que cualquier ataque que degrade el servicio, incluso si no deshabilita el sistema, también tiene éxito ya que su sistema actual no pudo resistirlo.

  

¿Qué haces para "más seguro"?

Más seguro depende del sistema que se está construyendo.

Recomendaría leer el trabajo de Gary McGraw. Escribió tres libros que son especialmente interesantes para las personas que crean software. Creación de software seguro: cómo evitar problemas de seguridad de forma correcta , Software de explotación: cómo descifrar el código y Seguridad del software: creación Security In explica cómo construir software seguro, cómo romper el software existente y cómo realizar pruebas de seguridad en los sistemas que estás construyendo, y completar los enfoques de seguridad del ciclo de vida del desarrollo del software. Por lo que puedo decir, estos son los libros canónicos sobre el tema.

  

¿Qué define como fallas de seguridad obvias o conocidas?

Las cosas que se han visto antes y se han estudiado son, o al menos deberían ser, obvias. Es por eso que se realiza una gran cantidad de trabajo para estudiar seguridad, desde la creación de software seguro hasta el análisis de incidentes de seguridad para determinar cómo y por qué ocurrieron, y luego producir documentación para que otras personas no sean víctimas de los mismos problemas.

La División de Seguridad Cibernética Nacional del Departamento de Seguridad Nacional de los EE. UU. tiene un programa Build Security In sobre cómo encontrar y Organización de información relevante para personas que construyen sistemas que deben ser seguros. El Open Web Application Security Project también produce documentación y recursos sobre muchos aspectos de la seguridad del software para que sean fácilmente accesibles. Personas que construyen sistemas donde la seguridad es una preocupación. La Corporación MITRE también trabaja en encontrando, identificando y produciendo vocabularios para discutir problemas de seguridad .

    
respondido por el Thomas Owens 27.10.2011 - 14:59
fuente
11

Básico: usar herramientas, scripts, exploits, etc. disponibles para comprometer los sistemas. Ningún conocimiento más profundo de lo que estás explotando o cómo. Limitado a ataques de internet de cara al público. Comúnmente referidos como guiones para niños.

Avanzado: creando sus propias herramientas para explotar los agujeros que ha descubierto y / o comprado. Entender exactamente cómo está desbordando esos buffers. Atacar a objetivos no públicos.

    
respondido por el Wyatt Barnett 27.10.2011 - 17:20
fuente
4

La inyección de SQL no es avanzada. Probablemente sea la razón de la pérdida de esas 200,000 contraseñas de las que estás hablando.

El problema con la piratería es que las técnicas verdaderamente "avanzadas" pueden volverse repentinamente "simples" si alguien escribe una herramienta para ello. Un buen ejemplo de esto es la herramienta Metasploit . Cuando las personas encuentran nuevas técnicas avanzadas, las agregan a Metasploit, lo que facilita la tarea de los piratas informáticos poco hábiles.

Otra técnica no avanzada son los virus personalizados. Es fácil crear un virus personalizado (de un kit de herramientas de virus) que no puede ser detectado por un antivirus, luego enviarlo a un objetivo e ingresar. Luego, se agregará la detección del virus, pero para entonces, han pirateado.

"Avanzado" no es utilizado por los hackers para describir estas técnicas, sino por los defensores. Cuando son hackeados, se avergüenzan. No están dispuestos a admitir que fueron pirateados por una de estas técnicas simples, por lo que pretenden que los ataques son "avanzados". También hacen hincapié en la "ilegalidad" de los ataques.

    
respondido por el Robert David Graham 08.11.2011 - 03:30
fuente
2

Obviamente, no hay una línea clara, pero ciertamente hay algunos tipos de ataques que son bastante fáciles y se pueden hacer de manera casual, si el objetivo tiene las vulnerabilidades adecuadas. Cosas como la simple inyección de SQL, el recorrido de la ruta, XSS, la suplantación de sesión, etc., o simplemente el simple olfateo de una red pública. Todos estos son fáciles de ejecutar y fáciles de defender, pero también son muy comunes. Un troyano comercial también podría calificarse de "fácil".

    
respondido por el tdammers 27.10.2011 - 23:47
fuente
2

Yo diría que puede ganar una insignia "avanzada" si demuestra una gran cantidad de esfuerzo y conocimiento.

Echa un vistazo a esta historia , que describe cómo hackear el sitio web apache.org. Tomó una semana y requirió una gran cantidad de observaciones de menor importancia, detalles de seguridad y mucha paciencia para explotarlos con el fin de obtener un mayor control sobre el sistema objetivo. Cada paso requería conocimientos sobre diferentes aspectos de los sistemas operativos y / o software de servidor típico. Cada pequeño detalle importa. Por ejemplo, la casilla que ejecuta el servidor web apache generalmente tiene una cantidad de procesos "httpd" en ejecución. Es por eso que han llamado a su bindshell "httpd" y no solo a "bindshell" que sería mucho más sospechoso.

También explotar los desbordamientos de pila se considera avanzado (es necesario tener un nivel de conocimiento bajo), pero en estos días hay muchas herramientas que automatizan dichos intentos. Por lo tanto, puedes considerarlo avanzado hasta que se publique un script en algún sitio de pirateo para que jueguen los niños.

    
respondido por el Jacek Prucia 27.10.2011 - 19:39
fuente

Lea otras preguntas en las etiquetas