Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Contar y agrupar con Python

4 tareas · 38 min · Principiante

Martes 11 de mayo, por la tarde. Un servidor de Textiles del Carare exportó sus autenticaciones a un CSV y el turno necesita saber quién falló más y desde dónde. Aquí aprendes a leer un CSV con el módulo csv, a contar con Counter y a desconfiar de un conteo que sale demasiado limpio. Dos guiones corrieron antes sobre el mismo archivo y no dieron lo mismo; tu trabajo es entender por qué y qué dirección merece primero tu atención.

0 de 4 · 0%

Objetivo de la sala

Martes 11 de mayo, por la tarde. Un servidor de Textiles del Carare exportó sus autenticaciones a un CSV y el turno necesita saber quién falló más y desde dónde. Aquí aprendes a leer un CSV con el módulo csv, a contar con Counter y a desconfiar de un conteo que sale demasiado limpio. Dos guiones corrieron antes sobre el mismo archivo y no dieron lo mismo; tu trabajo es entender por qué y qué dirección merece primero tu atención.

Un CSV parece texto separado por comas, pero un campo puede llevar una coma dentro si va entre comillas: "Acceso por VPN, sede norte" es una sola columna. Partir cada línea con split(",") ignora las comillas y desplaza las columnas siguientes. El módulo csv de Python sí las respeta y entrega cada fila como un diccionario con los nombres del encabezado (csv.DictReader).

Para contar se usa collections.Counter: se le suma uno por cada valor visto, y most_common() devuelve los valores de mayor a menor. Es un diccionario que ya sabe contar.

Lee los dos guiones y sus salidas guardadas, y compara.

Responde para continuar

Los dos guiones leen el mismo CSV y no coinciden en los fallos por dirección. ¿Qué explica la diferencia?

Ver pista de ayuda

Las dos salidas dicen cuántas filas leyeron. Mira qué columna usa el primer guion para decidir si la fila es un fallo.

Contar fallos responde cuántos, no qué pasó después. Lo que cambia la gravedad es la secuencia: varios fallos seguidos de un acierto desde el mismo origen. El segundo guion la vigila: lleva por cada pareja cuenta y dirección los fallos acumulados y, cuando llega un acierto, imprime una línea con cuántos fallos lo precedieron.

Lee la salida guardada del segundo guion y distingue las direcciones de la planta (10.72.4.0/24) de las que no lo son.

Responde para continuar

Escribe la dirección externa que tuvo un acierto después de sus fallos.

Ver pista de ayuda

Busca la línea «acierto tras N fallos» cuya dirección no empieza por 10.72.

La salida del segundo guion trae los fallos por cuenta, de mayor a menor, y no imprime ningún total. Un resumen casi nunca trae justo la cifra que necesitas; se obtiene operando con lo que sí trae. Aquí se trata de sumar cuatro números, y de comprobar, con la tabla por dirección, que da lo mismo.

Responde para continuar

¿Cuántos fallos de autenticación hubo en total esa tarde, según el segundo guion?

Ver pista de ayuda

Suma los fallos de las cuatro cuentas de la tabla «fallos por cuenta».

El contador ordena por volumen, pero el volumen no es el riesgo. Una cuenta de servicio con una credencial vencida falla cada cinco minutos durante horas y encabeza cualquier tabla; una persona que falla pocas veces y entra puede ser lo que de verdad importa. Lo que separa un caso del otro es el contexto: lo que la empresa sabe de cada dirección y lo que ocurrió después.

conocidos.txt es el inventario del turno. Léelo junto a la salida y decide a quién miras primero.

Responde para continuar

¿A qué dirección le dedica primero el turno su atención?

Ver pista de ayuda

El primer lugar de la tabla ya tiene explicación en el inventario. ¿Y el segundo?

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad