Labtainers: Un marco de laboratorio cibernético basado en Docker
Labtainers incluye más de 50 ejercicios de laboratorio cibernético y herramientas para crear los tuyos propios. Importe una única máquina virtual o instálelo en un sistema Linux y sus estudiantes habrán terminado con el aprovisionamiento y la configuración administrativa, para estos y futuros ejercicios de laboratorio.
- Entornos de ejecución de laboratorio consistentes y aprovisionamiento automatizado mediante contenedores Docker
- Topologías de red con múltiples componentes en una computadora portátil de rendimiento modesto
- Evaluación automatizada de la actividad y el progreso del estudiante en el laboratorio
- Ejercicios de laboratorio individualizados para desalentar el intercambio de soluciones
Labtainers proporciona entornos de ejecución controlados y consistentes en los que los estudiantes realizan laboratorios completamente dentro de los límites de su computadora, independientemente de la distribución de Linux y los paquetes instalados en la computadora del estudiante. Labtainers se ejecuta en nuestra máquina virtual o en cualquier Linux con Docker instalado. Y Labtainers está disponible como máquinas virtuales basadas en la nube, por ejemplo, en Azure, como se describe en la Guía del estudiante.
Consulte la Guía del estudiante para la instalación y el uso, y la Guía del instructor para la evaluación del estudiante. El desarrollo y la personalización de ejercicios de laboratorio se describen en la Guía del diseñador.
Consulte los Artículos para obtener información adicional sobre el marco.
El sitio web de Labtainers y las descargas (incluidas las máquinas virtuales con Labtainers preinstalado) se encuentran en https://nps.edu/web/c3o/labtainers.
Distribución creada: 01/06/2026 12:28
Revisión: v1.4.4i
Commit: 4f868e24
Rama: master
Contenido
Distribución y uso
Guía de directorios
Soporte
Notas de la versión
Distribución y uso
Consulte la información de licencias y distribución
en el archivo docs/license.md.
Guía de directorios
-
scripts/labtainers-student -- el directorio de trabajo para ejecutar y
probar laboratorios de estudiantes. Debe estar en ese directorio para ejecutar
laboratorios de estudiantes.
-
scripts/labtainers-instructor -- el directorio de trabajo para
ejecutar y probar la evaluación automatizada y ver los resultados
de los estudiantes.
-
labs -- Archivos específicos de cada laboratorio
-
setup_scripts -- scripts para instalar Labtainers y Docker y actualizar Labtainers
-
docs -- código fuente en latex para labdesigner.pdf y otra documentación.
-
UI -- Código fuente del editor de laboratorios de Labtainers (Java).
-
headless-lite -- scripts para gestionar instancias de Docker Workstation y en la nube de Labtainers (sistemas
que no tienen servidores X11 nativos).
-
scripts/designer -- Herramientas para construir nuevos laboratorios y gestionar imágenes Docker base.
-
config -- configuraciones del sistema (estas no son las
configuraciones específicas del laboratorio).
-
distrib -- scripts de soporte para distribución, por ejemplo, para publicar laboratorios en Docker hub.
-
testsets -- Procedimientos de prueba y resultados esperados. (Los controladores por laboratorio para SimLab no se
distribuyen).
-
pkg-mirrors -- scripts de utilidad para el mirroring interno de paquetes en NPS para reducir la descarga externa
de paquetes durante las pruebas y la distribución.
Soporte
Use los informes de problemas de GitHub, o envíeme un correo electrónico a [email protected]
Consulte también https://my.nps.edu/web/c3o/support1
Notas de la versión
La distribución estándar de Labtainers no incluye los archivos necesarios para el desarrollo
de nuevos laboratorios. Para esos, ejecute ./update-designer.sh desde el directorio labtainer/trunk/setup_scripts.
El script de instalación y el script update-designer.sh establecen variables de entorno,
por lo que es posible que desee cerrar sesión/iniciar sesión, o iniciar una nueva shell bash antes de usar Labtainers la
primera vez.
6 de enero de 2026
- Se corrigió un error introducido en el script de instalación debido a sangrías.
30 de diciembre de 2025
- Se modificó el formato del informe checkwork para que sea vertical; guía de video para headless; rutas de conveniencia
15 de octubre de 2025
- Se revisó el laboratorio de inspección de paquetes para actualizar el enlace a la base de datos de geolocalización de MaxMind y se anotó el uso de la base de datos heredada.
24 de abril de 2025
- Se corrigió imodule para que cree correctamente los directorios faltantes según la solicitud de extracción #96
22 de noviembre de 2024
- Se reemplazó la máquina virtual de Google Cloud, esta vez debido a una falla de systemd dentro de los contenedores.
23 de septiembre de 2024
- Se reemplazó la máquina virtual de Google Cloud, que estaba usando la versión incorrecta de Docker
10 de septiembre de 2024
- Error tipográfico en la creación de la ruta de imodule
26 de julio de 2024
- Se modificó capinout para no usar la función de biblioteca grantpt, que ahora parece fallar cuando se ejecuta desde un contenedor.
22 de julio de 2024
- Se agregó un contenedor base para Ubuntu22 y cambios en el marco para admitirlo.
5 de julio de 2024
- Migración a Ubuntu 24 como máquina virtual
- El paquete docker de python usa una biblioteca http de Python defectuosa, requiere degradación del paquete.
- Se usa un entorno virtual de Python para evitar el bloqueo de paquetes de Python en Ubuntu.
- Se agregó un parámetro de arranque para permitir compartir systemd entre contenedores y la máquina virtual.
- Redirección de mensajes de error de la utilidad tar defectuosa durante las actualizaciones.
- Rotura de actualización de Ubuntu para paquetes msc (consulte update-ubuntu.sh) para máquinas virtuales versión 18
- El comando docker-compose está roto, use "docker compose"
- Forzar permisos de socket en headless labtainers.
- Actualizar headless Labtainers para usar Ubuntu 24
27 de noviembre de 2023
- Se agregó la opción de Google Cloud Platform para ubuntu22 en máquina ec2.
18 de septiembre de 2023
- La implementación de la corrección anterior era defectuosa.
8 de agosto de 2023
- Manejar el cambio en el formato json de imagen de DockerHub. ¡Gracias Kees!
17 de abril de 2023
- Forzar el uso de la última versión del laboratorio, por ejemplo, iptables2 en lugar de iptables. Se corrigió la finalización con tabulador para mostrar solo la última versión. (Problema #77)
- La instalación del laboratorio CyberCIEGE fallaba debido a una condición de carrera en X11. (Problema #76)
- Nota en el archivo léame de CyberCIEGE para indicar a los estudiantes que guarden los registros recopilados en el directorio $HOME. (Problema #75)
- El checkwork del laboratorio Radius informaba incorrectamente "radiusd no se está ejecutando", faltaba el script prestop. (Problema #74)
- Labedit corrompía el archivo de configuración de inicio cuando se usaba la opción MACVLAN_EXT. (Problema #73)
1 de febrero de 2023
- El historial de Bash para usuarios no predeterminados no se guardaba.
26 de enero de 2023
- Se modificaron los scripts de powershell para gcloud para usar la zona seleccionada para calificar los nombres de las máquinas virtuales.
4 de enero de 2023
- Los contenedores que usaban systemd fallaban en systemd más reciente presente en Ubuntu 22
- Se agregó el parámetro --zone a los scripts de google cloud, con el valor derivado del script set_defaults.
21 de diciembre de 2022
- Se corrigieron los criterios de resultados de xforge para no esperar un nombre de ruta, y se agregó una comprobación para ver si se emitió POST para editar el perfil. Y se corrigió el servidor http del atacante para que se ejecute desde el directorio home.
19 de diciembre de 2022
- Se agregó el laboratorio strace para introducir el rastreo de llamadas al sistema.
- El valor de DISPLAY de X11 era incorrecto si había múltiples dispositivos en el directorio /tmp/.X11-unix.
- El uso de python/bash/sh/etc sin argumentos provocaba que capinout fallara.
9 de diciembre de 2022
- Se modificó el script de creación de máquina virtual de Azure para usar una imagen de VM de Labtainer preconstruida de la Galería comunitaria de Azure.
- Los terminales en máquinas virtuales en la nube fallan por razones desconocidas durante el inicio o al hacer clic derecho en el terminal. Intento
de solucionarlo iniciando/deteniendo un terminal.
5 de diciembre de 2022
- Al recopilar artefactos, incluya archivos modificados de directorios de usuarios no predeterminados, por ejemplo, sus historiales de bash.
- Se modificó la evaluación web para mostrar los nuevos archivos de "otro usuario".
- Incluya archivos de .local/bin en cada contenedor en los artefactos. Destinado a ponerlos a disposición del instructor a través de la evaluación web.
- En el laboratorio ACL, incluya el archivo /shared_data/bob/fun en los resultados como referencia para el instructor.
- Detecte el uso de "sh" o "bash" desde la línea de comandos y omita al analizar el comando dado, por ejemplo, como se hace con "time" o "sudo".
- En el laboratorio tcpip, no se podía acceder por ssh al servidor durante sesiones de laboratorio posteriores, el directorio /run/sshd no se estaba recreando.
16 de noviembre de 2022
- Se corrigió la ruta al Manual de Snort en el laboratorio snort.
- En el manual de ossec, se corrigió la ruta a manage_agents
12 de octubre de 2022
- Google cloud: se eliminó el operador de fondo del comando gnome-terminal, todavía falla al hacer clic derecho
pero parece estable después de ejecutar newterm.sh.
10 de octubre de 2022
- Se corrigió newterm.sh de Google cloud; se expandió ese disco de arranque a 30G.
20 de septiembre de 2022
- Se anotaron el ID de usuario y la contraseña para el laboratorio TCP/IP en el manual del laboratorio.
30 de agosto de 2022
4 de agosto de 2022
- El programa labedit fue reconstruido con el JDK incorrecto, lo que impedía que versiones anteriores de JRE ejecutaran labedit
18 de julio de 2022
- La creación de contenedores basados en Ubuntu20 fallaba dentro de IModules. Problema #61.
23 de marzo de 2022
- Se corrigió la ruta al directorio de bloqueo de tap; provocaba fallas en los laboratorios que usaban taps de red
- Se actualizó el ordenador netmon de plc-traffic para que tenga openjfx necesario para el nuevo grassmarlin en entorno java
- Se aceleró el inicio del laboratorio evitando chown -R, que es muy lento en docker.
- Otro intento de evitar la eliminación del enlace X11 en el directorio /tmp del contenedor.
- Se corrigió el conteo de webtrack de sitios visitados y se eliminó el objetivo live-headers, esa herramienta ya no está disponible.
Se aclararon algunos pasos del manual del laboratorio.
2 de marzo de 2022
- Se agregó un nuevo laboratorio ssh-tunnel (¡gracias GWD!)
- Se corrigió la falla de labedit para reflejar el valor de X11 establecido por new_lab_setup
- Se agregó la opción de no parametrizar un contenedor
23 de febrero de 2022
- labedit corrompía start.config después de agregar nuevos contenedores
- Ruta incorrecta a la guía del estudiante en el archivo README del estudiante; cambio dinámico para configuraciones en la nube
- Extensión incorrecta para update-labtainer.sh
- Mejoras en la guía msc
- Se actualizó el laboratorio ghidra para incluir la versión 10.1.2 de Ghidra
15 de febrero de 2022
- Se revirtió el soporte en la nube de Azure para aprovisionar para cada estudiante. Azure desaconseja compartir recursos.
24 de enero de 2022
- Azure cloud ahora usa una imagen almacenada en un blob de Azure en lugar de aprovisionar para cada estudiante.
- Se agregó soporte para Google Cloud.
19 de enero de 2022
- Se presentó Labtainers en la nube de Azure. Consulte la Guía del estudiante para obtener detalles sobre cómo usar esto.
3 de enero de 2022
- Se revisó el laboratorio setuid-env para agregar una mejor evaluación; pruebas de simlab y evitar sighup en el hijo de printenv.
- Se corrigió la directiva de conteo de objetivos de evaluación para excluir valores de etiqueta de resultado false.
- No se requiere labname al usar gradelab -a con un calificador iniciado con la opción de depuración.
- Se revisó capinout (duplicación de stdin/stdout) para manejar el huérfano de hijos del proceso de comando, documentación mejorada
y manejo de errores.
- Se agregó visualización de barras de progreso de las imágenes de Docker que se descargan cuando se ejecuta un laboratorio por primera vez.
- Comentarios del usuario sobre el progreso de la inicialización del contenedor.
- Al laboratorio pcap-lib le faltaba un archivo de notificación necesario para la evaluación automatizada; se eliminó un paso superfluo del Manual del laboratorio.
23 de noviembre de 2021
- Se deshabilitaron los errores emergentes de ubuntu en la máquina virtual de prueba.
- Se corrigió el manejo de diferentes formatos de variable DISPLAY.
22 de octubre de 2021
- Se revisó la guía del laboratorio tcpip para señalar que un ataque exitoso de syn-flood no es posible. Se corrigió su evaluación automatizada y se agregaron scripts de SimLab.
- Se cambió la extensión del archivo de artefacto de zip a lab, y se agregó un preámbulo para confundir a los administradores de archivos GUI. Los estudiantes estaban abriendo el zip y enviando su contenido.
- Se hizo que la opción -r de gradelab sea la predeterminada, se agregó una opción -c para el uso acumulativo del calificador.
- Se modificó refresh_mirror para que se refiera a la fecha de lanzamiento local para evitar consultas frecuentes a DockerHub. Cada consulta cuenta como una descarga de imagen,
y ahora están tratando de monetizarlas.
30 de septiembre de 2021
- Se cambiaron la guía y la calificación del laboratorio bufoverflow para no esperar éxito con ASLR activado, evaluar si se ejecutó.
- Manejo de errores para el calificador web en casos en que al estudiante le faltan resultados.
- Se imprime una advertencia cuando se ejecuta un laboratorio obsoleto.
- Se cambió la calificación de formatstring para eliminar la descripción "_leaked_secret" no utilizada y aclarar el valor de leaked_no_scanf.
- También se cambió la calificación de formatstring para permitir cualquier nombre para el ejecutable vulnerable.
29 de septiembre de 2021
- Manejo de errores de Gradelab, reducción de instancias de fallos debido a archivos zip defectuosos.
- Los archivos de artefactos de stdout se limitan a 1MB
17 de septiembre de 2021
- La guía del laboratorio Ghidra tenía una dirección IP incorrecta, no se reconstruyó desde la fuente.
14 de septiembre de 2021
- Laboratorios de ejemplo para LDAP y Mariadb usando SSL. Destinados como plantillas para nuevos laboratorios.
- Manejar el formato de registro de Mariadb
- Se agregaron parámetros por contenedor para limitar el uso de CPU o fijar el contenedor a un conjunto de CPU.
- La creación de Labpack ahora está disponible a través de una GUI (makepackui).
- Finalización con tabulador para los comandos labtainer, labpack y gradelab.
- Nuevo laboratorio de computación paralela ``parallel'' usando MPI.
3 de agosto de 2021
- Se agregó una opción de configuración "WAIT_FOR" para hacer que un contenedor retrase la parametrización hasta que
otro contenedor complete su parametrización.
- Soporte para formatos de registro de Mariadb en el análisis de resultados
- Se eliminó el soporte para Mac y Windows usando Docker Desktop. Ese producto es demasiado inestable para que lo soportemos.
- Se suprimieron los mensajes de stderr cuando el usuario usa comandos bash incorporados como "which".
- Correcciones de errores en los programas makepack/labpack.
19 de julio de 2021
- Se agregó un laboratorio DNS para introducir el protocolo y la configuración de DNS.
- Se revisó la imagen de VirtualBox para que se inicie con el script de actualización correcto.
- Se separó el parámetro del servidor de nombres resolv.conf del campo de configuración lab_gw en su propio valor.
- El comando IModule fallaba si se ejecutaba antes de iniciar cualquier laboratorio.
5 de julio de 2021
- Errores en la gestión de la variable de entorno DISPLAY rompieron las aplicaciones GUI en Docker Desktop.
1 de julio de 2021
- Soporte para la instalación de paquetes Mac de headless Labtainers.
- La evaluación automatizada del laboratorio routing-basics falló debido a la falta de archivos treataslocal
- Se corrigieron errores tipográficos y direcciones incorrectas en el laboratorio routing-basics, y se corrigió la evaluación automatizada.
- La evaluación de pcapanalysis fallaba.
10 de junio de 2021
- Todos los PDF de manuales de laboratorio están ahora en el repositorio de github
- Se convirtieron las instrucciones de vpnlab y vpnlab2 a manuales de laboratorio PDF.
25 de mayo de 2021
- Se agregaron palabras clave buscables a cada laboratorio. Consulte "labtainer -h" para conocer el uso.
- Se expandió el laboratorio routing-basics y su manual
- Se eliminó el laboratorio routing-basics2, ahora es redundante.
- sudo en algunos contenedores fallaba porque los nombres de host eliminan guiones bajos, lo que provoca una discrepancia
con el archivo hosts. Se corrigió con una entrada adicional en el archivo hosts con el nombre del contenedor sin guión bajo.
- Nueva función Labpack para empaquetar una colección de laboratorios, y herramienta makepack para crear Labpacks.
- Comprobación de errores para el directorio /sbin al usar ubuntu20: sería silenciosamente fatal.
- Nuevo laboratorio network-basics
5 de mayo de 2021
- Se presentó un nuevo laboratorio de usuarios para introducir la gestión de usuarios/grupos
- Se suprimieron los mensajes de Apparmor del host en los syslogs de los contenedores centos
28 de abril de 2021
- Las nuevas imágenes base2 carecían de páginas de manual. Se usó unminimize para restaurarlas en la imagen base.
- Se presentó un laboratorio IDS basado en host OSSEC.
13 de abril de 2021
- El laboratorio CyberCIEGE fallaba porque el socket X11 no se reubicaba antes de iniciar Wine a través de fixlocal.
9 de abril de 2021
- Nuevo laboratorio tutorial gdb-cpp para usar GDB en un programa simple de C++.
- Las excepciones de punto flotante revelaban el uso de exec_wrap.sh para la duplicación de stdin/stdout.
7 de abril de 2021
- El laboratorio ldap falló cuando se movió a Ubuntu 20. Problema rastreado hasta un problema con la caché nscd de pwd. Se movió ldap a Ubuntu 20
23 de marzo de 2021
- La parametrización con RANDOM no incluía el límite superior.
- Se agregó un parámetro de paso opcional a RANDOM, por ejemplo, para garantizar los límites de las palabras.
- Laboratorio db-access: se agregó mysql-workbench al ordenador de base de datos.
- Nuevo laboratorio overrun para ilustrar referencias de memoria más allá de los límites de las estructuras de datos en c.
- Nuevo laboratorio printf para introducir referencias de memoria realizadas por la función printf.
19 de marzo de 2021
- gradelab ignora errores de makdirs, problema con rmtree de Windows en carpetas compartidas.
- gradelab maneja espacios en los nombres de archivos zip de los estudiantes.
- gradelab maneja nombres de archivos zip de Moodle, incluyendo descargas de builds.
12 de marzo de 2021
- UI de labedit: Se eliminó la imagen antigua de wireshark de la lista de imágenes base.
- UI de labedit: Se aumentaron algunos tamaños de fuente.
- La interfaz web del calificador fallaba al mostrar los manuales de laboratorio si el nombre del manual no seguía las convenciones de nomenclatura.
11 de marzo de 2021
- UI de labedit: se agregó la configuración de registro en el nuevo panel de configuración global del laboratorio.
10 de marzo de 2021
- Correcciones en la UI de labedit para no construir si hay un error de sintaxis en el laboratorio
- Corrección del indicador "Laboratorio en ejecución" de la UI de labedit para reflejar el laboratorio actual.
8 de marzo de 2021
- Se dejó de usar HOST_HOME_XFER, todos los laboratorios usan el directorio según el archivo labtainer.config.
- Se agregó un comentario de documentación a start.config para REGISTRY y BASE_REGISTRY
5 de marzo de 2021
- Manejo de errores en la interfaz web de gradelab cuando faltan resultados.
- Adición de precheck en labedit, correcciones de errores en msc.
26 de febrero de 2021
- El laboratorio dmz-example tenía errores en el enrutamiento y la configuración de dnsmasq en algunos componentes.
18 de febrero de 2021
- La UI estaba reconstruyendo imágenes porque actualizaba las marcas de tiempo de los archivos sin causa
- Se limpió el código de la UI para eliminar algunas copias de datos redundantes.
14 de febrero de 2021
- Se agregó la opción de compilación local a la UI
- Se creó faux_init vacío para bases centos6.
11 de febrero de 2021
- Se corrigió el manejo de la UI al editar archivos. Se revisó el diseño y se eliminaron campos no utilizados.
- Se agregó la configuración base2 ubuntu20 junto con ssh2, network2 y wireshark2
- El nuevo wireshark soluciona el problema de las ventanas negras/sin ruido.
- Se asignó /tmp/.X11-unix a /var/tmp y se creó un enlace. Necesario para ubuntu20 (¿estaba eliminando /tmp?) y puede solucionar otros.
4 de febrero de 2021
- Se agregó la opción SIZE a los artefactos de resultados
- Se simplificaron la evaluación y parametrización de wireshark-intro y se agregó un manual de laboratorio PDF.
- Se proporcionan los valores de la lista de parámetros al script pregrade.sh como variables de entorno
- Se habilitó X11 en el calificador
- Se puso update-designer.sh en la ruta de los usuarios.
19 de enero de 2021
- Se cambió la gestión de la fecha/revisión de README para actualizar el archivo en el repositorio fuente.
- Se presentó una GUI para crear/editar laboratorios: consulte el comando labedit.
21 de diciembre de 2020
- La función gradelab fallaba cuando los archivos zip se copiaban desde una carpeta compartida de VirtualBox.
- Se actualizó la Guía del instructor para describir la gestión de archivos zip de estudiantes en las computadoras host.
4 de diciembre de 2020
- Transición de la distribución de tar a artefactos de lanzamiento de GitHub
- Se eliminó el archivo tar independiente del diseñador, se usó el tarball del repositorio git.
- Pruebas de funciones web del calificador para el análisis de artefactos de laboratorio de estudiantes
- Se limpiaron los registros de la prueba de humo completa y se eliminó el contenedor del calificador en el comando removelab.
1 de diciembre de 2020
- La evaluación del laboratorio iptables2 dependía de que los puertos aleatorios fueran "desconocidos" para nmap.
- Se usó un directorio de sincronización para retrasar el inicio de las pruebas de humo antes del inicio del laboratorio.
- Se comenzó a integrar elementos de la UI del diseñador de laboratorios.
13 de octubre de 2020
- Configuraciones headless para ejecutarse en Docker Desktop en Mac y Windows
- Soporte de servidor headless, archivo cloud-config para implementaciones en la nube
- Soporte de pruebas para configuraciones headless
- Forzar a mynotify a esperar hasta que rc.local se ejecute al arrancar
- Mejorar la capacidad del servicio mynotify para fusionar la salida en una sola marca de tiempo
- Python3 para el script stopgrade
- SimLab ahora usa docker top en lugar de system ps
26 de septiembre de 2020
- Se limpiaron los scripts de stoplab para ignorar contenedores que no son de laboratorio
- Se agregó el laboratorio de control de acceso a bases de datos db-access para compartir controladamente una base de datos mysql.
17 de septiembre de 2020
- El laboratorio macs-hash no podía ejecutar Leafpad debido a la configuración de X11.
- El registro del calificador se redirigía al archivo de registro incorrecto, ahora captura errores de instructor.py
- Se copia instructor.log del calificador al directorio de registros del host si hay un error.
28 de agosto de 2020
- Se corrigió el script de instalación para usar python3-pip y se corrigieron scripts rotos: getinfo.py y pull-all.py
- La lógica de registro estaba rota, los sistemas de prueba no usaban el registro de prueba, se agregó documentación de desarrollo.
- Se agregaron archivos base juiceshop y owasp para laboratorios de seguridad web basados en OWASP
- Se eliminaron sudos innecesarios de check_nets
- Se agregó la directiva de documentación CHECK_OK para la evaluación automatizada
- Se cambió check_nets para corregir problemas de iptables y enrutamiento si así se indica.
12 de agosto de 2020
- Se agregó tiempo de espera a los scripts prestop
- Se agregaron el cuestionario y checkwork a dmz-lab
- Reiniciar dmz-lab sin la opción -r rompió el enrutamiento fuera del ISP.
- Se permiten múltiples archivos para los resultados time_delim.6 de agosto de 2020
- Error en el manejo de errores cuando falta el socket X11
- Las comas en las preguntas del cuestionario provocaban errores de análisis
- Agregar cuestionario y checkwork al laboratorio iptables2
28 de julio de 2020
- Añadir soporte para cuestionarios: son cuestionarios de orientación, no de evaluación. Consulte la guía del diseñador.
- Añadir evaluación del estado actual para usar con el comando checkwork.
21 de julio de 2020
- Añadir testsets/bin a la ruta del diseñador
- Correcciones y explicaciones en la guía del diseñador para los pasos de IModule.
- Añadir tipo de resultado RANGE_REGEX para definir rangos de tiempo usando expresiones regulares en entradas de registro.
- Verificar que el socket X11 exista si es necesario al iniciar un laboratorio.
- Añadir imagen base para mysql
- Manejar formatos de marca de tiempo de registros mysql en el análisis de resultados.
15 de junio de 2020
- Nueva imagen base que contiene el enrutador de código abierto Bird
- Añadir laboratorio bird-bgp (Border Gateway Protocol).
- Añadir protocolo de enrutamiento bird-ospf (Open Shortest Path First).
- Mejorar el manejo de cambios de DNS; el acceso externo desde algunos contenedores estaba bloqueado en algunos sitios.
- Añadir sección a la Guía del Instructor sobre el uso de Labtainers en entornos sin acceso a Internet.
21 de mayo de 2020
- Mover todos los repositorios al registro labtainers de Docker Hub
- Soporte para montajes definidos en start.config para permitir instalaciones persistentes de software
- Cambiar el laboratorio ida para usar instalación persistente de IDA: el nuevo nombre es ida2
- Añadir laboratorio cgc para exploración de más de 200 servicios vulnerables del DARPA Cyber Grand Challenge
- Añadir comando type_string a SimLab
- Añadir laboratorio netflow para uso de análisis de tráfico de red NetFlow
- Añadir versiones de 64 bits de los laboratorios bufoverflow y formatstring
9 de abril de 2020
- El calificador falló en la evaluación de condiciones CONTAINS y FILE_REGEX cuando se usaron comodines para la selección de archivos.
- Incluir sugerencias para usar hexedit en el laboratorio symlab.
- Añadir operador hash_equal y hash-goals.py a la evaluación automatizada para evitar publicar respuestas esperadas en archivos de configuración.
- Evaluación automatizada para el laboratorio pcap-lib.
7 de abril de 2020
- Los registros se han movido a $LABTAINER_DIR/logs
- Otra limpieza para permitir reconstrucciones y pruebas usando Jenkins, incluyendo el uso de directorios temporales únicos para las compilaciones
- Mover funciones de soporte de compilación de labutils a build.py
- Añadir laboratorio pcap-lib para desarrollo basado en bibliotecas PCAP de programas de análisis de tráfico
13 de marzo de 2020
- Añadir laboratorio plc-traffic para uso de GrassMarlin con tráfico generado durante el laboratorio.
- Introducir la capacidad de añadir contenedores "tap" para recolectar PCAP de redes seleccionadas.
- Actualizar la documentación de GNS3 para acceso externo a contenedores y uso de dummy_hcd para simular unidades USB.
- Cambiar la plantilla kali para usar faux_init en lugar de intentar usar systemd.
- Mover distribuciones (archivos tar) a box.com
- Cambiar el uso de netstat en SimLab para no hacer una búsqueda de DNS.
26 de febrero de 2020
- Si el comando labtainer no encuentra el laboratorio, sugerir al usuario que ejecute update-labtainer.sh
- Añadir soporte preliminar para un componente de tap de red para ver todo el tráfico de red.
- Script para obtener imágenes de laboratorio para preparar máquinas virtuales que se usarán sin internet.
- Proporcionar nombre de usuario y contraseña para el laboratorio nmap-discovery.
18 de febrero de 2020
- Heredar la variable de entorno DISPLAY del host (por ejemplo, VM) en lugar de asumir :0
14 de febrero de 2020
- Añadir ejercicio de introducción a la ingeniería inversa de software con Ghidra.
11 de febrero de 2020
- Actualizar guías para describir el acceso remoto a contenedores dentro de entornos GNS3
- Ocultar componentes y enlaces seleccionados dentro de GNS3.
- Las figuras en la guía del laboratorio webtrack no eran visibles; errores tipográficos en esta y en nmap-ssh
6 de febrero de 2020
- Introducir función para gestionar contenedores de forma remota, por ejemplo, enviar archivos.
- Añadir función en entorno GNS3 para simular inserción de una unidad USB.
- Mejorar el manejo de errores de compilación de Docker.
3 de febrero de 2020
- En el laboratorio metasploit, el servicio postgresql no se estaba ejecutando en la víctima.
- Fusionar el contenido del manual de IModule en la guía del diseñador de laboratorios.
- Más soporte para IModule.
27 de enero de 2020
- Introducir soporte inicial para IModules (laboratorios desarrollados por instructores). Ver docs/imodules.pdf.
- Corregir la variable de entorno LABTAINER_DIR rota dentro de update-labtainer
- Corregir modo de acceso en el archivo accounting.txt en el laboratorio ACL (se había convertido en rw-r-r). Usar chmod explícito en fixlocal.sh.
14 de enero de 2020
- Migrar framework y gradelab a Python3 (los laboratorios existentes en Python2 no cambiarán)
- Usar opciones random.seed compatibles con versiones anteriores
- Hackear randint no compatible para que devuelva valores antiguos
- Continuar soportando python2 para plataformas que carecen de python3 (o aquellas como la
máquina virtual más antigua que incluye python 3.5.2, lo que rompe la compatibilidad de random.seed).
- Añadir alias de reconstrucción para rebuild.py que seleccionará python2 si es necesario.
- Las páginas de manual de los laboratorios basados en CentOS fallaban; usar mandb dentro del archivo docker base
- La máscara de red dmz-lab para la red DMZ era incorrecta (detectado por python3); al igual que la dirección IP de la puerta de enlace interna en el manual del laboratorio
- ghex eliminado de los laboratorios centos: ya no es fácilmente compatible con centos 7
- El laboratorio file-deletion debe completarse sin reiniciar la VM, tenga en cuenta esto en el Manual del Laboratorio.
- Añadir conmutador NO_GW a start.config para deshabilitar las puertas de enlace predeterminadas en los contenedores.
- El laboratorio Metasploit bloquea la VM anfitriona si se ejecuta como privilegiado; largas demoras en su si systemd está habilitado; por lo tanto, ejecutar sin systemd.
Eliminar el uso de la base de datos del manual del laboratorio, configurar para usar el nuevo conmutador no_gw
- Actualizar encabezados de archivos para licencias/términos; añadir archivo de licencia consolidado.
- Modificar publish.py para que por defecto use el registro de prueba, usar -d para forzar el uso de default_registry
- Revisar procedimientos de control de versiones para usar un registro de prueba diferente para cada rama, y usar una rama premaster
para la prueba final de una versión.
9 de octubre de 2019
- Eliminar dnsmasq del componente dns en dmz-lab. Estaba causando que bind fallara en algunas instalaciones.
8 de octubre de 2019
- Error de sintaxis en la configuración del registro de prueba; información del diseñador de laboratorio sobre archivos grandes; obtener archivos bigexternal.txt
30 de septiembre de 2019
- La recuperación del registro de DockerHub vuelve a fallar para algunos usuarios. Ignorar prefijo html a json.
20 de septiembre de 2019
- La evaluación de onewayhash debería permitir operaciones hmac en un archivo elegido por el estudiante.
5 de septiembre de 2019
- Reconstruir laboratorio metasploit, metasploit-framework mostró un error. Y el archivo "treataslocal" de los laboratorios se omitió en la migración desde svn. Corregir tipo en el manual del laboratorio metasploit.
30 de agosto de 2019
- Revertir la comprobación de existencia de directorios de contenedores, no siempre existen.
29 de agosto de 2019
- Las descargas de imágenes de laboratorio desde docker hub fallaron debido a un cambio en github o curl? Capturar redirección a cloudflare.
Adición de soporte GNS3. Corrección en dmz-lab dnssec.
11 de julio de 2019
- Evaluación automatizada para contenedores CentOS6, corrección para el problema de memoria de firefox, soporte para argumentos arbitrarios de docker create en el archivo start.config.
6 de junio de 2019
- Introducir una base Centos6, pero aún no soporte para evaluación automatizada
23 de mayo de 2019
- La evaluación automatizada de setuid-env falló debido a errores tipográficos en los separadores de campos.
8 de mayo de 2019
- Correcciones al manual del laboratorio Capabilities
2 de mayo de 2019
- Corrección del laboratorio Acl a los permisos de bobstuff.txt. Usar chmod explícito en fixlocal.sh
- Revisar la guía del estudiante para aclarar el uso de la opción stop y -r en el cuerpo del manual.
9 de marzo de 2019
- La función checkwork estaba reutilizando contenedores, impidiendo así que los estudiantes eliminaran artefactos de trabajos de laboratorio anteriores.
- Agregar apéndice al laboratorio symkey para describir el formato de imagen BMP.
22 de febrero de 2019
- El servidor http no se inició en los laboratorios vpn y vpn2. La evaluación automatizada se eliminó de esos laboratorios hasta que se reelaboren.
7 de enero de 2019
- Corregir la evaluación automatizada de gdblesson para que al menos sea operativa.
27 de enero de 2019
- Corregir el manual del laboratorio para routing-basics2 y corregir el enrutamiento para permitir acceso externo al servidor web interno.
29 de diciembre de 2018
- Corregir routing-basics2, mismos problemas que routing-basics, más una dirección IP incorrecta en el resolv.conf de la puerta de enlace
5 de diciembre de 2018
- Corregir el laboratorio routing-basics, la resolución DNS en los componentes isp y gateway estaba rota.
14 de noviembre de 2018
- Eliminar /run/nologin de la máquina de archivo en backups2: se necesita una solución general para este problema de nologin
5 de noviembre de 2018
- Cambiar el aid.conf predeterminado del laboratorio file-integrity para rastrear cambios en metadatos en lugar de tiempos de modificación de archivos
22 de octubre de 2018
- La resolución de verydodgy.com en el laboratorio macs-hash falló al reiniciar el laboratorio
- La función de notificación fallaba si faltaba notify_cb.sh
12 de octubre de 2018
- Establecer ulimit en el tamaño de archivo, límite a 1G
10 de octubre de 2018
- Forzar la recopilación de archivos parametrizados
- Incluir explícitamente leafpad y ghex en la línea base de centos-xtra y reconstruir imágenes dependientes.
28 de septiembre de 2018
- Corregir modos de acceso de archivo compartido en el laboratorio ACL
- Aclarar pregunta en pass-crack
- Modificar la recopilación de artefactos para ignorar archivos anteriores al inicio del laboratorio.
- Añadir laboratorio de algoritmos de computación cuántica
12 de septiembre de 2018
- Corregir errores de sintaxis en la evaluación de setuid-env
- Corregir error de sintaxis en reglas de firewall de ejemplo de iptables2
- Reconstruir laboratorios centos, mover derivados de lamp para que usen lamp.xtr para waitparam y forzar a httpd a esperar a que termine.
7 de septiembre de 2018
- Añadir CyberCIEGE como laboratorio
- Mostrar información de read_pre.txt antes de la descarga de imágenes, y oportunidad de cancelar.
5 de septiembre de 2018
- Restaurar el procesamiento de descarga masiva de sakai en la función gradelab.
- Eliminar scripts de instructor no utilizados.
4 de septiembre de 2018
- Permitir múltiples direcciones IP por interfaz de red
- Añadir imagen base para Wine
- Añadir simulación virtual GRFICS de ICS
23 de agosto de 2018
- Añadir laboratorio GrassMarlin (descubrimiento de redes ICS)
23 de agosto de 2018
- Añadir laboratorio GrassMarlin (descubrimiento de redes ICS)
21 de agosto de 2018
- Otra corrección en torno a problemas de autenticación de AWS (DockerHub usa AWS).
- Corregir new_lab_setup.py para usar git en lugar de svn.
- Dividir el laboratorio plc-forensics en un laboratorio básico y uno avanzado (plc-forensics-adv)
17 de agosto de 2018
- Transición a git y GitHub como repositorio autorizado.
15 de agosto de 2018
- Modificar la evaluación del laboratorio plc-forensics para que sea más general; revisar el manual del laboratorio para reflejar wireshark en Labtainer.
15 de agosto de 2018
- Añadir comando "checkwork" que permite a los estudiantes ver los resultados de la evaluación automatizada de su trabajo de laboratorio.
- Incluir registro de descartes de paquetes de iptables en los laboratorios iptables2 e iptables-ics.
- Eliminar instancias obsoletas de is_true e is_false de goal.config
- Corregir la evaluación booleana para manejar "NOT foo", esperaba más operandos.
9 de agosto de 2018
- Soporte para reemplazo de parámetros en archivos results.config
- Añadir tipo de resultado TIME_DELIM para results.config
- Reelaborar el laboratorio iptables, eliminar comandos ocultos de nmap, introducir servicio personalizado
7 de agosto de 2018
- Añadir enlace a la guía del estudiante en el directorio labtainer-student
- Añadir enlace a la guía del estudiante en los escritorios de las VM
- Correcciones a iptables-ics para evitar larga demora al apagar; y correcciones a pruebas de regresión
- Añadir nota en las guías sugiriendo que los estudiantes usen el navegador de la VM para transferir el archivo zip de artefactos al instructor.
1 de agosto de 2018
- Usar una imagen Docker genérica para la evaluación automatizada; dejar de crear imágenes "instructor" por laboratorio.
30 de julio de 2018
- Documentar la necesidad de desbloquear waitparam.service (creando el directorio de bandera) si un script fixlocal.sh va a iniciar un servicio para el cual waitparam es un requisito previo.
- Añadir laboratorio plc-app para firewall de aplicaciones PLC y ejercicio de listas blancas.
25 de julio de 2018
- Añadir operador string_contains al procesamiento de objetivos
- Modificar la evaluación del laboratorio formatstring para tener en cuenta que el secreto filtrado no siempre está al final de la cadena mostrada.
24 de julio de 2018
- Añadir laboratorio SSH Agent (ssh-agent)
20 de julio de 2018
- Soporte para compilación sin conexión, opcionalmente omitir todas las descargas de imágenes
- Restaurar la restauración de repositorios apt/yum en las plantillas de Dockerfile.
- Manejar URL de redirección de la recuperación de blobs del registro Docker para evitar errores de autenticación (No confiar en curl --location).
12 de julio de 2018
- Añadir función prestop para permitir la ejecución de scripts especificados por el diseñador en componentes seleccionados antes del cierre del laboratorio.
- Corregir nombres de host en el laboratorio ssl, estaba rompiendo la evaluación automatizada.
- Corregir el estado inicial de dmz-lab para permitir resoluciones DNS desde la red interna.
- El procesamiento de FILE\REGEX no manejaba correctamente las búsquedas multilínea.
- La versión del framework derivada de imágenes recién reconstruidas tenía un valor predeterminado incorrecto.
10 de julio de 2018
- Añadir un laboratorio LDAP
- Completar la transición a imágenes Ubuntu basadas en systemd, eliminar archivos no utilizados
- Mover el archivo tar lab_sys al directorio tmp por contenedor para concurrencia.
6 de julio de 2018
- Todas las imágenes base de Ubuntu reemplazadas con versiones basadas en systemd
- Las imágenes de contenedor Labtainer en el registro ahora están etiquetadas con el ID de la imagen base y tienen etiquetas que reflejan la imagen base.
- Una instalación determinada descargará y usará imágenes que sean consistentes con las imágenes base que posee.
- Si está usando una imagen de VM, es posible que desee reemplazarla con una imagen de VM más nueva de nuestro sitio web.
- Los nuevos laboratorios no se ejecutarán sin descargar imágenes base más nuevas; lo que puede llevar a que su VM almacene múltiples versiones de imágenes base grandes (> 500 MB cada una).
- Se perdían artefactos de procesos que se estaban ejecutando cuando se detuvo el laboratorio: no se estaban eliminando correctamente los procesos capinout.
27 de junio de 2018
- Añadir soporte para imágenes Ubuntu con systemd
- Eliminar copia antigua de SimLab.py de labtainer-student/bin
- Mover fuentes apt y yum a /var/tmp
- Aclarar diferencias entre el uso de "boolean" y "count_greater" en las evaluaciones
- Extender Add-HOST en start.config para incluir todos los componentes en una red.
- Añadir opción a new_lab_setup.py para añadir un contenedor basado en una copia de un contenedor existente.
21 de junio de 2018
- Establecer variable DISPLAY para root
- Corrección en el manejo de dependencias de compilación de la salida de svn status
- Añadir laboratorio radius
- Error en append de SimLab corregido
- Usar svn, cuando corresponda, para cambiar nombres de archivos con new_lab_setup.py
19 de junio de 2018
- Mantener el orden de los contenedores definidos en start.conf al crear terminal con múltiples pestañas
- Aclarar el manual del diseñador para identificar la ruta a los archivos de configuración de evaluación.
- Eliminar solicitud para que el instructor proporcione correo electrónico
- Comprobación de errores defectuosa al probar el número de versión
- Incluir marcas de tiempo de inicios y repeticiones de laboratorio en el json de evaluación
- Añadir un laboratorio SSL que incluya autenticación bidireccional y creación de certificados.
14 de junio de 2018
- Añadir diagnósticos a la parametrización, rastrear por qué algunas instalaciones parecen fallar en eso.
- Si un contenedor ya está creado, asegurarse de que esté parametrizado, de lo contrario cancelar para evitar contenedores corruptos o a medio hacer.
- Corregir el número de versión del programa para usar svn HEAD
15 de junio de 2018
- Convertir instrucciones de texto plano que aparecían en xterms en archivo pdf.
- Corregir error en el manejo de versiones de imágenes que aún no se han descargado.
- Detectar la ocurrencia de un contenedor que fue creado, pero no parametrizado, y solicitar al usuario que reinicie el laboratorio con la opción "-r".
- Añadir utilidad para diseñador: rm_svn.py para que los archivos eliminados activen una reconstrucción de imagen.
13 de junio de 2018
- Instalar xterm en sistemas Ubuntu 18
- Solucionar problema en nuevas versiones del manejo de pestañas de gnome-terminal
11 de junio de 2018
- Añadir comprobación de versiones para comparar imágenes con el framework.
- Aclarar varios manuales de laboratorio
2 de junio de 2018
- Al instalar en Ubuntu 18, usar docker.io en lugar de docker-ce
- capinout causaba un bloqueo cuando un comando monitoreado con "sudo su" era seguido por un comando de usuario no elevado.
- Mover la configuración de enrutamiento y resolv.conf a /etc/rc.local en lugar de fixlocal.sh para que persistan entre inicio/parada de los contenedores.
31 de mayo de 2018
- Solucionar un error de Docker que causaba que el texto se ajustara en un terminal sin un salto de línea.
- Extender COMMAND_COUNT para tener en cuenta tuberías
- Crear nueva versión del laboratorio backups que incluye copias de seguridad a un servidor remoto y realiza copia de seguridad de una partición completa.
- Modificar instrucciones de sshlab para usar la utilidad ssh-copy-id
- Eliminar archivo /run/nologin de parameterize.sh para permitir inicio de sesión ssh en CentOS
30 de mayo de 2018
- Extendido new_lab_setup.py para permitir la identificación de la imagen base a usar
- Crear nueva versión de centos-log que incluya registro centralizado.
- La validación de evaluación no aceptaba la opción "time_not_during".
- Comenzar a integrar Labtainer Master para gestionar Labtainers desde un contenedor Docker.
25 de mayo de 2018
- Eliminar pausas de 10 segundos de varios servicios. Estaba retrasando las respuestas de xinetd, rompiendo pruebas automatizadas.
- Corregir la evaluación del laboratorio snort para que solo requiera "CONFIDENTIAL" en la alarma. Eliminar archivos no utilizados del laboratorio.
- Los tiempos de finalización del programa no se registraban si el programa se estaba ejecutando cuando se detuvo el laboratorio.
21 de mayo de 2018
- Corregir evaluación de retlibc para eliminar objetivo duplicado, fallaba la evaluación automatizada
- Eliminar copias de mynotify.py de laboratorios individuales y plantilla de laboratorio, ya ha sido parte de lab_sys/sbin, pero no se había actualizado para reflejar las correcciones realizadas para el laboratorio acl.
18 de mayo de 2018
- Enmascarar mensaje de señal de exec_wrap para que el mensaje de error segv se vea correcto.
- capinout a veces perdía stdout, verificar stdout del comando al morir cmd.
- Corregir evaluación de formatstring para capturar mensaje de fallo de segmentación.
- Añadir funcionalidad type_function a SimLab para escribir stdout de un script (ver formatstring simlab).
- Eliminar limitación de SimLab para combinar comillas simples/dobles.
- Añadir directiva window_wait a SimLab para pausar hasta que se pueda encontrar una ventana con el título dado.
- Modificar el laboratorio plc para alterar títulos en el terminal del mundo físico para reflejar el estado, esto también facilita las pruebas.
- Corregir enlace del manual del laboratorio bufoverflow.
15 de mayo de 2018
- Añadir apéndice sobre el uso de la herramienta SimLab para simular el rendimiento del usuario en laboratorios para pruebas de regresión y desarrollo de laboratorios.
- Añadir función wait_net a SimLab para pausar hasta que terminen las conexiones de red seleccionadas.
- Cambiar la evaluación automatizada de acl para usar FILE_REGEX en coincidencias multilínea.
- Prueba de SimLab para el laboratorio xsite.
11 de mayo de 2018
- Añadir archivo "noskip" para forzar la recopilación de archivos que de otro modo se encuentran en home.tar, necesario para recuperar Firefox places.sqlite.
- Fusionar base de datos sqlite con el búfer de escritura anticipada antes de extraer.
- Correcciones al manual del laboratorio para symkeylab
- Adiciones de evaluación para symkeylab y pubkey
- Mejoras a la herramienta simlab: soporte para include, corrección en la nomenclatura de ventanas.
9 de mayo de 2018
- Corregir la parametrización del laboratorio file-deletion. Corregir error en su manual de laboratorio.
- Reemplazar el uso de shell=True en scripts python para reducir procesos y permitir el seguimiento de PID
- Limpiar manuales para backups, pass-crack y macs-hash.
8 de mayo de 2018
- Manejar condición de carrera para evitar que gnome-terminal ejecute su comando docker antes de que un terminal de instrucciones xterm ejecute su comando.
- No mostrar errores cuando el instructor detiene un laboratorio iniciado con "-d".
- Cambiar la evaluación de nmap-ssh para reflejar mejor la intención del laboratorio.
- Varias correcciones de documentos y scripts sugeridas por olberger en github.
7 de mayo de 2018
- Usar programa capinout basado en C en lugar del antiguo capinout.sh para capturar stdin y stdout. Ver trunk/src-tool/capinout. Elimina limitaciones asociadas con el uso de Ctrl-C para interrumpir programas monitoreados y la visualización de contraseñas en telnet y ssh.
- Incluir soporte para procesamiento de zip de descarga masiva de sakai para extraer informes enviados por separado y resumir envíos faltantes.
- Añadir comprobaciones al correo electrónico proporcionado por el usuario para asegurar que sean caracteres imprimibles.
- Al calificar, si el correo electrónico proporcionado por el usuario no coincide con el nombre del archivo zip, proceder a calificar los resultados, pero incluir una nota en la tabla que refleje cheating. Necesario para recuperarse de casos donde el estudiante ingresa basura para una dirección de correo electrónico.
- Cambiar la evaluación de telnetlab para no mirar la salida de tcpdump en busca de contraseñas: la corrección de capinout conduce a una transmisión correcta carácter por carácter al servidor.
- Corregir error tipográfico en install-docker.sh y usar sudo para alterar la configuración de dns de Docker en ese script.
26 de abril de 2018
- Transición al uso de "labtainer" para iniciar laboratorio, y "stoplab" para detenerlo.
- Añadir opción --version al comando labtainer.
- Añadir tipos de resultado log_ts y log_range, y operadores de objetivo time_not_during. Renovar la evaluación de centos-log y sys-log para usar estas características.
- Colocar labsys.tar en /var/tmp en lugar de /tmp, a veces se eliminaba antes de expandirse
- Ejecutar aplicaciones X como root falla después de reiniciar la VM.
- Añadir páginas man de "User Command" a laboratorios basados en CentOS
- Corregir error reciente que impedía la recopilación de archivos docs de los estudiantes
- Modificar smoke-tests para que solo comparen la línea de resultado específica del estudiante, sin espacios en blancoApril 20, 2018
- El servicio denyhosts falla al iniciar la primera vez, se movió el inicio a student_startup.sh.
- Mover todos los servicios faux_init hasta después de la parametrización -- rsyslog fallaba al iniciar
en el segundo arranque del contenedor.
April 19, 2018
- El laboratorio acl no evaluaba correctamente el rendimiento del paso del caballo de Troya.
- Recopilar documentos de los estudiantes por defecto.
- El laboratorio denyhost cambió para reflejar que denyhosts (¿o tcp wrappers?) ahora
modifica iptables. Además, el servicio denyhosts fallaba al iniciar en algunas ocasiones.
- Al actualizar Labtainers, no sobrescribir archivos más nuevos que los del
archivo -- preservar los informes de laboratorio de los estudiantes.
April 12, 2018
- Agregar documentación sobre el propósito de los objetivos del laboratorio, y mostrarla al instructor
cuando el instructor inicia un laboratorio.
- Corregir el uso de la función precheck cuando el programa está en treataslocal, pasar a capintout.sh
la ruta completa del programa.
- Copiar los archivos instr_config en tiempo de ejecución en lugar de durante la construcción de la imagen.
- Agregar sección en la Guía del Diseñador sobre depuración de evaluación automatizada.
- Caso incorrecto en los nombres de archivo de informes de laboratorio.
- La función chown innecesaria causaba que instructor.py a veces fallara.
- Soporte para pruebas automatizadas de laboratorios (ver SimLab y smoketest).
- Mover testsets y distrib bajo trunk
April 5, 2018
- Revisar el perfil de Firefox para eliminar el mensaje "no has usado Firefox en un tiempo...".
- Eliminar extracciones innecesarias del registro -- obtener las fechas de las imágenes a través de la API de docker hub en su lugar.
March 28, 2018
- Usar tar explícito en lugar de "docker cp" para archivos del sistema (Docker no
sigue enlaces).
- Arreglar el laboratorio backups para que use un sistema de archivos separado y actualizar el manual.
March 26, 2018
- Soporte para modos multiusuario (ver Guía del Usuario del Diseñador de Laboratorios).
- Se eliminó la dependencia de construcción de los archivos lab_bin y lab_sys. Ahora se copian
durante la parametrización del laboratorio.
- Mover capinout.sh a /sbin para que se pueda encontrar al ejecutar como root.
March 21, 2018
- Agregar CLONE para permitir múltiples instancias del mismo contenedor, por ejemplo, para
laboratorios compartidos por varios estudiantes concurrentes.
- Adaptar el laboratorio kali-test para proporcionar un ejemplo de macvlan y CLONE
- Copiar el script capinout.sh a /sbin para que root pueda encontrarlo después de un sudo su.
March 15, 2018
- Soporte para redes macvlan para comunicaciones con hosts externos
- Agregar una base Kali linux y una imagen Metasploitable 2 (ver kali-test)
March 8, 2018
- No requerir labname al usar stop.py
- Capturar errores causados por redes huérfanas y aconsejar al usuario una solución
- Agregar soporte para uso de repositorios apt y yum locales en NPS
February 21, 2018
- Agregar dmz-lab
- Cambiar "checklocal" a "precheck", reflejando que se ejecuta antes del comando.
- Desacoplar la notificación de eventos inotify del uso de precheck.sh, permitir que las listas de eventos inotify
incluyan un nombre de archivo de salida opcional.
- Extender el hook de bash a operaciones de root, vaciar ese bash_history.
- Permitir parametrización de campos de start.config, por ejemplo, para direcciones IP aleatorias
- Soporte para monitoreo de servicios iniciados mediante systemctl o /etc/init.d
- Introducir calificadores de delimitador de tiempo para organizar un archivo de registro con marca de tiempo en
rangos delimitados por algún cambio de configuración de interés (ver dmz-lab)
February 5, 2018
- Los valores booleanos de los archivos results.config ahora se tratan como valores de objetivo
- Agregar soporte de expresiones regulares para identificar resultados de artefactos.
- Soporte para registros Docker alternativos, incluido un registro de prueba local para pruebas
- Varias correcciones a laboratorios y manuales de laboratorio
- El hook de monitoreo capinout no mataba los procesos hijo al salir.
- Matar procesos monitoreados antes de recopilar artefactos
- Agregar labtainer.wireshark como contenedor base, limpiar dockerfiles
January 30, 2018
- Agregar laboratorio snort
- Integrar marcas de tiempo de archivos de registro, por ejemplo, de syslogs, en resultados con marca de tiempo.
- Eliminar valores de resultado no definidos de archivos de resultado json intermedios con marca de tiempo.
- Alterar la operación de evaluación de objetivo time_during para asociar marcas de tiempo con
el valor de objetivo resultante.
January 24, 2018
- El uso de ventanas con pestañas causaba fallos en el lado del instructor, usar comillas dobles.
- Ignorar archivos en directorios _tar (que no sean .tar) al determinar dependencias de construcción.