Zurück zu den Updates
New releaseSep 12, 2026

Labtainers v1.4.4n

Labtainers: Ein Docker-basiertes Cyber-Lab-Framework

Teilen

Labtainers: Ein Docker-basiertes Cyber-Lab-Framework

Labtainers umfassen mehr als 50 Cyber-Lab-Übungen und Werkzeuge, um eigene zu erstellen. Importieren Sie eine einzelne VM-Appliance oder installieren Sie auf einem Linux-System, und Ihre Studierenden sind mit der Bereitstellung und administrativen Einrichtung für diese und zukünftige Lab-Übungen fertig.

  • Konsistente Lab-Ausführungsumgebungen und automatisierte Bereitstellung über Docker-Container
  • Mehrkomponenten-Netzwerktopologien auf einem bescheiden ausgestatteten Laptop
  • Automatisierte Bewertung der studentischen Lab-Aktivitäten und des Fortschritts
  • Individualisierte Lab-Übungen, um das Teilen von Lösungen zu erschweren

Labtainers bieten kontrollierte und konsistente Ausführungsumgebungen, in denen Studierende Labs vollständig innerhalb der Grenzen ihres Computers durchführen, unabhängig von der Linux-Distribution und den auf dem Computer der Studierenden installierten Paketen. Labtainers laufen auf unserer [VM-Appliance][vm-appliancee] oder auf jedem Linux mit installiertem Docker. Und Labtainers ist als cloudbasierte VMs verfügbar, z. B. auf Azure, wie im Student Guide beschrieben.

Siehe den Student Guide für Installation und Nutzung sowie den Instructor Guide für die Bewertung von Studierenden. Die Entwicklung und Anpassung von Lab-Übungen wird im Designer Guide beschrieben. Siehe die Papers für weitere Informationen über das Framework. Die Labtainers-Website und Downloads (einschließlich VM-Appliances mit vorinstallierten Labtainers) finden Sie unter https://nps.edu/web/c3o/labtainers.

Distribution created: 09/11/2026 11:33
Revision: v1.4.4n
Commit: 9f1012dc
Branch: master

Inhalt

Verteilung und Nutzung

Leitfaden zu den Verzeichnissen

Support

Versionshinweise

Verteilung und Nutzung

Bitte beachten Sie die Lizenzierungs- und Vertriebsinformationen in der docs/license.md-Datei.

Leitfaden zu den Verzeichnissen

  • scripts/labtainers-student -- das Arbeitsverzeichnis zum Ausführen und Testen von Studierenden-Labs. Sie müssen sich in diesem Verzeichnis befinden, um Studierenden-Labs auszuführen.

  • scripts/labtainers-instructor -- das Arbeitsverzeichnis zum Ausführen und Testen automatisierter Bewertungen und zum Anzeigen von Studierenden- ergebnissen.

  • labs -- Dateien, die für jedes der Labs spezifisch sind

  • setup_scripts -- Skripte zum Installieren von Labtainers und Docker sowie zum Aktualisieren von Labtainers

  • docs -- LaTeX-Quelle für labdesigner.pdf und weitere Dokumentation.

  • UI -- Quellcode des Labtainers-Lab-Editors (Java).

  • headless-lite -- Skripte zur Verwaltung von Docker Workstation und Cloud-Instanzen von Labtainers (Systeme, die keine nativen X11-Server haben.)

  • scripts/designer -- Werkzeuge zum Erstellen neuer Labs und zur Verwaltung von Basis-Docker-Images.

  • config -- systemweite Konfigurationseinstellungen (dies sind nicht die lab-spezifischen Konfigurationseinstellungen.

  • distrib -- Skripte zur Unterstützung der Distribution, z. B. zum Veröffentlichen von Labs im Docker Hub.

  • testsets -- Testverfahren und erwartete Ergebnisse. (Pro-Lab-Treiber für SimLab werden nicht verteilt).

  • pkg-mirrors -- Hilfsskripte für internes NPS-Paket-Mirroring, um das externe Abrufen von Paketen während Tests und Distribution zu reduzieren.

Support

Verwenden Sie die GitHub-Issue-Berichte oder schreiben Sie mir an [email protected]

Siehe auch https://my.nps.edu/web/c3o/support1

Versionshinweise

Die Standard-Labtainers-Distribution enthält keine Dateien, die für die Entwicklung neuer Labs erforderlich sind. Führen Sie für diese ./update-designer.sh aus dem Verzeichnis labtainer/trunk/setup_scripts aus.

Das Installationsskript und das Skript update-designer.sh setzen Umgebungsvariablen, daher sollten Sie sich möglicherweise ab- und wieder anmelden oder eine neue Bash-Shell starten, bevor Sie Labtainers zum ersten Mal verwenden.

  1. Januar 2026
  • Fehler behoben, der durch Einrückungen in das Installationsskript eingeführt wurde.
  1. Dezember 2025
  • Format des checkwork-Berichts auf vertikal geändert; Videoanleitung für Headless; praktische Pfade
  1. Oktober 2025
  • Das Lab packet-introspection überarbeitet, um den Link für die MaxMind-Geolokalisierungsdatenbank zu aktualisieren und die Verwendung der Legacy-Datenbank zu vermerken.
  1. April 2025
  • imodule korrigiert, um fehlende Verzeichnisse gemäß Pull Request #96 ordnungsgemäß zu erstellen
  1. November 2024
  • Google-Cloud-VM ersetzt, diesmal aufgrund eines Ausfalls von systemd innerhalb von Containern.
  1. September 2024
  • Google-Cloud-VM ersetzt, die die falsche Docker-Version verwendete
  1. September 2024
  • Tippfehler bei der Erstellung des imodule-Pfads
  1. Juli 2024
  • capinout so geändert, dass es nicht die grantpt-clib-Funktion verwendet, die anscheinend jetzt abstürzt, wenn sie aus einem Container heraus ausgeführt wird.
  1. Juli 2024
  • Einen Basis-Container für Ubuntu22 und Änderungen am Framework hinzugefügt, um diesen zu unterstützen.
  1. Juli 2024
  • Migration auf Ubuntu 24 als VM-Appliance
  • Das Docker-Python-Paket verwendet eine defekte Python-HTTP-Bibliothek und erfordert ein Paket-Downgrade.
  • Virtuelle Python-Umgebung verwenden, um die Sperrung von Python-Paketen durch Ubuntu zu umgehen.
  • Boot-Parameter hinzugefügt, um die gemeinsame Nutzung von systemd zwischen Containern und der VM zu ermöglichen.
  • Fehlermeldungen des defekten tar-Dienstprogramms bei Updates umgeleitet.
  • Ubuntu-Update-Beschädigung für msc-Pakete (siehe update-ubuntu.sh) für Version-18-VMs
  • Der Befehl docker-compose ist defekt, verwenden Sie "docker compose"
  • Socket-Berechtigungen in Headless-Labtainers erzwingen.
  • Headless-Labtainers auf Ubuntu 24 aktualisiert
  1. November 2023
  • Google-Cloud-Platform-Option für ubuntu22 auf EC2-Maschine hinzugefügt.
  1. September 2023
  • Die vorherige Fehlerbehebungsimplementierung war fehlerhaft.
  1. August 2023
  • Änderung des DockerHub-Image-JSON-Formats behandelt. Danke Kees!
  1. April 2023
  • Erzwingen, dass die neueste Lab-Version verwendet wird, z. B. iptables2 statt iptables. Tab-Vervollständigung korrigiert, sodass nur die neueste angezeigt wird. (Issue #77)
  • Die Installation des CyberCIEGE-Labs schlug aufgrund einer X11-Race-Condition fehl. (Issue #76)
  • Hinweis in der CyberCIEGE-Readme, um Studierende anzuweisen, gesammelte Logs im $HOME-Verzeichnis zu speichern. (Issue #75)
  • Die Radius-Lab-checkwork meldete fälschlicherweise "radiusd not running", fehlendes prestop-Skript. (Issue #74)
  • Labedit beschädigte die Startkonfigurationsdatei, wenn die Option MACVLAN_EXT verwendet wurde. (Issue #73)
  1. Februar 2023
  • Die Bash-Historie für Nicht-Standardbenutzer wurde nicht gespeichert.
  1. Januar 2023
  • PowerShell-Skripte für gcloud geändert, um die ausgewählte Zone zur Qualifizierung von VM-Namen zu verwenden.
  1. Januar 2023
  • Container, die systemd verwendeten, schlugen bei neuerem systemd in Ubuntu 22 fehl
  • Parameter --zone zu den Google-Cloud-Skripten hinzugefügt, mit einem Wert, der aus dem set_defaults-Skript abgeleitet wird.
  1. Dezember 2022
  • Die Kriterien für xforge-Ergebnisse korrigiert, sodass kein Pfadname erwartet wird, und eine Prüfung hinzugefügt, ob POST zum Bearbeiten des Profils ausgegeben wurde. Und den Angreifer- HTTP-Server so korrigiert, dass er aus dem Home-Verzeichnis läuft.
  1. Dezember 2022
  • strace-Lab hinzugefügt, um Systemaufruf-Tracing einzuführen.
  • Der X11-DISPLAY-Wert war falsch, wenn mehrere Geräte im Verzeichnis /tmp/.X11-unix vorhanden waren.
  • Die Verwendung von python/bash/sh/etc. ohne Argumente führte zum Absturz von capinout.
  1. Dezember 2022
  • Das Azure-VM-Erstellungsskript so geändert, dass ein vorgefertigtes Labtainer-VM-Image aus der Azure Community Gallery verwendet wird.
  • Terminals auf Cloud-VMs stürzen aus unbekannten Gründen während des Starts oder beim Rechtsklick auf das Terminal ab. Versuch, dies durch Starten/Stoppen eines Terminals zu beheben.
  1. Dezember 2022
  • Beim Sammeln von Artefakten geänderte Dateien aus Verzeichnissen von Nicht-Standardbenutzern einbeziehen, z. B. deren Bash-Historien.
  • Die Web-Bewertung so ändern, dass die neuen Dateien "anderer Benutzer" angezeigt werden.
  • Dateien aus .local/bin in jedem Container in Artefakte einbeziehen. Beabsichtigt, diese dem Dozenten über die Web-Bewertung verfügbar zu machen.
  • Im ACL-Lab die Datei /shared_data/bob/fun in die Ergebnisse aufnehmen, damit der Dozent sie einsehen kann.
  • Die Verwendung von "sh" oder "bash" von der Kommandozeile abfangen und beim Parsen für einen gegebenen Befehl überspringen, z. B. wie bei "time" oder "sudo".
  • Im tcpip-Lab konnte während nachfolgender Lab-Sitzungen kein SSH auf den Server erfolgen, das Verzeichnis /run/sshd wurde nicht neu erstellt.
  1. November 2022
  • Pfad zum Snort-Handbuch im snort-Lab korrigiert.
  • Im ossec-Handbuch den Pfad zu manage_agents korrigiert
  1. Oktober 2022
  • Google Cloud: Hintergrundoperator aus dem gnome-terminal-Befehl entfernt; stürzt beim Rechtsklick weiterhin ab, scheint aber nach dem Ausführen eines newterm.sh stabil zu sein.
  1. Oktober 2022
  • Google Cloud newterm.sh korrigiert; die Boot-Disk auf 30G erweitert.
  1. September 2022
  • Benutzer-ID und Passwort für das TCP/IP-Lab im Lab-Handbuch vermerkt.
  1. August 2022
  • Den X11-Socket-Namen beim Setzen von DISPLAY aus der .profile eines Containers verwenden
  1. August 2022
  • Den Namen der Funktion processValueMax im Grader korrigiert. Issue #63
  1. August 2022
  • Das Programm labedit wurde mit dem falschen JDK neu gebaut, wodurch ältere JREs daran gehindert wurden, labedit auszuführen
  1. Juli 2022
  • Die Erstellung von Containern auf Ubuntu20-Basis schlug innerhalb von IModules fehl. Issue #61.
  1. März 2022
  • Pfad zum tap-lock-Verzeichnis korrigiert; verursachte das Scheitern von Labs, die Netzwerk-Taps verwenden
  • Den plc-traffic-netmon-Computer so aktualisiert, dass er openjfx hat, das für das neue grassmarlin in der Java-Umgebung benötigt wird
  • Den Lab-Start beschleunigt, indem chown -R vermieden wird, was in Docker sehr langsam ist.
  • Ein weiterer Versuch, die Löschung des X11-Links im /tmp-Verzeichnis des Containers zu vermeiden.
  • Die webtrack-Zählung der besuchten Seiten korrigiert und das live-headers-Ziel entfernt, da dieses Tool nicht mehr verfügbar ist. Einige Schritte im Lab-Handbuch klargestellt.
  1. März 2022
  • Neues ssh-tunnel-Lab hinzugefügt (danke GWD!)
  • labedit-Fehler behoben, den von new_lab_setup gesetzten X11-Wert widerzuspiegeln
  • Option hinzugefügt, einen Container nicht zu parametrisieren
  1. Februar 2022
  • labedit beschädigte start.config nach dem Hinzufügen neuer Container
  • Falscher Pfad zum Student Guide in der studentischen README-Datei; für Cloud-Konfigurationen dynamisch ändern
  • Falsche Erweiterung für update-labtainer.sh
  • Verbesserungen am Msc-Handbuch
  • Das ghidra-Lab aktualisiert, um Version 10.1.2 von Ghidra einzubeziehen
  1. Februar 2022
  • Azure-Cloud-Unterstützung darauf zurückgesetzt, für jeden Studierenden bereitzustellen. Azure rät von der gemeinsamen Nutzung von Ressourcen ab.
  1. Januar 2022
  • Azure Cloud verwendet jetzt ein in einem Azure-Blob gespeichertes Image, anstatt für jeden Studierenden bereitzustellen.
  • Unterstützung für Google Cloud hinzugefügt.
  1. Januar 2022
  • Labtainers in der Azure-Cloud eingeführt. Einzelheiten zur Verwendung finden Sie im Student Guide.
  1. Januar 2022
  • Das setuid-env-Lab überarbeitet, um eine bessere Bewertung hinzuzufügen; SimLab-Tests und Vermeidung von SIGHUP im printenv-Kindprozess.
  • Die Direktive zur Zählung der Bewertungsziele korrigiert, um Ergebnis-Tag-Werte von false auszuschließen.
  • labname nicht erforderlich machen, wenn gradelab -a mit einem mit der Debug-Option gestarteten Grader verwendet wird.
  • capinout (stdin/stdout-Spiegelung) überarbeitet, um die Verwaisung von Kindprozessen des Befehls zu behandeln, verbesserte Dokumentation und Fehlerbehandlung.
  • Anzeige von Fortschrittsbalken für Docker-Images hinzugefügt, die beim ersten Ausführen eines Labs gezogen werden.
  • Benutzerfeedback zum Fortschritt der Container-Initialisierung.
  • Im pcap-lib-Lab fehlte eine notify-Datei, die für die automatisierte Bewertung benötigt wird; überflüssigen Schritt aus dem Lab-Handbuch entfernt.
  1. November 2021
  • Ubuntu-Popup-Fehler auf der Test-VM deaktiviert.
  • Behandlung unterschiedlicher DISPLAY-Variablenformate korrigiert.
  1. Oktober 2021
  • Den tcpip-Lab-Leitfaden überarbeitet, um zu vermerken, dass ein erfolgreicher SYN-Flood-Angriff nicht möglich ist. Die automatisierte Bewertung korrigiert und SimLab-Skripte hinzugefügt.
  • Die Dateiendung von Artefakten von zip auf lab geändert und eine Präambel hinzugefügt, um GUI-Dateimanager zu verwirren. Studierende öffneten die Zip-Datei und reichten deren Inhalt ein.
  • Die Option -r für gradelab zur Standardeinstellung gemacht, eine Option -c für die kumulative Nutzung des Graders hinzugefügt.
  • refresh_mirror so geändert, dass es auf das lokale Release-Datum verweist, um häufige Abfragen von DockerHub zu vermeiden. Jede solche Abfrage zählt als Image-Pull, und sie versuchen nun, diese zu monetarisieren.
  1. September 2021
  • Den bufoverflow-Lab-Leitfaden und die Bewertung so geändert, dass kein Erfolg bei aktiviertem ASLR erwartet wird, und bewertet, ob es ausgeführt wurde.
  • Fehlerbehandlung für den Web-Grader für Fälle, in denen Studierenden Ergebnisse fehlen.
  • Warnung ausgeben, wenn ein veraltetes Lab ausgeführt wird.
  • Die formatstring-Bewertung so geändert, dass die ungenutzte Beschreibung "_leaked_secret" entfernt und der Wert von leaked_no_scanf klargestellt wird.
  • Die formatstring-Bewertung außerdem so geändert, dass jeder Name für die verwundbare ausführbare Datei zulässig ist.
  1. September 2021
  • Fehlerbehandlung von Gradelab, Vorkommen von Abstürzen aufgrund fehlerhafter Zip-Dateien reduziert.
  • stdout-Artefaktdateien auf 1MB begrenzt
  1. September 2021
  • Der Ghidra-Lab-Leitfaden hatte eine falsche IP-Adresse und wurde nicht aus der Quelle neu erstellt.
  1. September 2021
  • Beispiellabs für LDAP und Mariadb mit SSL. Gedacht als Vorlagen für neue Labs.
  • Mariadb-Logformat behandelt
  • Parameter pro Container hinzugefügt, um die CPU-Nutzung zu begrenzen oder einen Container an ein CPU-Set zu binden.
  • Labpack-Erstellung jetzt über eine GUI verfügbar (makepackui).
  • Tab-Vervollständigung für die Befehle labtainer, labpack und gradelab.
  • Neues Parallel-Computing-Lab ``parallel'' mit MPI.
  1. August 2021
  • Eine Konfigurationsoption "WAIT_FOR" hinzugefügt, um einen Container zu veranlassen, die Parametrisierung zu verzögern, bis ein anderer Container seine Parametrisierung abgeschlossen hat.
  • Unterstützung für Mariadb-Logformate beim Parsen von Ergebnissen
  • Unterstützung für die Nutzung von Docker Desktop unter Mac und Windows entfernt. Dieses Produkt ist zu instabil, als dass wir es unterstützen könnten.
  • stderr-Meldungen unterdrücken, wenn der Benutzer integrierte Bash-Befehle wie "which" verwendet.
  • Fehlerbehebungen an den Programmen makepack/labpack.
  1. Juli 2021
  • Ein DNS-Lab hinzugefügt, um das DNS-Protokoll und die Konfiguration einzuführen.
  • Das VirtualBox-Appliance-Image überarbeitet, um mit dem richtigen Update-Skript zu starten.
  • Den resolv.conf-Nameserver-Parameter aus dem Konfigurationsfeld lab_gw in einen eigenen Wert aufgeteilt.
  • Der IModule-Befehl schlug fehl, wenn er ausgeführt wurde, bevor irgendein Lab gestartet worden war.
  1. Juli 2021
  • Fehler in der Verwaltung der DISPLAY-Umgebungsvariable brachen GUI-Anwendungen auf Docker Desktop.
  1. Juli 2021
  • Unterstützung der Mac-Paketinstallation von Headless-Labtainers.
  • Die automatisierte Bewertung des routing-basics-Labs schlug aufgrund fehlender treataslocal-Dateien fehl
  • Tippfehler und falsche Adressen im routing-basics-Lab korrigiert und die automatisierte Bewertung repariert.
  • Die Bewertung von pcapanalysis schlug fehl.
  1. Juni 2021
  • Alle Lab-Handbuch-PDFs sind jetzt im GitHub-Repo
  • Die Anleitungen für vpnlab und vpnlab2 in PDF-Lab-Handbücher umgewandelt.
  1. Mai 2021
  • Durchsuchbare Schlüsselwörter zu jedem Lab hinzugefügt. Siehe "labtainer -h" für die Verwendung.
  • Das routing-basics-Lab und das Lab-Handbuch erweitert
  • Das routing-basics2-Lab entfernt, es ist jetzt redundant.
  • sudo schlug auf einigen Containern fehl, weil Hostnamen Unterstriche entfernen, was zu einer Nichtübereinstimmung mit der hosts-Datei führte. Behoben durch einen zusätzlichen Eintrag in der hosts-Datei mit dem Containernamen ohne Unterstrich.
  • Neue Labpack-Funktion zum Paketieren einer Sammlung von Labs und das makepack-Tool zum Erstellen von Labpacks.
  • Fehlerprüfung für das Verzeichnis /sbin bei Verwendung von ubuntu20 -- wäre stillschweigend fatal gewesen.
  • Neues network-basics-Lab
  1. Mai 2021
  • Ein neues users-Lab eingeführt, um Benutzer-/Gruppenverwaltung einzuführen
  • Apparmor-Host-Meldungen in den Syslogs von CentOS-Containern unterdrückt
  1. April 2021
  • Den neuen base2-Images fehlten Manpages. Unminimize verwendet, um sie im Basis-Image wiederherzustellen.
  • Ein OSSEC-Host-basiertes IDS-Lab eingeführt.
  1. April 2021
  • Das CyberCIEGE-Lab schlug fehl, weil der X11-Socket nicht vor dem Start von Wine über fixlocal verschoben wurde.
  1. April 2021
  • Neues gdb-cpp-Tutorial-Lab zur Verwendung von GDB mit einem einfachen C++-Programm.
  • Gleitkomma-Ausnahmen verrieten die Verwendung von exec_wrap.sh für die stdin/stdout-Spiegelung.
  1. April 2021
  • Das ldap-Lab schlug fehl, als es auf Ubuntu 20 verschoben wurde. Das Problem wurde auf ein Problem mit dem nscd-Cache von pwd zurückgeführt. ldap auf Ubuntu 20 verschoben
  1. März 2021
  • Die Parametrisierung mit RANDOM enthielt nicht die Obergrenze.
  • Optionalen Schrittparameter zu RANDOM hinzugefügt, z. B. um Wortgrenzen sicherzustellen.
  • db-access-Lab: mysql-workbench zum Datenbankcomputer hinzugefügt.
  • Neues overrun-Lab, um Speicherreferenzen jenseits der Grenzen von C-Datenstrukturen zu veranschaulichen.
  • Neues printf-Lab, um Speicherreferenzen einzuführen, die von der printf-Funktion erzeugt werden.
  1. März 2021
  • gradelab ignoriert makdirs-Fehler, Problem mit Windows rmtree auf freigegebenen Ordnern.
  • gradelab behandelt Leerzeichen in Zip-Dateinamen von Studierenden.
  • gradelab behandelt Zip-Dateinamen von Moodle, einschließlich Build-Downloads.
  1. März 2021
  • labedit-UI: Altes Wireshark-Image aus der Liste der Basis-Images entfernt.
  • labedit-UI: Einige Schriftgrößen erhöht.
  • Die Web-Oberfläche des Graders zeigte Lab-Handbücher nicht an, wenn der Handbuchname nicht den Namenskonventionen folgt.
  1. März 2021
  • labedit-UI: Registry-Einstellung im neuen globalen Lab-Konfigurationsbereich hinzugefügt.
  1. März 2021
  • labedit-UI-Fehlerbehebungen, um nicht zu bauen, wenn ein Syntaxfehler im Lab vorliegt
  • labedit-UI-Anzeige "Lab running" korrigiert, um das aktuelle Lab widerzuspiegeln.
  1. März 2021
  • Die Verwendung von HOST_HOME_XFER als veraltet markiert; alle Labs verwenden ein Verzeichnis gemäß der Datei labtainer.config.
  • Dokumentationskommentar zu start.config für REGISTRY und BASE_REGISTRY hinzugefügt
  1. März 2021
  • Fehlerbehandlung in der Web-Oberfläche von gradelab bei fehlenden Ergebnissen.
  • labedit-Ergänzung von precheck, msc-Fehlerbehebungen.
  1. Februar 2021
  • Das dmz-example-Lab hatte Fehler beim Routing und bei der Einrichtung von dnsmasq auf einigen Komponenten.
  1. Februar 2021
  • Die UI baute Images neu, weil sie Dateizeiten ohne Grund aktualisierte
  • UI-Code bereinigt, um einige redundante Datenkopien zu entfernen.
  1. Februar 2021
  • Lokale Build-Option zur UI hinzugefügt
  • Leeres faux_init für centos6-Basen erstellt.
  1. Februar 2021
  • UI-Behandlung beim Bearbeiten von Dateien korrigiert. Layout überarbeitet und ungenutzte Felder entfernt.
  • ubuntu20-base2-Basiskonfiguration zusammen mit ssh2, network2 und wireshark2 hinzugefügt
  • Das neue Wireshark löst das Problem der schwarzen/verrauschten Fenster.
  • /tmp/.X11-unix auf /var/tmp abbilden und einen Link erstellen. Wird für ubuntu20 benötigt (löschte /tmp?) und könnte andere Probleme beheben.
  1. Februar 2021
  • SIZE-Option zu Ergebnisartefakten hinzugefügt
  • Die Bewertung und Parametrisierung von wireshark-intro vereinfacht und ein PDF-Lab-Handbuch hinzugefügt.
  • Parameterlistenwerte für das Skript pregrade.sh als Umgebungsvariablen bereitstellen
  • X11 im Grader aktivieren
  • update-designer.sh in den Benutzerpfad aufgenommen.
  1. Januar 2021
  • Die Verwaltung des README-Datums/der Revision geändert, um die Datei im Quell-Repo zu aktualisieren.
  • GUI zum Erstellen/Bearbeiten von Labs eingeführt -- siehe Befehl labedit.
  1. Dezember 2020
  • Die Funktion gradelab schlug fehl, wenn Zip-Dateien aus einem VirtualBox-Freigabeordner kopiert wurden.
  • Den Instructor Guide aktualisiert, um die Verwaltung von studentischen Zip-Dateien auf Host-Computern zu beschreiben.
  1. Dezember 2020
  • Die Verteilung von tar auf GitHub-Release-Artefakte umgestellt
  • Separate Designer-tar-Datei entfernt, Git-Repo-Tarball verwendet.
  • Testen der Web-Funktionen des Graders zur Analyse studentischer Lab-Artefakte
  • Logs aus dem vollständigen Smoketest löschen und den Grader-Container im Befehl removelab löschen.
  1. Dezember 2020
  • Die Bewertung des iptables2-Labs beruhte darauf, dass zufällige Ports für nmap "unbekannt" waren.
  • Ein Sync-Verzeichnis verwenden, um Smoketests daran zu hindern, vor dem Lab-Start zu beginnen.
  • Beginn der Integration von UI-Elementen des Lab-Designers.
  1. Oktober 2020
  • Headless-Konfigurationen für die Ausführung auf Docker Desktop unter Macs und Windows
  • Headless-Server-Unterstützung, Cloud-Config-Datei für Cloud-Bereitstellungen
  • Testunterstützung für Headless-Konfigurationen
  • mynotify zwingen, zu warten, bis rc.local beim Booten ausgeführt wird
  • Die Fähigkeit des mynotify-Dienstes verbessern, Ausgaben in einem einzigen Zeitstempel zusammenzuführen
  • Python3 für das stopgrade-Skript
  • SimLab verwendet jetzt docker top statt system ps
  1. September 2020
  • Die stoplab-Skripte bereinigt, um Nicht-Lab-Container zu ignorieren
  • db-access-Lab zur Datenbankzugriffskontrolle für die kontrollierte gemeinsame Nutzung einer MySQL-Datenbank hinzugefügt.
  1. September 2020
  • Das macs-hash-Lab konnte Leafpad aufgrund der X11-Einstellung nicht ausführen.
  • Die Grader-Protokollierung wurde in die falsche Logdatei umgeleitet; erfasst jetzt Fehler von instructor.py
  • instructor.log vom Grader in das Log-Verzeichnis des Hosts kopieren, wenn ein Fehler vorliegt.
  1. August 2020
  • Das Installationsskript korrigiert, um python3-pip zu verwenden, und defekte Skripte repariert: getinfo.py und pull-all.py
  • Die Registry-Logik war defekt, Testsysteme verwendeten nicht die Test-Registry, Entwicklungsdokumentation hinzugefügt.
  • juiceshop- und owasp-Basisdateien für OWASP-basierte Web-Sicherheitslabs hinzugefügt
  • Unnötige sudos aus check_nets entfernt
  • Dokumentationsdirektive CHECK_OK für die automatisierte Bewertung hinzugefügt
  • check_nets so geändert, dass iptables- und Routing-Probleme behoben werden, wenn dies angewiesen wird.
  1. August 2020
  • Timeout zu prestop-Skripten hinzugefügt
  • Quiz und checkwork zum dmz-Lab hinzugefügt
  • Das Neustarten des dmz-Labs ohne die Option -r brach das Routing aus dem ISP.
  • Mehrere Dateien für time_delim-Ergebnisse zulassen.6. August 2020
  • Fehler bei der Fehlerbehandlung, wenn der X11-Socket fehlt
  • Kommas in Quizfragen führten zu Parse-Fehlern
  • Quiz und Checkwork zum iptables2-Lab hinzugefügt
  1. Juli 2020
  • Quiz-Unterstützung hinzugefügt -- dies sind Orientierungsquizze, keine Bewertungsquizze. Siehe den Designer-Leitfaden.
  • Aktueller Status-Assessment zur Verwendung mit dem checkwork-Befehl hinzugefügt.
  1. Juli 2020
  • testsets/bin zum Designer-Pfad hinzugefügt
  • Korrekturen und Erläuterungen im Designer-Leitfaden für IModule-Schritte.
  • RANGE_REGEX-Ergebnistyp zur Definition von Zeitbereichen mithilfe regulärer Ausdrücke auf Log-Einträge hinzugefügt.
  • Prüfen, ob der X11-Socket vorhanden ist, falls er beim Starten eines Labs benötigt wird.
  • Basis-Image für mysql hinzugefügt
  • Umgang mit mysql-Log-Zeitstempelformaten bei der Ergebnisanalyse.
  1. Juni 2020
  • Neues Basis-Image mit dem Open-Source-Router Bird
  • bird-bgp Border Gateway Protocol-Lab hinzugefügt.
  • bird-ospf Open Shortest Path First-Routing-Protokoll hinzugefügt.
  • Verbesserte Behandlung von DNS-Änderungen, externer Zugriff von einigen Containern war an manchen Standorten blockiert.
  • Abschnitt zum Instructor-Leitfaden über die Verwendung von Labtainers in Umgebungen ohne Internetzugang hinzugefügt.
  1. Mai 2020
  • Alle Repositories zur Docker Hub labtainers-Registry verschoben
  • Unterstützung für in der start.config definierte Mounts, um persistente Softwareinstallationen zu ermöglichen
  • ida-Lab geändert, um persistente Installation von IDA zu verwenden -- neuer Name ist ida2
  • cgc-Lab zur Erkundung von über 200 verwundbaren Diensten aus der DARPA Cyber Grand Challenge hinzugefügt
  • type_string-Befehl zu SimLab hinzugefügt
  • netflow-Lab zur Verwendung der NetFlow-Netzwerkverkehrsanalyse hinzugefügt
  • 64-Bit-Versionen der bufoverflow- und formatstring-Labs hinzugefügt
  1. April 2020
  • Grader schlug die Bewertung von CONTAINS- und FILE_REGX-Bedingungen fehl, wenn Wildcards zur Dateiauswahl verwendet wurden.
  • Hinweise zur Verwendung von hexedit im symlab-Lab aufgenommen.
  • hash_equal-Operator und hash-goals.py zur automatisierten Bewertung hinzugefügt, um die Veröffentlichung erwarteter Antworten in Konfigurationsdateien zu vermeiden.
  • Automatisierte Bewertung für das pcap-lib-Lab.
  1. April 2020
  • Logs wurden nach $LABTAINER_DIR/logs verschoben
  • Weitere Bereinigungen, um Neuerstellungen und Tests mit Jenkins zu ermöglichen, einschließlich der Verwendung eindeutiger temporärer Verzeichnisse für Builds
  • Build-Support-Funktionen aus labutils in build.py verschoben
  • pcap-lib-Lab für die PCAP-Bibliothek-basierte Entwicklung von Verkehrsanalyseprogrammen hinzugefügt
  1. März 2020
  • plc-traffic-Lab für die Verwendung von GrassMarlin mit während des Labs generiertem Verkehr hinzugefügt.
  • Möglichkeit eingeführt, "Tap"-Container hinzuzufügen, um PCAPs aus ausgewählten Netzwerken zu sammeln.
  • GNS3-Dokumentation für externen Zugriff auf Container und die Verwendung von dummy_hcd zur Simulation von USB-Laufwerken aktualisiert.
  • Kali-Template geändert, um faux_init zu verwenden, anstatt zu versuchen, systemd zu nutzen.
  • Distributionen (Tar-Dateien) nach box.com verschoben
  • SimLab-Verwendung von netstat geändert, um keine DNS-Abfrage durchzuführen.
  1. Februar 2020
  • Wenn der labtainer-Befehl kein Lab findet, wird dem Benutzer empfohlen, update-labtainer.sh auszuführen
  • Vorläufige Unterstützung für eine Netzwerk-Tap-Komponente zur Anzeige des gesamten Netzwerkverkehrs hinzugefügt.
  • Skript zum Abrufen von Lab-Images zur Vorbereitung von VMs, die ohne Internet verwendet werden.
  • Benutzername und Passwort für das nmap-discovery-Lab bereitgestellt.
  1. Februar 2020
  • Die DISPLAY-Umgebungsvariable vom Host (z. B. VM) erben, anstatt :0 anzunehmen
  1. Februar 2020
  • Ghidra-Übung zur Einführung in das Software-Reverse-Engineering hinzugefügt.
  1. Februar 2020
  • Leitfäden aktualisiert, um den Fernzugriff auf Container innerhalb von GNS3-Umgebungen zu beschreiben
  • Ausgewählte Komponenten und Links innerhalb von GNS3 ausgeblendet.
  • Abbildungen im webtrack-Lab-Leitfaden waren nicht sichtbar; Tippfehler in diesem und in nmap-ssh
  1. Februar 2020
  • Funktion zur Fernverwaltung von Containern eingeführt, z. B. zum Übertragen von Dateien.
  • GNS3-Umgebungsfunktion zur Simulation des Einfügens eines USB-Laufwerks hinzugefügt.
  • Verbesserte Behandlung von Docker-Build-Fehlern.
  1. Februar 2020
  • Im metasploit-Lab lief der postgresql-Dienst auf dem Opfer nicht.
  • Der Inhalt des IModule-Handbuchs in den Lab Designer-Leitfaden integriert.
  • Weitere IModule-Unterstützung.
  1. Januar 2020
  • Erste Unterstützung für IModules (von Dozenten entwickelte Labs) eingeführt. Siehe docs/imodules.pdf.
  • Fehlerhafte LABTAINER_DIR-Umgebungsvariable in update-labtainer behoben
  • Zugriffsmodus der Datei accounting.txt im ACL-Lab behoben (war rw-r-r geworden). Explizites chmod in fixlocal.sh verwenden.
  1. Januar 2020
  • Framework und gradelab auf Python3 portiert (bestehende Python2-Labs werden nicht geändert)
    • Abwärtskompatible random.seed-Optionen verwenden
    • Nicht kompatibles randint so anpassen, dass es alte Werte zurückgibt
    • Weiterhin python2 für Plattformen unterstützen, denen python3 fehlt (oder solche wie die ältere VM-Appliance, die python 3.5.2 enthält, was die random.seed-Kompatibilität beeinträchtigt).
    • rebuild-Alias für rebuild.py hinzufügen, der bei Bedarf python2 auswählt.
  • Centos-basierte Lab-Manpages schlugen fehl; mandb innerhalb der Basis-Docker-Datei verwenden
  • dmz-lab-Netzmaske für das DMZ-Netzwerk war falsch (von python3 erkannt); ebenso die IP-Adresse des inneren Gateways im Lab-Handbuch
  • ghex aus CentOS-Labs entfernt -- wird von CentOS 7 nicht mehr einfach unterstützt
  • file-deletion-Lab muss ohne Neustart der VM abgeschlossen werden, dies im Lab-Handbuch vermerken.
  • NO_GW-Schalter zu start.config hinzugefügt, um Standard-Gateways auf Containern zu deaktivieren.
  • Metasploit-Lab bringt die Host-VM zum Absturz, wenn es privilegiert ausgeführt wird; lange Verzögerungen bei su, wenn systemd aktiviert ist; daher ohne systemd ausführen. Verwendung der Datenbank aus dem Lab-Handbuch entfernen, Konfiguration zur Verwendung des neuen no_gw-Schalters anpassen
  • Datei-Header für Lizenzierung/Bedingungen aktualisiert; konsolidierte Lizenzdatei hinzugefügt.
  • publish.py so geändert, dass standardmäßig die Test-Registry verwendet wird, -d erzwingt die Verwendung von default_registry
  • Quellcodeverwaltungsverfahren überarbeitet, um eine andere Test-Registry für jeden Branch zu verwenden und einen Premaster-Branch für abschließende Tests eines Releases zu nutzen.
  1. Oktober 2019
  • dnsmasq aus der dns-Komponente im dmz-lab entfernt. Verursachte bei einigen Installationen ein Fehlschlagen von bind.
  1. Oktober 2019
  • Syntaxfehler beim Einrichten der Test-Registry; Lab-Designer-Informationen zu großen Dateien; Abrufen von bigexternal.txt-Dateien
  1. September 2019
  • DockerHub-Registry-Abruf schlug bei einigen Benutzern erneut fehl. HTML-Präfix zu json ignorieren.
  1. September 2019
  • Die Bewertung von onewayhash sollte hmac-Operationen an einer vom Studenten gewählten Datei ermöglichen.
  1. September 2019
  • metasploit-Lab neu erstellt, metasploit-framework wies einen Fehler auf. Und die Datei "treataslocal" der Labs wurde beim Umzug von svn ausgelassen. Tippfehler im metasploit-Lab-Handbuch behoben.
  1. August 2019
  • Test auf Existenz von Container-Verzeichnissen rückgängig gemacht, sie existieren nicht immer.
  1. August 2019
  • Lab-Image-Pulls von docker hub schlugen aufgrund einer Änderung in github oder curl fehl? Weiterleitung zu cloudflare abfangen. Hinzufügen von GNS3-Unterstützung. Korrektur von dmz-lab dnssec.
  1. Juli 2019
  • Automatisierte Bewertung für CentOS6-Container, Korrektur des Firefox-Speicherproblems, Unterstützung beliebiger docker create-Argumente in der start.config-Datei.
  1. Juni 2019
  • Eine Centos6-Basis eingeführt, aber noch keine Unterstützung für automatisierte Bewertung
  1. Mai 2019
  • Automatisierte Bewertung von setuid-env schlug aufgrund von Tippfehlern in Feldtrennzeichen fehl.
  1. Mai 2019
  • Korrekturen am Capabilities-Lab-Handbuch
  1. Mai 2019
  • Acl-Lab-Korrektur der Berechtigungen von bobstuff.txt. Explizites chmod in fixlocal.sh verwenden
  • Studentenleitfaden überarbeitet, um die Verwendung von stop und der -r-Option im Hauptteil des Handbuchs zu klären.
  1. März 2019
  • Die checkwork-Funktion verwendete Container wieder, wodurch Studenten daran gehindert wurden, Artefakte aus früheren Lab-Arbeiten zu beseitigen.
  • Anhang zum symkey-Lab hinzugefügt, der das BMP-Bildformat beschreibt.
  1. Februar 2019
  • Der http-Server startete in den vpn- und vpn2-Labs nicht. Automatisierte Bewertung aus diesen Labs entfernt, bis sie überarbeitet sind.
  1. Januar 2019
  • gdblesson automatisierte Bewertung korrigiert, damit sie zumindest funktionsfähig ist.
  1. Januar 2019
  • Lab-Handbuch für routing-basics2 korrigiert und Routing korrigiert, um externen Zugriff auf den internen Webserver zu ermöglichen.
  1. Dezember 2018
  • routing-basics2 korrigiert, dieselben Probleme wie routing-basics, plus eine falsche IP-Adresse in der gateway resolv.conf
  1. Dezember 2018
  • routing-basics-Lab korrigiert, DNS-Auflösung an den isp- und gatway-Komponenten war defekt.
  1. November 2018
  • /run/nologin von der Archivmaschine in backups2 entfernt -- es wird eine allgemeine Lösung für dieses nologin-Problem benötigt
  1. November 2018
  • Standard-aid.conf des file-integrity-Labs geändert, um Metadatenänderungen anstelle von Dateiänderungszeiten zu verfolgen
  1. Oktober 2018
  • macs-hash-Lab-Auflösung von verydodgy.com schlug beim Neustart des Labs fehl
  • Notify-Funktion schlug fehl, wenn notify_cb.sh fehlt
  1. Oktober 2018
  • ulimit für Dateigröße festgelegt, Begrenzung auf 1G
  1. Oktober 2018
  • Erzwungene Sammlung parametrisierter Dateien
  • leafpad und ghex explizit in die centos-xtra-Baseline aufgenommen und abhängige Images neu erstellt.
  1. September 2018
  • Zugriffsmodi der gemeinsam genutzten Datei im ACL-Lab korrigiert
  • Frage in pass-crack geklärt
  • Artefaktsammlung geändert, um Dateien zu ignorieren, die älter als der Lab-Start sind.
  • Lab für Quantencomputing-Algorithmen hinzugefügt
  1. September 2018
  • Syntaxfehler bei der setuid-env-Bewertung korrigiert
  • Syntaxfehler in den iptables2-Beispiel-Firewall-Regeln korrigiert
  • Centos-Labs neu erstellt, Lamp-Derivate auf die Verwendung von lamp.xtr für waitparam umgestellt und erzwungen, dass httpd darauf wartet, dass dies abgeschlossen ist.
  1. September 2018
  • CyberCIEGE als Lab hinzugefügt
  • read_pre.txt-Informationsanzeige vor dem Pull von Images und Möglichkeit zum Abbruch.
  1. September 2018
  • Sakai-Bulk-Download-Verarbeitung zur gradelab-Funktion wiederhergestellt.
  • Unbenutzte Instructor-Skripte entfernt.
  1. September 2018
  • Mehrere IP-Adressen pro Netzwerkschnittstelle zulassen
  • Basis-Image für Wine hinzugefügt
  • GRFICS virtuelle ICS-Simulation hinzugefügt
  1. August 2018
  • GrassMarlin-Lab hinzugefügt (ICS-Netzwerkerkennung)
  1. August 2018
  • GrassMarlin-Lab hinzugefügt (ICS-Netzwerkerkennung)
  1. August 2018
  • Eine weitere Korrektur im Zusammenhang mit AWS-Authentifizierungsproblemen (DockerHub verwendet AWS).
  • new_lab_setup.py korrigiert, um git anstelle von svn zu verwenden.
  • plc-forensics-Lab in ein Basis-Lab und ein fortgeschrittenes Lab (plc-forensics-adv) aufgeteilt
  1. August 2018
  • Umstellung auf git & GitHub als maßgebliches Repository.
  1. August 2018
  • Bewertung des plc-forensics-Labs verallgemeinert; Lab-Handbuch überarbeitet, um wireshark auf dem Labtainer widerzuspiegeln.
  1. August 2018
  • "checkwork"-Befehl hinzugefügt, der Studenten die Anzeige automatisierter Bewertungsergebnisse für ihre Lab-Arbeit ermöglicht.
  • Protokollierung von iptables-Paketverlusten im iptables2- und im iptables-ics-Lab aufgenommen.
  • Veraltete Instanzen von is_true und is_false aus goal.config entfernt
  • Boolesche Auswertung korrigiert, um "NOT foo" zu verarbeiten, es wurden mehr Operanden erwartet.
  1. August 2018
  • Unterstützung für Parameterersetzung in results.config-Dateien
  • TIME_DELIM-Ergebnistyp für results.config hinzugefügt
  • iptables-Lab überarbeitet, versteckte nmap-Befehle entfernt, benutzerdefinierten Dienst eingeführt
  1. August 2018
  • Link zum Studentenleitfaden im labtainer-student-Verzeichnis hinzugefügt
  • Link zum Studentenleitfaden auf VM-Desktops hinzugefügt
  • Korrekturen an iptables-ics, um lange Verzögerung beim Herunterfahren zu vermeiden; und Korrekturen an Regressionstests
  • Hinweis zu den Leitfäden hinzugefügt, der Studenten die Verwendung des VM-Browsers zur Übertragung der Artefakt-Zip-Datei an den Dozenten empfiehlt.
  1. August 2018
  • Ein generisches Docker-Image für die automatisierte Bewertung verwenden; aufhören, "Instructor"-Images pro Lab zu erstellen.
  1. Juli 2018
  • Dokumentieren, dass der waitparam.service entsperrt werden muss (durch Erstellen eines Flag-Verzeichnisses), wenn ein fixlocal.sh-Skript einen Dienst starten soll, für den waitparam eine Voraussetzung ist.
  • plc-app-Lab für PLC-Anwendungsfirewall- und Whitelisting-Übung hinzugefügt.
  1. Juli 2018
  • string_contains-Operator zur Goal-Verarbeitung hinzugefügt
  • Bewertung des formatstring-Labs geändert, um zu berücksichtigen, dass das geleakte Geheimnis nicht immer am Ende der angezeigten Zeichenkette steht.
  1. Juli 2018
  • SSH Agent-Lab hinzugefügt (ssh-agent)
  1. Juli 2018
  • Offline-Build unterstützen, optional alle Image-Pulls überspringen
  • Wiederherstellung von apt/yum-Repos in Dockerfile-Vorlagen wiederhergestellt.
  • Weiterleitungs-URLs vom Docker-Registry-Blob-Abruf behandeln, um Authentifizierungsfehler zu vermeiden (sich nicht auf curl --location verlassen).
  1. Juli 2018
  • prestop-Funktion hinzugefügt, um die Ausführung von vom Designer festgelegten Skripten auf ausgewählten Komponenten vor dem Herunterfahren des Labs zu ermöglichen.
  • Host-Benennung im ssl-Lab korrigiert, sie brach die automatisierte Bewertung.
  • Anfangszustand des dmz-Labs korrigiert, um DNS-Auflösungen aus dem inneren Netzwerk zu ermöglichen.
  • FILE\REGEX-Verarbeitung behandelte mehrzeilige Suchen nicht ordnungsgemäß.
  • Aus neu erstellten Images abgeleitete Framework-Version hatte einen falschen Standardwert.
  1. Juli 2018
  • Ein LDAP-Lab hinzugefügt
  • Umstellung auf systemd-basierte Ubuntu-Images abgeschlossen, unbenutzte Dateien entfernt
  • lab_sys-Tar-Datei in ein temporäres Verzeichnis pro Container für Nebenläufigkeit verschoben.
  1. Juli 2018
  • Alle Ubuntu-Basis-Images durch Versionen auf systemd-Basis ersetzt
  • Labtainer-Container-Images in der Registry sind jetzt mit der Basis-Image-ID getaggt und haben Labels, die das Basis-Image widerspiegeln.
  • Eine gegebene Installation zieht und verwendet Images, die mit den vorhandenen Basis-Images konsistent sind.
  • Wenn Sie ein VM-Image verwenden, möchten Sie es möglicherweise durch ein neueres VM-Image von unserer Website ersetzen.
  • Neue Labs laufen nicht ohne das Herunterladen neuerer Basis-Images; was dazu führen kann, dass Ihre VM mehrere Versionen großer Basis-Images speichert (> 500 MB jeweils).
  • Artefakte von Prozessen, die beim Stoppen des Labs liefen, gingen verloren -- capinout-Prozesse wurden nicht ordnungsgemäß beendet.
  1. Juni 2018
  • Unterstützung für Ubuntu-systemd-Images hinzugefügt
  • Alte Kopie von SimLab.py aus labtainer-student/bin entfernt
  • apt- und yum-Quellen nach /var/tmp verschoben
  • Unterschiede zwischen der Verwendung von "boolean" und "count_greater" in Bewertungen geklärt
  • Add-HOST in start.config erweitert, um alle Komponenten in einem Netzwerk einzuschließen.
  • Option zu new_lab_setup.py hinzugefügt, um einen Container basierend auf einer Kopie eines vorhandenen Containers hinzuzufügen.
  1. Juni 2018
  • DISPLAY-Env für root gesetzt
  • Build-Abhängigkeitsbehandlung der svn-Statusausgabe korrigiert
  • radius-Lab hinzugefügt
  • Fehler in SimLab append korrigiert
  • svn verwenden, wo angemessen, um Dateinamen mit new_lab_setup.py zu ändern
  1. Juni 2018
  • Reihenfolge der in start.conf definierten Container beim Erstellen eines Terminals mit mehreren Tabs beibehalten
  • Designer-Handbuch geklärt, um den Pfad zu den Bewertungskonfigurationsdateien zu identifizieren.
  • Aufforderung an den Dozenten zur Angabe einer E-Mail entfernt
  • Fehlerhafte Fehlerprüfung beim Testen auf Versionsnummer
  • Zeitstempel von Lab-Starts und Wiederholungen in das Bewertungs-JSON aufgenommen
  • Ein SSL-Lab hinzugefügt, das bidirektionale Authentifizierung und Erstellung von Zertifikaten umfasst.
  1. Juni 2018
  • Diagnose zur Parametrisierung hinzugefügt, um herauszufinden, warum einige Installationen dabei zu scheitern scheinen.
  • Wenn ein Container bereits erstellt wurde, sicherstellen, dass er parametrisiert ist, andernfalls abbrechen, um beschädigte oder halbfertige Container zu vermeiden.
  • Programmversionsnummer korrigiert, um svn HEAD zu verwenden
  1. Juni 2018
  • Klartextanweisungen, die in xterms erschienen, in eine PDF-Datei konvertiert.
  • Fehler bei der Versionsbehandlung von Images behoben, die noch nicht gepullt wurden.
  • Erkennung des Auftretens eines Containers, der erstellt, aber nicht parametrisiert wurde, und Aufforderung an den Benutzer, das Lab mit der Option "-r" neu zu starten.
  • Designer-Dienstprogramm hinzugefügt: rm_svn.py, damit entfernte Dateien eine Image-Neuerstellung auslösen.
  1. Juni 2018
  • xterm auf Ubuntu 18-Systemen installieren
  • Umgehung der Beschädigung in neuen Versionen der gnome-terminal-Tab-Behandlung
  1. Juni 2018
  • Versionsprüfung hinzugefügt, um Images mit dem Framework zu vergleichen.
  • Verschiedene Lab-Handbücher geklärt
  1. Juni 2018
  • Bei der Installation auf Ubuntu 18 docker.io anstelle von docker-ce verwenden
  • Das capinout verursachte einen Absturz, wenn auf einen überwachten "sudo su"-Befehl ein nicht erhöhter Benutzerbefehl folgt.
  • Routing- und resolv.conf-Einstellungen in /etc/rc.local anstelle von fixlocal.sh verschoben, damit sie über Start/Stopp der Container hinweg bestehen bleiben.
  1. Mai 2018
  • Umgehung eines Docker-Fehlers, der dazu führte, dass Text in einem Terminal ohne Zeilenvorschub umgebrochen wurde.
  • COMMAND_COUNT erweitert, um Pipes zu berücksichtigen
  • Neue Version des backups-Labs erstellt, die Backups auf einen Remote-Server und das Sichern einer gesamten Partition umfasst.
  • sshlab-Anweisungen geändert, um das ssh-copy-id-Dienstprogramm zu verwenden
  • /run/nologin-Datei aus parameterize.sh gelöscht, um SSH-Login auf CentOS zu ermöglichen
  1. Mai 2018
  • new_lab_setup.py erweitert, um die Identifizierung des zu verwendenden Basis-Images zu ermöglichen
  • Neue Version von centos-log erstellt, die zentralisiertes Logging umfasst.
  • Bewertungsvalidierung akzeptierte die Option "time_not_during" nicht.
  • Beginn der Integration von Labtainer Master zur Verwaltung von Labtainers aus einem Docker-Container.
  1. Mai 2018
  • 10-Sekunden-Sleeps aus verschiedenen Diensten entfernt. Verzögerte xinetd-Antworten und brach automatisierte Tests.
  • snort-Lab-Bewertung korrigiert, um nur "CONFIDENTIAL" im Alarm zu verlangen. Unbenutzte Dateien aus dem Lab entfernt.
  • Programm-Endzeiten wurden nicht aufgezeichnet, wenn das Programm beim Stoppen des Labs noch lief.
  1. Mai 2018
  • retlibc-Bewertung korrigiert, um doppeltes Goal zu entfernen, die automatisierte Bewertung schlug fehl
  • Kopien von mynotify.py aus einzelnen Labs und der Lab-Vorlage entfernt, es ist Teil von lab_sys/sbin, war aber nicht aktualisiert worden, um die für das acl-Lab vorgenommenen Korrekturen widerzuspiegeln.
  1. Mai 2018
  • Signalnachricht von exec_wrap maskiert, damit die segv-Fehlermeldung korrekt aussieht.
  • Das capinout verlor manchmal stdout, stdout des Befehls beim Tod des cmd prüfen.
  • Bewertung von formatstring korrigiert, um die Segmentation-Fault-Meldung zu erfassen.
  • type_function-Funktion zu SimLab hinzugefügt, um stdout eines Skripts zu tippen (siehe formatstring simlab).
  • SimLab-Einschränkung bei der Kombination von einfachen/doppelten Anführungszeichen entfernt.
  • window_wait-Direktive zu SimLab hinzugefügt, um zu pausieren, bis ein Fenster mit gegebenem Titel gefunden werden kann.
  • plc-Lab geändert, um Titel auf dem Physical-World-Terminal zu ändern, um den Status widerzuspiegeln, dies erleichtert auch das Testen.
  • Link zum bufoverflow-Lab-Handbuch korrigiert.
  1. Mai 2018
  • Anhang zur Verwendung des SimLab-Tools zur Simulation der Benutzerdurchführung von Labs für Regressionstests und Lab-Entwicklung hinzugefügt.
  • wait_net-Funktion zu SimLab hinzugefügt, um zu pausieren, bis ausgewählte Netzwerkverbindungen beendet sind.
  • acl automatisierte Bewertung geändert, um FILE_REGEX für mehrzeiliges Matching zu verwenden.
  • SimLab-Test für xsite-Lab.
  1. Mai 2018
  • "noskip"-Datei hinzugefügt, um die Sammlung von Dateien zu erzwingen, die sonst in home.tar gefunden werden, benötigt zum Abrufen von Firefox places.sqlite.
  • SQLite-Datenbank mit Write-Ahead-Puffer vor dem Extrahieren zusammenführen.
  • Korrekturen am Lab-Handbuch für das symkeylab
  • Bewertungsergänzungen für symkeylab und pubkey
  • Verbesserungen am simlab-Tool: Unterstützung von include, Korrektur der Fensterbenennung.
  1. Mai 2018
  • Parametrisierung des file-deletion-Labs korrigiert. Fehler in seinem Lab-Handbuch korrigiert.
  • Verwendung von shell=True in Python-Skripten ersetzt, um Prozesse zu reduzieren und die Verfolgung von PIDs zu ermöglichen
  • Handbücher für backups, pass-crack und macs-hash bereinigt.
  1. Mai 2018
  • Race Condition behandelt, um zu verhindern, dass gnome-terminal seinen Docker-Befehl ausführt, bevor ein xterm-Anweisungsterminal seinen Befehl ausführt.
  • Keine Fehler anzeigen, wenn der Dozent ein mit "-d" gestartetes Lab stoppt.
  • Bewertung von nmap-ssh geändert, um die Absicht des Labs besser widerzuspiegeln.
  • Mehrere Dokument- und Skriptkorrekturen, die von olberger auf github vorgeschlagen wurden.
  1. Mai 2018
  • C-basiertes capinout-Programm anstelle des alten capinout.sh verwenden, um stdin und stdout zu erfassen. Siehe trunk/src-tool/capinout. Entfernt Einschränkungen im Zusammenhang mit der Verwendung von ctrl-C zum Unterbrechen überwachter Programme und der Anzeige von Passwörtern in telnet und ssh.
  • Unterstützung für saki bulk_download-Zip-Verarbeitung aufgenommen, um separat eingereichte Berichte zu extrahieren und fehlende Einreichungen zusammenzufassen.
  • Prüfungen der vom Benutzer angegebenen E-Mail hinzugefügt, um sicherzustellen, dass es sich um druckbare Zeichen handelt.
  • Wenn während der Bewertung die vom Benutzer angegebene E-Mail nicht mit dem Zip-Dateinamen übereinstimmt, mit der Bewertung der Ergebnisse fortfahren, aber einen Hinweis in die Tabelle aufnehmen, der Betrug widerspiegelt. Erforderlich, um Fälle abzudecken, in denen der Student Unsinn als E-Mail-Adresse eingibt.
  • telnetlab-Bewertung geändert, um nicht die tcpdump-Ausgabe auf Passwörter zu prüfen -- die capinout-Korrektur führt zu korrekter zeichenweiser Übertragung an den Server.
  • Tippfehler in install-docker.sh korrigiert und sudo verwenden, um die Docker-DNS-Einstellung in diesem Skript zu ändern.
  1. April 2018
  • Umstellung auf die Verwendung von "labtainer" zum Starten eines Labs und "stoplab" zum Stoppen.
  • --version-Option zum labtainer-Befehl hinzugefügt.
  • log_ts- und log_range-Ergebnistypen sowie time_not_during-Goal-Operatoren hinzugefügt. Die centos-log- und sys-log-Bewertung überarbeitet, um diese Funktionen zu nutzen.
  • labsys.tar in /var/tmp anstelle von /tmp gelegt, wurde manchmal gelöscht, bevor es entpackt wurde
  • Das Ausführen von X-Anwendungen als root schlägt nach dem Neustart der VM fehl.
  • "User Command"-Manpages zu CentOS-basierten Labs hinzugefügt
  • Kürzlichen Fehler behoben, der die Sammlung von docs-Dateien von Studenten verhinderte
  • Smoke-Tests geändert, um nur die studentenspezifische Ergebniszeile zu vergleichen, ohne Leerzeichen20. April 2018
  • Der denyhosts-Dienst startet beim ersten Mal nicht, Start wurde nach student_startup.sh verschoben.
  • Alle faux_init-Dienste nach der Parametrisierung verschieben -- rsyslog startete beim zweiten Boot des Containers nicht.
  1. April 2018
  • Das acl-Lab bewertete die Leistung des Trojaner-Schritts nicht ordnungsgemäß.
  • Studentendokumente standardmäßig sammeln.
  • Das denyhost-Lab wurde angepasst, um widerzuspiegeln, dass denyhosts (oder tcp wrappers?) nun iptables modifiziert. Außerdem startete der denyhosts-Dienst in manchen Fällen nicht.
  • Beim Aktualisieren von Labtainers keine Dateien überschreiben, die neuer sind als die im Archiv -- Studenten-Laborberichte bewahren.
  1. April 2018
  • Dokumentation zum Zweck von Lab-Zielen hinzufügen und diese dem Instructor anzeigen, wenn der Instructor ein Lab startet.
  • Korrekte Verwendung der precheck-Funktion, wenn sich das Programm in treataslocal befindet, capintout.sh den vollständigen Programmpfad übergeben.
  • instr_config-Dateien zur Laufzeit kopieren statt während des Image-Builds.
  • Abschnitt im Designer Guide zum Debuggen automatisierter Bewertung hinzufügen.
  • Falsche Groß-/Kleinschreibung in Dateinamen von Laborberichten.
  • Unnötige chown-Funktion ließ instructor.py manchmal abstürzen.
  • Unterstützung für automatisiertes Testen von Labs (siehe SimLab und smoketest).
  • testsets und distrib unter trunk verschieben
  1. April 2018
  • Firefox-Profil überarbeiten, um die Meldung "you've not use firefox in a while..." zu entfernen.
  • Unnötige Pulls aus der Registry entfernen -- Image-Daten stattdessen über die Docker-Hub-API abrufen.
  1. März 2018
  • Explizites tar statt "docker cp" für Systemdateien verwenden (Docker folgt keinen Links.)
  • Backups-Lab reparieren, separates Dateisystem verwenden und das Handbuch aktualisieren.
  1. März 2018
  • Unterstützung für Mehrbenutzermodi (siehe Lab Designer User Guide).
  • Build-Abhängigkeit von den Dateien lab_bin und lab_sys entfernt. Diese werden nun während der Parametrisierung des Labs kopiert.
  • capinout.sh nach /sbin verschieben, damit es bei Ausführung als root gefunden werden kann.
  1. März 2018
  • CLONE hinzufügen, um mehrere Instanzen desselben Containers zu ermöglichen, z. B. für Labs, die von mehreren gleichzeitigen Studenten gemeinsam genutzt werden.
  • kali-test-Lab anpassen, um ein Beispiel für macvlan und CLONE bereitzustellen
  • Das Skript capinout.sh nach /sbin kopieren, damit root es nach einem sudo su finden kann.
  1. März 2018
  • Unterstützung von macvlan-Netzwerken für die Kommunikation mit externen Hosts
  • Ein Kali-Linux-Basisimage und ein Metasploitable-2-Image hinzufügen (siehe kali-test)
  1. März 2018
  • labname bei Verwendung von stop.py nicht mehr erforderlich
  • Fehler durch verwaiste Netzwerke abfangen und dem Benutzer eine Lösung empfehlen
  • Unterstützung für die Nutzung lokaler apt- & yum-Repos am NPS hinzufügen
  1. Februar 2018
  • dmz-lab hinzufügen
  • "checklocal" in "precheck" ändern, da es vor dem Befehl ausgeführt wird.
  • inotify-Ereignisberichterstattung von der Verwendung von precheck.sh entkoppeln, inotify-Ereignislisten können einen optionalen outputfile-Namen enthalten.
  • Bash-Hook auf root-Operationen ausweiten, die bash_history leeren.
  • Parametrisierung von start.config-Feldern ermöglichen, z. B. für zufällige IP-Adressen
  • Überwachung von Diensten unterstützen, die über systemctl oder /etc/init.d gestartet werden
  • Zeitdelimiter-Qualifizierer einführen, um eine zeitgestempelte Logdatei in Bereiche zu gliedern, die durch eine interessante Konfigurationsänderung abgegrenzt sind (siehe dmz-lab)
  1. Februar 2018
  • Boolesche Werte aus results.config-Dateien werden nun als Zielwerte behandelt
  • Unterstützung regulärer Ausdrücke zum Identifizieren von Artefakt-Ergebnissen hinzufügen.
  • Unterstützung für alternative Docker-Registries, einschließlich einer lokalen Test-Registry zum Testen
  • Diverse Korrekturen an Labs und Lab-Handbüchern
  • Der capinout-Überwachungs-Hook beendete beim Exit keine Kindprozesse.
  • Überwachte Prozesse beenden, bevor Artefakte gesammelt werden
  • labtainer.wireshark als Basiscontainer hinzufügen, Dockerfiles aufräumen
  1. Januar 2018
  • snort-Lab hinzufügen
  • Logdatei-Zeitstempel, z. B. aus Syslogs, in zeitgestempelte Ergebnisse integrieren.
  • Undefinierte Ergebniswerte aus zwischenzeitlichen zeitgestempelten JSON-Ergebnisdateien entfernen.
  • Die zeitbasierte Zielbewertungsoperation time_during so ändern, dass Zeitstempel dem resultierenden Zielwert zugeordnet werden.
  1. Januar 2018
  • Die Verwendung von Tab-Fenstern ließ die Instructor-Seite fehlschlagen, Verwendung von doppelten Anführungszeichen.
  • Dateien in _tar-Verzeichnissen (außer .tar) bei der Bestimmung von Build-Abhängigkeiten ignorieren.

Kategorien