Adivinación de contraseñas: ¿Es más efectivo probar muchas contraseñas con unas pocas cuentas o unas pocas (muy comunes) contraseñas con muchas cuentas?

6

Estuve viendo un video de seguridad en Irongeek el otro día (inmediatamente perdí la pista de qué video específico, desafortunadamente) donde el creador Dio algunos consejos interesantes sobre cómo hacer adivinanzas con contraseña en vivo contra una máquina remota durante una prueba de lápiz. El consejo fue el siguiente: usar el enfoque "tradicional" de elegir una o unas pocas cuentas de usuario y luego golpearlas con un diccionario de contraseñas comunes de tamaño considerable suele ser una manera pobre de hacer las cosas. Como alternativa, el autor sugiere cuál es básicamente el enfoque opuesto. Significado: elija una base de datos muy pequeña con las contraseñas más comunes y ejecútela contra una gran lista de usuarios. El argumento es que es más probable que tenga éxito, en términos de violar al menos una cuenta, si prueba 100 contraseñas extremadamente comunes contra 100 cuentas que si intenta 10,000 contraseñas comunes contra una cuenta.

Mi pregunta: ¿cuáles son las ventajas y desventajas de usar este enfoque en una auditoría de contraseña o prueba de pluma frente al enfoque de atacar a una / varias cuentas en profundidad? La desventaja más obvia es, bueno, obvia: si desea o necesita dirigirse a la cuenta de un usuario específico, este enfoque es probablemente fuera de la mesa. Por otro lado, me parece plausible que si está buscando ingresar a una o dos cuentas de cualquier tipo en una organización que tenga, digamos, al menos unos pocos cientos de usuarios, esto podría ser más efectivo. táctica. Y quizás, en algunas circunstancias, también podría facilitar el manejo de las protecciones de bloqueo / bloqueo de intentos de inicio de sesión.

Pero mi experiencia personal en la piratería de contraseñas no es muy profunda. Entonces, les preguntaré a aquellos que saben más que yo: ¿Cuáles son otras ventajas prácticas significativas & ¿Desventajas de usar este enfoque en comparación con golpear algunas cuentas con muchas contraseñas? ¿Cuáles son algunas otras circunstancias comunes en las que tiene sentido usar una táctica u otra?

    
pregunta mostlyinformed 07.12.2015 - 01:58
fuente

5 respuestas

7

El acceso a cualquier cuenta en un sistema tiene grandes ventajas, incluso si desea acceder a una cuenta específica. No detallaré los métodos para ocultar un ataque de contraseña de la base de usuarios de todo el sistema aquí, sin embargo es posible. Entonces, se puede hacer un ataque directo contra una cuenta específica. Una cuenta aleatoria en un sistema permite:

  1. Acceda a cualquier información interna como un directorio de usuarios, números de teléfono, direcciones de correo electrónico o de correo electrónico, etc.
  2. Si es corporativo, relaciones con empleados (gerente - informes directos), nombres de departamentos, gerentes de alto nivel.
  3. Si es corporativo, servidores internos (correo electrónico, base de datos de errores, código fuente, sistemas financieros que enfrentan los empleados, centros de llamadas, etc.).
  4. Si es corporativo, la contraseña puede ser útil para el inicio de sesión de VPN y la subsiguiente asignación de red.
  5. El acceso al sistema o servidores internos puede permitir la inyección de código en el servidor (no es posible sin una cuenta). Por ejemplo, ataque XSS o ataque de inyección SQL. Algunas inyecciones de código pueden crear trampas para los usuarios al iniciar sesión o acceder a un sistema. Otras inyecciones de código pueden romper la seguridad del sistema y proporcionar acceso a bases de datos backend.
  6. Algunos sistemas con poca seguridad están sujetos a ataques de vinculación profunda (pirateando la URL para omitir la seguridad de la aplicación) y dependen de la amabilidad de la base de usuarios para no piratear la URL. Un atacante externo con acceso a una cuenta puede encontrar estos agujeros.
  7. Vigilancia de las cuentas específicas para atacar (nombre de usuario, información personal útil para adivinar contraseñas, suplantación de identidad de administradores, subordinados, asistentes).
  8. El conocimiento de los sistemas internos, datos y empleados crea un potencial increíble para una amplia gama de ataques de phishing en todos los empleados, incluidos los electrónicos, telefónicos y físicos (proveedores, contratistas) y puede permitir la concesión de nuevas credenciales (cuenta de usuario) posiblemente con muy alta privilegios de acceso.

Una sola cuenta interna en cualquier sistema puede resultar extremadamente valiosa en manos de un atacante experto, creativo y dedicado.

Si el 99% de las cuentas tienen una seguridad de contraseña fantástica y un 1% pésimo, atacar a un puñado de cuentas probablemente pasaría por alto a las de fácil penetración. Barrerlos todos probablemente detectará algo en el momento en que el atacante intente todo lo anterior.

    
respondido por el Andrew Philips 07.12.2015 - 18:34
fuente
3

Si te entiendo bien, estás preguntando cuáles son las ventajas y desventajas de pocas contraseñas de muchos nombres de usuario y contraseñas de muchos nombres de usuarios. ¿Estoy en lo correcto? Lo que se me ocurre es que si prueba muchas contraseñas con el mismo nombre de usuario, es probable que se bloquee después de algunos intentos incorrectos. Por otro lado, siempre que sus intentos fallidos en cada cuenta / nombre de usuario estén por debajo del umbral, es probable que no se bloquee. Además, incluso si se queda bloqueado, después de que haya terminado de circular por todas las cuentas y vuelva a aparecer, la cuenta que originalmente lo bloqueó podría desbloquearse automáticamente para entonces.

    
respondido por el wei 07.12.2015 - 05:17
fuente
2

Mi preocupación inmediata por tu pregunta refleja lo que @wie menciona en su respuesta:

"es probable que te bloqueen después de algunos intentos incorrectos".

Si esto es un problema, crearía una lista de contraseñas y repasaría cada contraseña para cada usuario que quiera intentar descifrar. Use un retraso de tiempo entre cada intento y simplemente déjelo correr. Dependiendo de la lista de usuarios, un bucle puede tardar minutos u horas, pero un mayor tiempo entre intentos lo ayudará a no ser bloqueado o detectado tan fácilmente.

Desde @Lexu:

"Si no puede encontrar una contraseña en las 500 contraseñas principales, es probable que tampoco la encuentre en las 1000 principales. (Creo que el usuario promedio usa una contraseña segura o una débil débil. No mucho entre estas dos opciones.) "

Más allá de estas preguntas: ¿Tiene la organización una política de contraseña? Esto mejorará la complejidad de las contraseñas contra las que decide realizar la prueba y, con suerte, descartará el uso de un subconjunto grande de contraseñas más simples (y reducirá el conjunto de contraseñas que está usando a un sistema mucho más pequeño, y aún más complejo y subconjunto difícil de todas las contraseñas disponibles).

Además, podría ser conveniente considerar la organización que está probando y los tipos de cuentas y sistemas a los que desea acceder. Por ejemplo, si se encuentra en alguna universidad universitaria, puede considerar buscar variaciones de la mascota para la contraseña. O tal vez un deporte o arte es algo grande allí. Prueba contra "deporte" o "equipo deportivo" y sus variaciones. O tal vez estás probando una empresa que fabrica espátulas. 'espátula' y permutaciones (y otras combinaciones de la palabra) pueden ser una buena contraseña para probar. Obtener la foto?

Finalmente, para abordar su pregunta original de manera más directa:

"Mi pregunta: ¿cuáles son las ventajas y desventajas de utilizar este enfoque en una auditoría de contraseña o prueba de pluma frente al enfoque de atacar a una / varias cuentas en profundidad?"

Si sabe qué cuentas desea (lo cual es poco probable si está atacando como un agente externo a la organización), sería mucho más rápido atacarlas solo con una gran lista de combinaciones de contraseñas y permutaciones.

Sin embargo, si solo está tratando de encontrar un punto de pivote, sería mucho más eficiente (y más probable que tenga éxito) probar un pequeño número de contraseñas (adaptadas a la organización) e intentar encontrar cuentas importantes o posibles puntos de pivote. Tendrá muchas menos probabilidades de éxito si se dirige a cuentas específicas sin ningún tipo de ingeniería social para aumentar sus esfuerzos.

Resumidamente: es una diferencia en la probabilidad de éxito. Pruebe primero el método más fácil y más completo. Si eso falla, entonces aplique un esfuerzo más concentrado y profundo hacia su objetivo.

Espero que esto sea útil!

    
respondido por el Adam Elliott 07.12.2015 - 18:48
fuente
1

Si no puede encontrar una contraseña en las contraseñas top 500 , es probable que tampoco la encuentre en las contraseñas top 1000 . (Creo que el usuario promedio usa una contraseña segura o un débil débil. No hay mucho entre estas dos opciones).

Pero dependiendo del sistema, es posible que tenga una cantidad limitada de cuentas.

Use many-username-few-passwords cuando tenga muchos usuarios y solo necesite uno y use few-username-many-password cuando tenga una cantidad limitada de nombres de usuario.

    
respondido por el Lexu 07.12.2015 - 11:01
fuente
0

Cuando empecé a trabajar en TI, Jordan todavía estaba jugando al baloncesto. Una empresa de seguridad que realiza una auditoría en Chicago ingresó al 40% de las computadoras al sentarse y escribir "Bulls" como la contraseña sin ningún otro conocimiento.

En base a eso, diría que es más inteligente probar contraseñas débiles en todas partes y ver quién tiene uno en lugar de un ataque dirigido. SI todo lo que está buscando es acceso inicial al sistema.

    
respondido por el baldPrussian 28.12.2017 - 04:18
fuente

Lea otras preguntas en las etiquetas