Labtainers: إطار عمل لمختبرات سيبرانية يعتمد على Docker
تتضمن Labtainers أكثر من 50 تمريناً مختبراً سيبرانياً وأدوات لبناء تمارينك الخاصة. قم باستيراد جهاز افتراضي واحد أو قم بالتثبيت على نظام لينكس وستكون طلابك قد أنهوا عملية الإعداد والتجهيز الإداري لهذه التمارين والتمارين المستقبلية.
- بيئات تنفيذ مختبرية متسقة وتجهيز آلي عبر حاويات Docker
- طوبولوجيات شبكية متعددة المكونات على حاسوب محمول متوسط الأداء
- تقييم آلي لنشاط الطالب المختبر وتقدمه
- تمارين مختبرية فردية لتثبيط مشاركة الحلول
توفر Labtainers بيئات تنفيذ متحكم بها ومتسقة حيث يؤدي الطلاب تمارينهم المختبرية بالكامل داخل حدود حواسيبهم، بغض النظر عن توزيعة لينكس والحزم المثبتة على حاسوب الطالب. تعمل Labtainers على [جهازنا الافتراضي][vm-appliancee]، أو على أي نظام لينكس مثبت عليه Docker. كما تتوفر Labtainers كأجهزة افتراضية سحابية، مثلاً على Azure كما هو موصوف في دليل الطالب.
انظر دليل الطالب للتثبيت والاستخدام، ودليل المدرب لتقييم الطلاب. تطوير وتخصيص التمارين المختبرية موصوف في دليل المصمم.
انظر الأوراق البحثية لمعلومات إضافية عن الإطار.
موقع Labtainers الإلكتروني، والتنزيلات (بما في ذلك الأجهزة الافتراضية المثبت عليها Labtainers مسبقاً) موجودة على https://nps.edu/web/c3o/labtainers.
تاريخ التوزيعة: 01/06/2026 12:28
المراجعة: v1.4.4i
الالتزام: 4f868e24
الفرع: master
المحتوى
التوزيع والاستخدام
دليل المجلدات
الدعم
ملاحظات الإصدارات
التوزيع والاستخدام
يرجى الاطلاع على معلومات الترخيص والتوزيع
في ملف docs/license.md.
دليل المجلدات
-
scripts/labtainers-student -- دليل العمل لتشغيل واختبار التمارين المختبرية للطلاب. يجب أن تكون في هذا الدليل لتشغيل التمارين المختبرية للطلاب.
-
scripts/labtainers-instructor -- دليل العمل لتشغيل واختبار التقييم الآلي وعرض نتائج الطلاب.
-
labs -- الملفات الخاصة بكل مختبر على حدة
-
setup_scripts -- نصوص لتثبيت Labtainers وDocker وتحديث Labtainers
-
docs -- مصدر لاتكس لملف labdesigner.pdf، ووثائق أخرى.
-
UI -- كود مصدر محرر المختبرات لـ Labtainers (جافا).
-
headless-lite -- نصوص لإدارة Docker Workstation وإصدارات Labtainers السحابية (الأنظمة التي لا تحتوي على خوادم X11 أصلية.)
-
scripts/designer -- أدوات لبناء مختبرات جديدة وإدارة صور Docker الأساسية.
-
config -- إعدادات تكوين على مستوى النظام (هذه ليست إعدادات التكوين الخاصة بالمختبر).
-
distrib -- نصوص دعم التوزيع، مثلاً لنشر المختبرات على Docker hub.
-
testsets -- إجراءات الاختبار والنتائج المتوقعة. (برامج التشغيل الخاصة بكل مختبر لـ SimLab غير موزعة).
-
pkg-mirrors -- نصوص أدوات لانعكاس حزم NPS الداخلية لتقليل سحب الحزم الخارجية أثناء الاختبارات والتوزيع.
الدعم
استخدم تقارير مشكلات GitHub، أو راسلني على البريد الإلكتروني [email protected]
انظر أيضاً https://my.nps.edu/web/c3o/support1
ملاحظات الإصدارات
توزيعة Labtainers القياسية لا تتضمن الملفات المطلوبة لتطوير مختبرات جديدة. لهذه، قم بتشغيل ./update-designer.sh من دليل labtainer/trunk/setup_scripts.
يضع نصوص التثبيت و update-designer.sh متغيرات البيئة، لذا قد ترغب في تسجيل الخروج/الدخول، أو بدء شل bash جديدة قبل استخدام Labtainers لأول مرة.
6 يناير 2026
- تم إصلاح خطأ في نص التثبيت بسبب المسافات البادئة.
30 ديسمبر 2025
- تعديل تنسيق تقرير checkwork ليكون عمودياً؛ دليل فيديو لنظام headless؛ مسارات ملائمة
15 أكتوبر 2025
- مراجعة مختبر packet-introspection لتحديث رابط قاعدة بيانات الموقع الجغرافي maxmind وملاحظة استخدام قاعدة البيانات القديمة.
24 أبريل 2025
- إصلاح imodule لإنشاء المجلدات المفقودة بشكل صحيح حسب طلب السحب #96
22 نوفمبر 2024
- استبدال جهاز google cloud الافتراضي، هذه المرة بسبب فشل systemd داخل الحاويات.
23 سبتمبر 2024
- استبدال جهاز google cloud الافتراضي الذي كان يستخدم إصدار Docker خاطئاً
10 سبتمبر 2024
- خطأ إملائي في إنشاء مسار imodule
26 يوليو 2024
- تعديل capinout لعدم استخدام دالة grantpt clib، والتي يبدو أنها تتعطل الآن عند تشغيلها من حاوية.
22 يوليو 2024
- إضافة حاوية أساسية لـ Ubuntu22 وتغييرات للإطار لدعم ذلك.
5 يوليو 2024
- الترحيل إلى Ubuntu 24 كجهاز VM
- حزمة docker python تستخدم مكتبة http بايثونية معطلة، تتطلب تخفيض الحزمة.
- استخدام بيئة python افتراضية لتجنب إغلاق Ubuntu لحزم python.
- إضافة معامل إقلاع للسماح بمشاركة systemd بين الحاويات والجهاز الافتراضي.
- إعادة توجيه رسائل الخطأ من أداة tar المعطلة أثناء التحديثات.
- تعطل تحديث Ubuntu لحزم msc (انظر update-ubuntu.sh) لإصدارات VM 18
- أمر docker-compose معطل، استخدم "docker compose"
- فرض صلاحيات المقابس في labtainers بدون واجهة رسومية.
- تحديث Labtainers بدون واجهة رسومية لاستخدام Ubuntu 24
27 نوفمبر 2023
- إضافة خيار Google Cloud Platform لـ ubuntu22 على جهاز ec2.
18 سبتمبر 2023
- تطبيق الإصلاح السابق كان معيباً.
8 أغسطس 2023
- التعامل مع تغيير تنسيق json لصور DockerHub. شكراً Kees!
17 أبريل 2023
- فرض استخدام أحدث إصدار مختبر، مثلاً iptables2 بدلاً من iptables. إصلاح الإكمال التلقائي لعرض الأحدث فقط. (المشكلة #77)
- فشل تثبيت مختبر CyberCIEGE بسبب ظروف سباق X11. (المشكلة #76)
- ملاحظة في ملف readme لـ CyberCIEGE لتوجيه الطلاب لحفظ السجلات المجمعة في دليل $HOME. (المشكلة #75)
- تقرير فحص عمل مختبر Radius كان يبلغ بشكل غير صحيح عن "radiusd not running"، وجود نص prestop مفقود. (المشكلة #74)
- Labedit أفسد ملف تكوين البدء عند استخدام خيار MACVLAN_EXT. (المشكلة #73)
1 فبراير 2023
- لم يتم حفظ تاريخ bash للمستخدمين غير الافتراضيين.
26 يناير 2023
- تعديل نصوص powershell لـ gcloud لاستخدام المنطقة المحددة لتأهيل أسماء VMs.
4 يناير 2023
- الحاويات التي تستخدم systemd كانت تفشل مع systemd الأحدث الموجود في Ubuntu 22
- إضافة معلمة --zone لنصوص google cloud، مع القيمة المشتقة من script set_defaults.
21 ديسمبر 2022
- إصلاح معايير نتائج xforge لعدم توقع اسم مسار، وإضافة فحص لمعرفة ما إذا تم إصدار POST لتعديل الملف الشخصي. وإصلاح خادم http الخاص بالمهاجم ليعمل من دليل المنزل.
19 ديسمبر 2022
- إضافة مختبر strace لتقديم تتبع استدعاءات النظام.
- قيمة DISPLAY لـ X11 كانت خاطئة إذا كانت هناك أجهزة متعددة في دليل /tmp/.X11-unix.
- استخدام python/bash/sh/etc بدون وسائط كان يسبب تعطل capinout.
9 ديسمبر 2022
- تعديل script إنشاء Azure vm لاستخدام صورة VM جاهزة لـ Labtainer من معرض Azure Community Gallery.
- المحطات الطرفية على سحابة VMs تتعطل لأسباب غير معروفة أثناء بدء التشغيل أو النقر بزر الماوس الأيمن على المحطة. محاولة معالجة ذلك ببدء/إيقاف محطة طرفية.
5 ديسمبر 2022
- عند جمع القطع الأثرية، تضمين الملفات المعدلة من أدلة المستخدمين غير الافتراضيين، مثل سجلات bash الخاصة بهم.
- تغيير تقييم الويب لعرض ملفات "المستخدم الآخر" الجديدة.
- تضمين ملفات من دليل .local/bin على كل حاوية في القطع الأثرية. الهدف جعلها متاحة للمدرب عبر تقييم الويب.
- في مختبر ACL، تضمين ملف /shared_data/bob/fun في النتائج كمرجع للمدرب.
- اكتشاف استخدام "sh" أو "bash" من سطر الأوامر وتخطيها عند تحليل الأمر المعطى، كما هو الحال مع "time" أو "sudo".
- في مختبر tcpip، لم يكن ممكناً الاتصال بالخادم عبر ssh خلال جلسات مختبرية لاحقة، دليل /run/sshd لم يكن يُعاد إنشاؤه.
16 نوفمبر 2022
- إصلاح المسار إلى دليل Snort في مختبر snort.
- في دليل ossec، إصلاح المسار إلى manage_agents
12 أكتوبر 2022
- سحابة google إزالة عامل الخلفية من أمر gnome-terminal، لا يزال يتعطل عند النقر بزر الماوس الأيمن، لكن يبدو مستقراً بعد تشغيل newterm.sh.
10 أكتوبر 2022
- إصلاح newterm.sh لسحابة google؛ توسيع قرص الإقلاع إلى 30G.
20 سبتمبر 2022
- ملاحظة اسم المستخدم وكلمة المرور لمختبر TCP/IP في دليل المختبر.
30 أغسطس 2022
- استخدام اسم مقبس X11 عند تعيين DISPLAY من .profile في الحاوية.
9 أغسطس 2022
- إصلاح اسم دالة processValueMax في المصحح. المشكلة #63
4 أغسطس 2022
- أعيد بناء برنامج labedit باستخدام JDK خاطئ، مما منع إصدارات JRE الأقدم من تشغيل labedit
18 يوليو 2022
- فشل إنشاء حاويات تعتمد على Ubuntu20 داخل IModules. المشكلة #61.
23 مارس 2022
- إصلاح المسار إلى دليل قفل النقر (tap lock)؛ كان يسبب فشل المختبرات التي تستخدم نقرات الشبكة
- تحديث حاسوب netmon الخاص بـ plc-traffic ليشمل openjfx المطلوب لـ grassmarlin الجديد في بيئة جافا
- تسريع بدء تشغيل المختبر بتجنب chown -R، وهو بطيء جداً في docker.
- محاولة أخرى لتجنب حذف رابط X11 في دليل /tmp للحاوية.
- إصلاح عد webtrack للمواقع التي تمت زيارتها وإزالة هدف live-headers، هذه الأداة لم تعد متاحة.
توضيح بعض خطوات دليل المختبر.
2 مارس 2022
- إضافة مختبر ssh-tunnel الجديد (شكراً GWD!)
- إصلاح فشل labedit في عكس قيمة X11 التي حددها new_lab_setup
- إضافة خيار لعدم جعل الحاوية معلمة (parameterize)
23 فبراير 2022
- labedit كان يفسد start.config بعد إضافة حاويات جديدة
- مسار خاطئ لدليل الطالب في ملف README للطالب؛ تغيير ديناميكي للتكوينات السحابية
- امتداد خاطئ لـ update-labtainer.sh
- تحسينات دليل Msc
- تحديث مختبر ghidra ليشمل إصدار 10.1.2 من Ghidra
15 فبراير 2022
- إرجاع دعم سحابة Azure للتجهيز لكل طالب. تشجع Azure على عدم مشاركة الموارد.
24 يناير 2022
- سحابة Azure الآن تستخدم صورة مخزنة في blob Azure بدلاً من التجهيز لكل طالب.
- إضافة دعم لـ Google Cloud.
19 يناير 2022
- تقديم Labtainers على سحابة Azure. انظر دليل الطالب للتفاصيل حول كيفية استخدام هذا.
3 يناير 2022
- مراجعة مختبر setuid-env لإضافة تقييم أفضل؛ اختبار Simlab وتجنب sighup في عملية printenv التابعة.
- إصلاح توجيه عدد أهداف التقييم لاستبعاد قيم العلامات الناتجة التي تكون false.
- عدم اشتراط اسم المختبر عند استخدام gradelab -a مع مصحح بدأ بخيار التصحيح.
- مراجعة capinout (انعكاس stdin/stdout) للتعامل مع يتيمة العمليات التابعة للأوامر، وتحسين التوثيق ومعالجة الأخطاء.
- إضافة عرض أشرطة التقدم لصور docker التي يتم سحبها عند تشغيل المختبر لأول مرة.
- ملاحظات المستخدم حول تقدم تهيئة الحاوية.
- مختبر pcap-lib كان يفتقد ملف إشعار needed للتقييم الآلي؛ إزالة خطوة زائدة من دليل المختبر.
23 نوفمبر 2021
- تعطيل أخطاء المنبثقات في Ubuntu على VM الاختبار.
- إصلاح التعامل مع تنسيقات متغير DISPLAY المختلفة.
22 أكتوبر 2021
- مراجعة دليل مختبر tcpip لملاحظة أن هجوم syn-flood الناجح غير ممكن. إصلاح تقييمه الآلي وإضافة نصوص SimLab.
- تغيير امتداد ملف القطع الأثرية من zip إلى lab، وإضافة ديباجة لإرباك مديري الملفات GUI. كان الطلاب يفتحون الملف المضغوط ويقدمون محتوياته.
- جعل الخيار -r لـ gradelab هو الافتراضي، إضافة خيار -c للاستخدام التراكمي للمصحح.
- تعديل refresh_mirror للإشارة إلى تاريخ الإصدار المحلي لتجنب الاستعلامات المتكررة عن DockerHub. كل استعلام من هذا القبيل يعتبر سحب صورة، وهم الآن يحاولون تحقيق الدخل من ذلك.
30 سبتمبر 2021
- تغيير دليل مختبر bufoverflow وتقييمه لعدم توقع النجاح مع تشغيل ASLR، تقييم ما إذا تم تشغيله.
- معالجة الأخطاء في مصحح الويب للحالات التي يفتقد فيها الطالب للنتائج.
- طباعة تحذير عند تشغيل مختبر مهمل.
- تغيير تقييم formatstring لإزالة وصف "_leaked_secret" غير المستخدم وتوضيح قيمة leaked_no_scanf.
- أيضاً تغيير تقييم formatstring للسماح بأي اسم للملف التنفيذي القابل للاستغلال.
29 سبتمبر 2021
- معالجة أخطاء Gradelab، تقليل حالات التعطل بسبب ملفات zip سيئة.
- تحديد حجم ملفات القطع الأثرية stdout بـ 1MB
17 سبتمبر 2021
- دليل مختبر Ghidra كان يحتوي على عنوان IP خاطئ، لم يُعاد بناؤه من المصدر.
14 سبتمبر 2021
- مختبرات أمثلة لـ LDAP و Mariadb باستخدام SSL. مخصصة كقوالب لمختبرات جديدة.
- التعامل مع تنسيق سجل Mariadb
- إضافة معاملات لكل حاوية للحد من استخدام وحدة المعالجة المركزية أو تثبيت الحاوية على مجموعة وحدة معالجة مركزية.
- إنشاء Labpack أصبح متاحاً الآن عبر واجهة رسومية (makepackui).
- إكمال تلقائي للأوامر labtainer و labpack و gradelab.
- مختبر حوسبة متوازية جديد "parallel" باستخدام MPI.
3 أغسطس 2021
- إضافة خيار تكوين "WAIT_FOR" ليجعل الحاوية تؤخر عملية التحديد حتى تكتمل حاوية أخرى عملية تحديثها.
- دعم تنسيقات سجل Mariadb في تحليل النتائج
- إزالة دعم استخدام Mac و Windows لـ Docker Desktop. هذا المنتج غير مستقر بما يكفي لدعمنا له.
- قمع رسائل stderr عندما يستخدم المستخدم أوامر bash المضمنة مثل "which".
- إصلاحات أخطاء لبرامج makepack/labpack.
19 يوليو 2021
- إضافة مختبر DNS لتقديم بروتوكول DNS وتكوينه.
- مراجعة صورة VirtualBox للتطبيق لتبدأ بنص التحديث الصحيح.
- فصل معلمة nameserver في resolv.conf عن حقل التكوين lab_gw إلى قيمته الخاصة.
- فشل أمر IModule إذا تم تشغيله قبل بدء أي مختبر.
5 يوليو 2021
- أخطاء في إدارة متغير البيئة DISPLAY أدت إلى فشل تطبيقات GUI على Docker Desktop.
1 يوليو 2021
- دعم تثبيت حزمة Mac لـ Labtainers بدون واجهة رسومية.
- فشل التقييم الآلي لمختبر routing-basics بسبب عدم وجود ملفات treataslocal
- تصحيح أخطاء إملائية وعناوين غير صحيحة في مختبر routing-basics، وإصلاح التقييم الآلي.
- تقييم pcapanalysis كان يفشل.
10 يونيو 2021
- جميع ملفات PDF لدليل المختبر موجودة الآن في مستودع github
- تحويل تعليمات مختبر vpnlab و vpnlab2 إلى أدلة مختبر بصيغة PDF.
25 مايو 2021
- إضافة كلمات مفتاحية قابلة للبحث لكل مختبر. انظر "labtainer -h" للاستخدام.
- توسيع مختبر routing-basics ودليله
- إزالة مختبر routing-basics2، أصبح الآن مكرراً.
- sudo على بعض الحاويات فشل لأن أسماء المضيفين تزيل الشرطات السفلية، مما يؤدي إلى عدم تطابق مع ملف hosts. إصلاح بإضافة إدخال إضافي في ملف hosts باسم الحاوية بدون شرطة سفلية.
- ميزة Labpack جديدة لتعبئة مجموعة من المختبرات، وأداة makepack لإنشاء حزم مختبرات.
- فحص أخطاء لدليل /sbin عند استخدام ubuntu20 -- كان سيكون قاتلاً بصمت.
- مختبر network-basics جديد
5 مايو 2021
- تقديم مختبر مستخدمين جديد لتقديم إدارة المستخدمين/المجموعات
- إخفاء رسائل مضيف Apparmor في سجلات نظام حاوية centos
28 أبريل 2021
- صور base2 الجديدة تفتقد صفحات الدليل. تم استخدام unminimize لاستعادتها في الصورة الأساسية.
- تقديم مختبر OSSEC لنظام كشف التسلل المضيفي.
13 أبريل 2021
- فشل مختبر CyberCIEGE لأن مقبس X11 لم يتم نقله قبل بدء Wine عبر fixlocal.
9 أبريل 2021
- مختبر تعليمي جديد gdb-cpp لاستخدام GDB على برنامج C++ بسيط.
- استثناءات النقطة العائمة كانت تكشف عن استخدام exec_wrap.sh لانعكاس stdin/stdout.
7 أبريل 2021
- فشل مختبر ldap عند نقله إلى Ubuntu 20. تم تتبع المشكلة إلى مشكلة مع ذاكرة التخزين المؤقت nscd لكلمة المرور. نقل ldap إلى Ubuntu 20
23 مارس 2021
- التحديد باستخدام RANDOM لم يشمل الحد الأعلى.
- إضافة معلمة خطوة اختيارية لـ RANDOM، مثلاً لضمان حدود الكلمات.
- مختبر db-access: إضافة mysql-workbench إلى حاسوب قاعدة البيانات.
- مختبر overrun جديد لتوضيح مراجع الذاكرة خارج حدود هياكل البيانات في لغة c.
- مختبر printf جديد لتقديم مراجع الذاكرة التي تقوم بها دالة printf.
19 مارس 2021
- gradelab تجاهل أخطاء makdirs، مشكلة مع Windows rmtree على المجلدات المشتركة.
- gradelab التعامل مع المسافات في أسماء ملفات zip للطلاب.
- gradelab التعامل مع أسماء ملفات zip من Moodle، بما في ذلك تنزيلات البناء.
12 مارس 2021
- واجهة labedit: إزالة صورة wireshark القديمة من قائمة الصور الأساسية.
- واجهة labedit: زيادة بعض أحجام الخطوط.
- فشل واجهة المصحح عبر الويب في عرض أدلة المختبر إذا كان اسم الدليل لا يتبع اصطلاحات التسمية.
11 مارس 2021
- واجهة labedit إضافة إعداد السجل في لوحة تكوين المختبر العالمية الجديدة.
10 مارس 2021
- إصلاحات واجهة labedit لعدم البناء إذا كان هناك خطأ نحوي في المختبر
- إصلاح مؤشر "المختبر قيد التشغيل" في واجهة labedit ليعكس المختبر الحالي.
8 مارس 2021
- إهمال استخدام HOST_HOME_XFER، جميع المختبرات تستخدم الدليل وفقاً لملف labtainer.config.
- إضافة تعليق توثيقي إلى start.config لـ REGISTRY و BASE_REGISTRY
5 مارس 2021
- معالجة الأخطاء في واجهة الويب لـ gradelab عند فقدان النتائج.
- إضافة labedit للفحص المسبق (precheck)، إصلاحات أخطاء msc.
26 فبراير 2021
- مختصر dmz-example كان به أخطاء في التوجيه وإعداد dnsmasq على بعض المكونات.
18 فبراير 2021
- كانت الواجهة تعيد بناء الصور لأنها كانت تحدث أوقات الملفات دون سبب
- تنظيف كود الواجهة لإزالة بعض نسخ البيانات الزائدة.
14 فبراير 2021
- إضافة خيار البناء المحلي للواجهة
- إنشاء faux_init فارغ لقواعد centos6.
11 فبراير 2021
- إصلاح معالجة الواجهة لتحرير الملفات. مراجعة التخطيط وإزالة الحقول غير المستخدمة.
- إضافة تكوين base2 لـ ubuntu20 مع ssh2 و network2 و wireshark2
- wireshark الجديد يحل مشكلة النوافذ السوداء/المزعجة.
- تعيين /tmp/.X11-unix إلى /var/trap وإنشاء رابط. ضروري لـ ubuntu20 (كان يحذف /tmp؟) وقد يصلح مشاكل أخرى.
4 فبراير 2021
- إضافة خيار SIZE للنتائج القطع الأثرية
- تبسيط تقييم وتحديد wireshark-intro وإضافة دليل مختبر PDF.
- توفير قيم قائمة المعاملات لـ pregrade.sh كمتغيرات بيئة
- تمكين X11 على المصحح
- وضع update-designer.sh في مسار المستخدمين.
19 يناير 2021
- تغيير إدارة تاريخ/مراجعة README لتحديث الملف في مستودع المصدر.
- تقديم واجهة رسومية لإنشاء/تحرير المختبرات -- انظر أمر labedit.
21 ديسمبر 2020
- فشلت دالة gradelab عندما تم نسخ ملفات zip من مجلد مشترك VirtualBox.
- تحديث دليل المدرب لوصف إدارة ملفات zip للطلاب على أجهزة الكمبيوتر المضيفة.
4 ديسمبر 2020
- الانتقال لتوزيع tar كإصدارات على GitHub releasee
- إلغاء ملف tar المنفصل للمصمم، استخدم tarball مستودع git بدلاً من ذلك.
- اختبار وظائف المصحح عبر الويب لتحليل القطع الأثرية للمختبرات الطلابية
- مسح السجلات من اختبار smoketest الكامل وحذف حاوية المصحح في أمر removelab.
1 ديسمبر 2020
- اعتمد تقييم مختبر iptables2 على منافذ عشوائية "غير معروفة" لـ nmap.
- استخدام دليل متزامن لتأخير بدء اختبارات smoketests قبل بدء المختبر.
- البدء في دمج عناصر واجهة مصمم المختبر.
13 أكتوبر 2020
- تكوينات بدون واجهة رسومية للتشغيل على Docker Desktop على أجهزة Mac و Windows
- دعم خادم بدون واجهة رسومية، ملف cloud-config لنشر السحابة
- دعم اختبار للتكوينات بدون واجهة رسومية
- إجبار mynotify على الانتظار حتى يعمل rc.local عند الإقلاع
- تحسين قدرة خدمة mynotify على دمج المخرجات في طابع زمني واحد
- Python3 لـ stopgrade script
- SimLab تستخدم الآن docker top بدلاً من system ps
26 سبتمبر 2020
- تنظيف نصوص stoplab لتجاهل الحاويات غير المختبرية
- إضافة مختبر db-access للتحكم في الوصول إلى قاعدة البيانات لمشاركة mysql db بشكل مراقب.
17 سبتمبر 2020
- تعذر تشغيل مختبر macs-hash لبرنامج Leafpad بسبب إعداد X11.
- تم إعادة توجيه تسجيل المصحح إلى ملف السجل الخاطئ، الآن يلتقط الأخطاء من instructor.py
- نسخ instructor.log من المصحح إلى دليل سجلات المضيف في حالة وجود خطأ.
28 أغسطس 2020
- إصلاح script التثبيت لاستخدام python3-pip وإصلاح النصوص المعطلة: getinfo.py و pull-all.py
- منطق السجل كان معطلاً، أنظمة الاختبار لم تكن تستخدم سجل الاختبار، إضافة وثائق التطوير.
- إضافة ملفات juiceshop و owasp الأساسية لمختبرات أمان الويب القائمة على OWASP
- إزالة sudos غير الضرورية من check_nets
- إضافة توجيه توثيقي CHECK_OK للتقييم الآلي
- تغيير check_nets لإصلاح مشكلات iptables والتوجيه إذا تم توجيهها بذلك.
12 أغسطس 2020
- إضافة مهلة لنصوص prestop
- إضافة اختبار و checkwork إلى dmz-lab
- إعادة تشغيل dmz-lab بدون الخيار -r كسر التوجيه خارج ISP.
- السماح بملفات متعددة لنتائج time_delim.6 أغسطس 2020
- خطأ في معالجة الأخطاء عند فقدان مقبس X11
- أدت الفواصل في أسئلة الاختبارات إلى أخطاء في التحليل
- إضافة الاختبار و checkwork إلى معمل iptables2
28 يوليو 2020
- إضافة دعم الاختبارات - هذه اختبارات إرشادية، وليست اختبارات تقييم. انظر دليل المصمم.
- إضافة تقييم الحالة الحالية لاستخدامه مع أمر checkwork.
21 يوليو 2020
- إضافة testsets/bin إلى مسار المصمم
- تصحيحات دليل المصمم وتوضيحات لخطوات IModule
- إضافة نوع نتيجة RANGE_REGEX لتحديد نطاقات زمنية باستخدام التعبيرات العادية على إدخالات السجل.
- التحقق من وجود مقبس X11 إذا كان مطلوبًا عند بدء معمل.
- إضافة صورة أساسية لـ mysql
- معالجة تنسيقات طوابع الوقت لسجل mysql في تحليل النتائج.
15 يونيو 2020
- صورة أساسية جديدة تحتوي على موجه Bird مفتوح المصدر
- إضافة معمل bird-bgp لبروتوكول البوابة الحدودية (BGP)
- إضافة معمل bird-ospf لبروتوكول OSPF (Open Shortest Path First)
- تحسين معالجة تغييرات DNS، حيث كان الوصول الخارجي من بعض الحاويات محظورًا في بعض المواقع.
- إضافة قسم إلى دليل المدرب حول استخدام Labtainers في بيئات تفتقر إلى الوصول إلى الإنترنت.
21 مايو 2020
- نقل جميع المستودعات إلى سجل labtainers على Docker Hub
- دعم نقاط التحميل المحددة في start.config للسماح بتثبيتات برامج دائمة
- تغيير معمل ida لاستخدام تثبيت دائم لـ IDA - الاسم الجديد هو ida2
- إضافة معمل cgc لاستكشاف أكثر من 200 خدمة ضعيفة من تحدي DARPA Cyber Grand Challenge
- إضافة أمر type_string إلى SimLab
- إضافة معمل netflow لاستخدام تحليل حركة مرور الشبكة NetFlow
- إضافة إصدارات 64 بت من معملي bufoverflow و formatstring
9 أبريل 2020
- فشل التقييم في حالات CONTAINS و FILE_REGX عند استخدام أحرف البدل لاختيار الملفات.
- تضمين تلميحات لاستخدام hexedit في معمل symlab.
- إضافة عامل hash_equal و hash-goals.py إلى التقييم الآلي لتجنب نشر الإجابات المتوقعة في ملفات التكوين.
- تقييم آلي لمعمل pcap-lib.
7 أبريل 2020
- تم نقل السجلات إلى $LABTAINER_DIR/logs
- تنظيفات أخرى للسماح بإعادة البناء والاختبار باستخدام Jenkins، بما في ذلك استخدام أدلة مؤقتة فريدة للبناءات
- نقل وظائف دعم البناء من labutils إلى build.py
- إضافة معمل pcap-lib لتطوير برامج تحليل حركة المرور القائمة على مكتبة PCAP
13 مارس 2020
- إضافة معمل plc-traffic لاستخدام GrassMarlin مع حركة المرور المتولدة أثناء المعمل.
- تقديم إمكانية إضافة حاويات "tap" لجمع PCAPs من شبكات محددة.
- تحديث توثيق GNS3 للوصول الخارجي إلى الحاويات، واستخدام dummy_hcd لمحاكاة محركات أقراص USB.
- تغيير قالب kali لاستخدام faux_init بدلاً من محاولة استخدام systemd.
- نقل التوزيعات (ملفات tar) إلى box.com
- تغيير استخدام netstat في SimLab لعدم إجراء بحث DNS.
26 فبراير 2020
- إذا لم يعثر أمر labtainer على معمل، اقترح على المستخدم تشغيل update-labtainer.sh
- إضافة دعم أولي لمكون تنصت على الشبكة لعرض كل حركة المرور.
- نص برمجي لجلب صور المعامل لإعداد الأجهزة الافتراضية التي ستستخدم بدون إنترنت.
- توفير اسم المستخدم وكلمة المرور لمعمل nmap-discovery.
18 فبراير 2020
- وراثة متغير البيئة DISPLAY من المضيف (مثل VM) بدلاً من افتراض :0
14 فبراير 2020
- إضافة تمرين مقدمة في هندسة البرمجيات العكسية باستخدام Ghidra.
11 فبراير 2020
- تحديث الأدلة لوصف الوصول عن بُعد إلى الحاويات داخل بيئات GNS3
- إخفاء مكونات وروابط محددة داخل GNS3.
- لم تكن الصور في دليل معمل webtrack مرئية؛ أخطاء إملائية في هذا الدليل ودليل nmap-ssh
6 فبراير 2020
- تقديم وظيفة لإدارة الحاويات عن بُعد، مثل دفع الملفات.
- إضافة وظيفة بيئة GNS3 لمحاكاة إدخال محرك أقراص USB.
- تحسين معالجة أخطاء بناء Docker.
3 فبراير 2020
- في معمل metasploit، لم تكن خدمة postgresql تعمل على الضحية.
- دمج المحتوى اليدوي لـ IModule في دليل مصمم المعامل.
- المزيد من الدعم لـ IModule.
27 يناير 2020
- تقديم دعم أولي لـ IModules (معامل يطورها المدرب). راجع docs/imodules.pdf.
- إصلاح متغير البيئة LABTAINER_DIR المعطل داخل update-labtainer
- إصلاح وضع الوصول على ملف accounting.txt في معمل ACL (أصبح rw-r-r). استخدام chmod صريح في fixlocal.sh.
14 يناير 2020
- نقل الإطار و gradelab إلى Python3 (معامل Python2 الحالية لن تتغير)
- استخدام خيارات random.seed المتوافقة مع الإصدارات السابقة
- اختراق randint غير المتوافق لإرجاع القيم القديمة
- الاستمرار في دعم python2 للمنصات التي تفتقر إلى python3 (أو تلك مثل جهاز VM الأقدم الذي يتضمن python 3.5.2، الذي يكسر توافق random.seed).
- إضافة اسم مستعار rebuild لـ rebuild.py الذي سيختار python2 إذا لزم الأمر.
- فشل صفحات الدليل لمعامل Centos؛ استخدام mandb داخل ملف Docker الأساسي
- كان قناع الشبكة DMZ في dmz-lab خاطئًا (تم اكتشافه بواسطة python3)؛ وكذلك عنوان IP للبوابة الداخلية في دليل المعمل
- إزالة ghex من معامل centos - لم يعد مدعومًا بسهولة بواسطة centos 7
- يجب إكمال معمل حذف الملفات دون إعادة تشغيل VM، لاحظ ذلك في دليل المعمل.
- إضافة مفتاح NO_GW إلى start.config لتعطيل البوابات الافتراضية على الحاويات.
- معمل metasploit، يتسبب في تعطل VM المضيف إذا تم تشغيله بمخول؛ تأخيرات طويلة على su إذا تم تمكين systemd؛ لذا قم بتشغيله بدون systemd.
إزالة استخدام قاعدة البيانات من دليل المعمل، تكوين لاستخدام مفتاح no_gw الجديد
- تحديث رؤوس الملفات للترخيص/الشروط؛ إضافة ملف ترخيص موحد.
- تعديل publish.py ليفترض استخدام سجل اختبار افتراضي، استخدم -d لفرض استخدام default_registry
- مراجعة إجراءات التحكم في المصادر لاستخدام سجل اختبار مختلف لكل فرع، واستخدام فرع premaster للاختبار النهائي للإصدار.
9 أكتوبر 2019
- إزالة dnsmasq من مكون DNS في dmz-lab. كان يتسبب في فشل bind في بعض التثبيتات.
8 أكتوبر 2019
- خطأ نحوي في إعداد سجل الاختبار؛ معلومات مصمم المعامل حول الملفات الكبيرة؛ جلب ملفات bigexternal.txt
30 سبتمبر 2019
- فشل استرداد سجل DockerHub مرة أخرى لبعض المستخدمين. تجاهل بادئة html إلى json.
20 سبتمبر 2019
- يجب أن يسمح تقييم onewayhash بعمليات hmac على ملف من اختيار الطالب.
5 سبتمبر 2019
- إعادة بناء معمل metasploit، أظهر metasploit-framework خطأ. وتم ترك ملف "treataslocal" للمعمل خارج النقل من svn. إصلاح خطأ في دليل معمل metasploit.
30 أغسطس 2019
- التراجع عن اختبار وجود أدلة الحاويات، فهي لا توجد دائمًا.
29 أغسطس 2019
- فشل سحب صور المعامل من Docker Hub بسبب تغيير في github أو curl؟ اكتشاف إعادة التوجيه إلى cloudflare.
إضافة دعم GNS3. إصلاح dnssec في dmz-lab.
11 يوليو 2019
- تقييم آلي لحاويات CentOS6، إصلاح مشكلة ذاكرة firefox، دعم وسائط docker create عشوائية في ملف start.config.
6 يونيو 2019
- تقديم قاعدة Centos6، ولكن بدون دعم للتقييم الآلي بعد
23 مايو 2019
- فشل التقييم الآلي لـ setuid-env بسبب أخطاء إملائية في فواصل الحقول.
8 مايو 2019
- تصحيحات لدليل معمل Capabilities
2 مايو 2019
- إصلاح معمل Acl لأذونات bobstuff.txt. استخدام chmod صريح في fixlocal.sh
- مراجعة دليل الطالب لتوضيح استخدام stop وخيار -r في متن الدليل.
9 مارس 2019
- كانت وظيفة checkwork تعيد استخدام الحاويات، مما يمنع الطلاب من إزالة الآثار من العمل السابق.
- إضافة ملحق لمعمل symkey لوصف تنسيق صورة BMP.
22 فبراير 2019
- فشل بدء تشغيل خادم http في معملي vpn و vpn2. تمت إزالة التقييم الآلي من هذين المعملين حتى إعادة العمل.
7 يناير 2019
- إصلاح التقييم الآلي لـ gdblesson ليكون على الأقل قابلاً للتشغيل.
27 يناير 2019
- إصلاح دليل المعمل لـ routing-basics2 وإصلاح التوجيه لتمكين الوصول الخارجي إلى خادم الويب الداخلي.
29 ديسمبر 2018
- إصلاح routing-basics2، نفس مشاكل routing-basics، بالإضافة إلى عنوان IP غير صحيح في resolv.conf للبوابة.
5 ديسمبر 2018
- إصلاح معمل routing-basics، كان حل DNS في مكوني isp و gatway معطلاً.
14 نوفمبر 2018
- إزالة /run/nologin من آلة الأرشفة في backups2 - نحتاج إلى حل عام لهذه المشكلة nologin
5 نوفمبر 2018
- تغيير ملف aid.conf الافتراضي في معمل file-integrity لتتبع تغييرات البيانات الوصفية بدلاً من أوقات تعديل الملفات
22 أكتوبر 2018
- فشل تحليل verydodgy.com في معمل macs-hash عند إعادة تشغيل المعمل
- فشلت وظيفة الإشعار إذا كان notify_cb.sh مفقودًا
12 أكتوبر 2018
- تعيين حد لـ ulimit على حجم الملف، حد 1G
10 أكتوبر 2018
- فرض جمع الملفات ذات المعلمات
- تضمين leafpad و ghex صراحةً في خط الأساس centos-xtra وإعادة بناء الصور التابعة.
28 سبتمبر 2018
- إصلاح أذونات الوصول للملف المشترك في معمل ACL
- توضيح سؤال في pass-crack
- تعديل جمع القطع الأثرية لتجاهل الملفات الأقدم من بدء المعمل.
- إضافة معمل خوارزميات الحوسبة الكمومية
12 سبتمبر 2018
- إصلاح أخطاء نحوية في تصحيح setuid-env
- إصلاح خطأ نحوي في قواعد جدار الحماية iptables2 النموذجية
- إعادة بناء معامل centos، نقل مشتقات lamp لاستخدام lamp.xtr من أجل waitparam وفرض httpd لانتظار ذلك.
7 سبتمبر 2018
- إضافة CyberCIEGE كمعمل
- عرض read_pre.txt للمعلومات قبل سحب الصور، وفرصة للانسحاب.
5 سبتمبر 2018
- استعادة معالجة التنزيل المجمع لـ sakai إلى وظيفة gradelab.
- إزالة نصوص المدرب غير المستخدمة.
4 سبتمبر 2018
- السماح بعناوين IP متعددة لكل واجهة شبكة
- إضافة صورة أساسية لـ Wine
- إضافة محاكاة GRFICS ICS الافتراضية
23 أغسطس 2018
- إضافة معمل GrassMarlin (اكتشاف شبكة ICS)
23 أغسطس 2018
- إضافة معمل GrassMarlin (اكتشاف شبكة ICS)
21 أغسطس 2018
- إصلاح آخر حول مشكلات مصادقة AWS (يستخدم DockerHub AWS).
- إصلاح new_lab_setup.py لاستخدام git بدلاً من svn.
- تقسيم معمل plc-forensics إلى معمل أساسي ومعمل متقدم (plc-forensics-adv)
17 أغسطس 2018
- الانتقال إلى git & GitHub كمستودع موثوق.
15 أغسطس 2018
- تعديل تقييم معمل plc-forensics ليكون أكثر عمومية؛ مراجعة دليل المعمل ليعكس wireshark على Labtainer.
15 أغسطس 2018
- إضافة أمر "checkwork" للسماح للطلاب بعرض نتائج التقييم الآلي لعملهم.
- تضمين تسجيل حزم iptables المرفوضة في معملي iptables2 و iptables-ics.
- إزالة المثيلات القديمة لـ is_true و is_false من goal.config
- إصلاح تقييم القيم المنطقية للتعامل مع "NOT foo"، كان يتوقع المزيد من المعاملات.
9 أغسطس 2018
- دعم استبدال المعلمات في ملفات results.config
- إضافة نوع نتيجة TIME_DELIM لـ results.config
- إعادة صياغة معمل iptables، إزالة أوامر nmap المخفية، تقديم خدمة مخصصة
7 أغسطس 2018
- إضافة رابط لدليل الطالب في دليل labtainer-student
- إضافة رابط لدليل الطالب على أسطح مكتب VM
- إصلاحات لـ iptables-ics لتجنب التأخير الطويل عند الإغلاق؛ وإصلاحات لاختبارات الانحدار
- إضافة ملاحظة إلى الأدلة تقترح على الطالب استخدام متصفح VM لنقل ملف zip الأثر إلى المدرب.
1 أغسطس 2018
- استخدام صورة Docker عامة للتقييم الآلي؛ التوقف عن إنشاء صور "المدرب" لكل معمل.
30 يوليو 2018
- توثيق الحاجة إلى إلغاء حظر خدمة waitparam.service (عن طريق إنشاء دليل إشارة)
إذا كان نص fixlocal.sh سيبدأ خدمة تعتبر waitparam شرطًا أساسيًا لها.
- إضافة معمل plc-app لجدار حماية تطبيقات PLC وتمرين القائمة البيضاء.
25 يوليو 2018
- إضافة عامل string_contains إلى معالجة الأهداف
- تعديل تقييم معمل formatstring لمراعاة عدم وجود السر المسرب دائمًا في نهاية السلسلة المعروضة.
24 يوليو 2018
- إضافة معمل وكيل SSH (ssh-agent)
20 يوليو 2018
- دعم البناء دون اتصال، تخطي جميع عمليات سحب الصور اختياريًا
- استعادة استعادة مستودعات apt/yum إلى قوالب Dockerfile.
- التعامل مع عناوين URL المعاد توجيهها من استرجاع blob من سجل Docker لتجنب أخطاء المصادقة (لا تعتمد على curl --location).
12 يوليو 2018
- إضافة ميزة prestop للسماح بتنفيذ نصوص يحددها المصمم على مكونات محددة قبل إيقاف المعمل.
- تصحيح تسمية المضيف في معمل ssl، كان يعطل التقييم الآلي.
- إصلاح الحالة الأولية لـ dmz-lab للسماح بحلول DNS من الشبكة الداخلية.
- لم تكن معالجة FILE\REGEX تتعامل بشكل صحيح مع عمليات البحث متعددة الأسطر.
- قيمة إصدار الإطار المستمدة من الصور المعاد بناؤها حديثًا كانت ذات قيمة افتراضية غير صحيحة.
10 يوليو 2018
- إضافة معمل LDAP
- استكمال الانتقال إلى صور Ubuntu القائمة على systemd، إزالة الملفات غير المستخدمة
- نقل ملف lab_sys tar إلى دليل tmp لكل حاوية لضمان التوازي.
6 يوليو 2018
- تم استبدال جميع صور Ubuntu الأساسية بإصدارات تعتمد على systemd
- صور حاويات Labtainer في السجل الآن موسومة بمعرف الصورة الأساسية ولها تسميات تعكس الصورة الأساسية.
- سيقوم تثبيت معين بسحب واستخدام الصور المتوافقة مع الصور الأساسية التي يمتلكها.
- إذا كنت تستخدم صورة VM، فقد ترغب في استبدالها بصورة VM أحدث من موقعنا الإلكتروني.
- لن تعمل المعامل الجديدة دون تنزيل صور أساسية أحدث؛ مما قد يؤدي إلى تخزين VM لإصدارات متعددة من الصور الأساسية الكبيرة (> 500 ميجابايت لكل منها).
- كان يتم فقد القطع الأثرية من العمليات التي كانت تعمل عند إيقاف المعمل - لم يتم قتل عمليات capinout بشكل صحيح.
27 يونيو 2018
- إضافة دعم لصور Ubuntu systemd
- إزالة النسخة القديمة من SimLab.py من labtainer-student/bin
- نقل مصادر apt و yum إلى /var/tmp
- توضيح الاختلافات بين استخدام "boolean" و "count_greater" في التقييمات
- توسيع Add-HOST في start.config لتضمين جميع المكونات على شبكة.
- إضافة خيار إلى new_lab_setup.py لإضافة حاوية بناءً على نسخة من حاوية موجودة.
21 يونيو 2018
- تعيين DISPLAY env للجذر
- إصلاح معالجة تبعيات البناء لإخراج حالة svn
- إضافة معمل radius
- خطأ في SimLab append تم تصحيحه
- استخدام svn، عند الاقتضاء، لتغيير أسماء الملفات باستخدام new_lab_setup.py
19 يونيو 2018
- الاحتفاظ بترتيب الحاويات المحددة في start.conf عند إنشاء طرفية بألسنة متعددة
- توضيح دليل المصمم لتحديد المسار إلى ملفات تكوين التقييم.
- إزالة مطالبة المدرب بتقديم البريد الإلكتروني
- فشل فحص الأخطاء عند اختبار رقم الإصدار
- تضمين طوابع الوقت لبدايات المعامل وإعادتها في json التقييم
- إضافة معمل SSL يتضمن المصادقة ثنائية الاتجاه وإنشاء الشهادات.
14 يونيو 2018
- إضافة تشخيصات إلى تحديد المعلمات، تتبع سبب فشل بعض التثبيتات في ذلك.
- إذا كانت الحاوية موجودة بالفعل، تأكد من تحديد معلماتها، وإلا انسحب لتجنب الحاويات التالفة أو غير المكتملة.
- إصلاح رقم إصدار البرنامج لاستخدام svn HEAD
15 يونيو 2018
- تحويل نصوص التعليمات النصية التي ظهرت في xterms إلى ملف pdf.
- إصلاح خطأ في معالجة إصدار الصور التي لم يتم سحبها بعد.
- اكتشاف حدوث حاوية تم إنشاؤها ولكن لم يتم تحديد معلماتها، ومطالبة المستخدم بإعادة تشغيل المعمل باستخدام الخيار "-r".
- إضافة أداة مصمم: rm_svn.py بحيث تؤدي الملفات المحذوفة إلى إعادة بناء الصورة.
13 يونيو 2018
- تثبيت xterm على أنظمة Ubuntu 18
- حل مشكلة تعطل الإصدارات الجديدة من معالجة ألسنة gnome-terminal
11 يونيو 2018
- إضافة فحص الإصدار لمقارنة الصور بالإطار.
- توضيح أدلة المعامل المختلفة
2 يونيو 2018
- عند التثبيت على Ubuntu 18، استخدام docker.io بدلاً من docker-ce
- تسبب capinout في تعطل عندما يتبع أمر مراقب "sudo su" أمر مستخدم غير مرتفع.
- نقل إعدادات التوجيه و resolv.conf إلى /etc/rc.local بدلاً من fixlocal.sh بحيث تبقى عبر بدء/إيقاف الحاويات.
31 مايو 2018
- حل مشكلة Docker التي تسببت في التفاف النص في طرفية بدون تغذية سطر.
- توسيع COMMAND_COUNT ليشمل الأنابيب
- إنشاء نسخة جديدة من معمل backups تتضمن النسخ الاحتياطي إلى خادم بعيد ونسخ احتياطي لقسم كامل.
- تغيير تعليمات sshlab لاستخدام أداة ssh-copy-id
- حذف ملف /run/nologin من parameterize.sh للسماح بتسجيل الدخول عبر SSH على CentOS
30 مايو 2018
- توسيع new_lab_setup.py للسماح بتحديد الصورة الأساسية المراد استخدامها
- إنشاء نسخة جديدة من centos-log تتضمن التسجيل المركز.
- لم يكن التحقق من صحة التقييم يقبل خيار "time_not_during".
- البدء في دمج Labtainer Master لإدارة Labtainers من حاوية Docker.
25 مايو 2018
- إزالة فترات النوم 10 ثوانٍ من خدمات مختلفة. كان يؤخر استجابات xinetd، مما يكسر الاختبارات الآلية.
- إصلاح تصحيح snort lab ليتطلب فقط "CONFIDENTIAL" في الإنذار. إزالة الملفات غير المستخدمة من المعمل.
- لم يتم تسجيل أوقات انتهاء البرامج إذا كان البرنامج قيد التشغيل عند إيقاف المعمل.
21 مايو 2018
- إصلاح تصحيح retlibc لإزالة الهدف المكرر، كان يفشل التقييم الآلي
- إزالة نسخ mynotify.py من المعامل الفردية وقوالب المعامل، فقد كانت جزءًا من lab_sys/sbin، ولكن لم يتم تحديثها لتعكس الإصلاحات التي تم إجراؤها لمعمل acl.
18 مايو 2018
- إخفاء رسالة الإشارة من exec_wrap بحيث تبدو رسالة خطأ segv صحيحة.
- كان capinout يفقد أحيانًا stdout، تحقق من stdout للأمر عند وفاة cmd.
- إصلاح تصحيح formatstring لالتقاط رسالة خطأ تجزئة.
- إضافة ميزة type_function إلى SimLab لكتابة stdout لنص (انظر formatstring simlab).
- إزالة قيود SimLab على الجمع بين علامات الاقتباس المفردة/المزدوجة.
- إضافة توجيه window_wait إلى SimLab للإيقاف مؤقتًا حتى يتم العثور على نافذة بعنوان معين.
- تعديل معمل plc لتغيير العناوين على طرفية العالم المادي لتعكس الحالة، مما يجعل الاختبار أسهل أيضًا.
- إصلاح رابط دليل معمل bufoverflow.
15 مايو 2018
- إضافة ملحق حول استخدام أداة SimLab لمحاكاة أداء الطلاب للمعامل لاختبار الانحدار وتطوير المعامل.
- إضافة وظيفة wait_net إلى SimLab للإيقاف مؤقتًا حتى يتم إنهاء اتصالات الشبكة المحددة.
- تغيير التقييم الآلي لـ acl لاستخدام FILE_REGEX للمطابقة متعددة الأسطر.
- اختبار SimLab لمعمل xsite.
11 مايو 2018
- إضافة ملف "noskip" لفرض جمع الملفات الموجودة بخلاف ذلك في home.tar، مطلوب لاسترداد firefox places.sqlite.
- دمج قاعدة بيانات sqlite مع مخزن الكتابة المسبقة قبل الاستخراج.
- تصحيحات لدليل المعمل لـ symkeylab
- إضافات تصحيح لـ symkeylab و pubkey
- تحسينات لأداة simlab: دعم include، إصلاح تسمية النوافذ.
9 مايو 2018
- إصلاح تحديد معلمات معمل حذف الملفات. تصحيح خطأ في دليل معملها.
- استبدال استخدام shell=True في نصوص python لتقليل العمليات والسماح بتتبع PIDs
- تنظيف الأدلة لـ backups و pass-crack و macs-hash.
8 مايو 2018
- التعامل مع حالة سباق لمنع gnome-terminal من تنفيذ أمر docker الخاص به قبل أن ينفذ طرفية تعليمات xterm أمرها.
- لا تعرض أخطاء عندما يوقف المدرب معملًا بدأ بـ "-d".
- تغيير تصحيح nmap-ssh ليعكس بشكل أفضل هدف المعمل.
- عدة إصلاحات في الوثائق والنصوص اقترحها olberger على github.
7 مايو 2018
- استخدام برنامج capinout القائم على C بدلاً من capinout.sh القديم لالتقاط stdin و stdout. راجع trunk/src-tool/capinout. يزيل القيود المرتبطة باستخدام ctrl-C لكسر البرامج المراقبة وعرض كلمات المرور في telnet و ssh.
- تضمين دعم معالجة تنزيل saki bulk_download zip لاستخراج التقارير المقدمة بشكل منفصل، وتلخيص التقديمات المفقودة.
- إضافة فحوصات للبريد الإلكتروني المقدم من المستخدم للتأكد من أنه أحرف قابلة للطباعة.
- أثناء التصحيح، إذا لم يتطابق البريد الإلكتروني المقدم من المستخدم مع اسم ملف zip، تابع لتصحيح النتائج، لكن أدرج ملاحظة في الجدول تعكس الغش. مطلوب للتعافي من الحالات التي يدخل فيها الطالب بيانات غير صحيحة لعنوان البريد الإلكتروني.
- تغيير تصحيح telnetlab لعدم النظر في إخراج tcpdump لكلمات المرور - يؤدي إصلاح capinout إلى إرسال صحيح حرفًا بحرف إلى الخادم.
- إصلاح خطأ في install-docker.sh واستخدام sudo لتغيير إعداد dns الخاص بـ docker في ذلك النص.
26 أبريل 2018
- الانتقال إلى استخدام "labtainer" لبدء المعمل، و "stoplab" لإيقافه.
- إضافة خيار --version إلى أمر labtainer.
- إضافة types result log_ts و log_range، وعوامل الهدف time_not_during.
إعادة صياغة تصحيح centos-log و sys-log لاستخدام هذه الميزات.
- وضع labsys.tar في /var/tmp بدلاً من /tmp، في بعض الأحيان يتم حذفه قبل فك الضغط
- فشل تشغيل تطبيقات X كجذر بعد إعادة تشغيل VM.
- إضافة صفحات دليل "User Command" إلى معامل CentOS
- إصلاح خطأ حديث منع جمع ملفات docs من الطلاب
- تعديل smoke-tests لمقارنة سطر نتيجة خاص بالطالب فقط، خالٍ من الفراغاتApril 20, 2018
- تتعذر بدء تشغيل خدمة denyhosts في المرة الأولى، تم نقل البدء إلى student_startup.sh.
- نقل جميع خدمات faux_init إلى ما بعد المعايرة -- تعطل بدء تشغيل rsyslog في بدء الحاوية الثاني.
April 19, 2018
- فشل مختبر acl في تقييم أداء خطوة حصان طروادة بشكل صحيح.
- جمع مستندات الطلاب بشكل افتراضي.
- تغير مختبر denyhost ليعكس أن denyhosts (أو tcp wrappers؟) تعدل الآن iptables. أيضًا، تعطل بدء تشغيل خدمة denyhosts في بعض المناسبات.
- عند تحديث Labtainers، لا تستبدل الملفات الأحدث من تلك الموجودة في الأرشيف -- احتفظ بتقارير مختبرات الطلاب.
April 12, 2018
- إضافة توثيق لغرض أهداف المختبر، وعرض ذلك للمدرس عند بدء المختبر.
- تصحيح استخدام دالة precheck عندما يكون البرنامج في treataslocal، تمرير المسار الكامل للبرنامج إلى capintout.sh.
- نسخ ملفات instr_config في وقت التشغيل بدلاً من أثناء بناء الصورة.
- إضافة قسم في دليل المصمم حول تصحيح التقييم الآلي.
- حالة أحرف غير صحيحة في أسماء ملفات تقارير المختبر.
- دالة chown غير ضرورية سببت تعطل instructor.py أحيانًا.
- دعم الاختبار الآلي للمختبرات (انظر SimLab وsmoketest).
- نقل testsets وdistrib تحت trunk
April 5, 2018
- مراجعة ملف تعريف Firefox لإزالة رسالة "لم تستخدم Firefox منذ فترة...".
- إزالة عمليات سحب غير ضرورية من السجل -- الحصول على تواريخ الصور عبر واجهة docker hub API بدلاً من ذلك.
March 28, 2018
- استخدام tar صريح بدلاً من "docker cp" لملفات النظام (Docker لا يتابع الروابط).
- إصلاح مختبر النسخ الاحتياطي لاستخدام نظام ملفات منفصل وتحديث الدليل.
March 26, 2018
- دعم الأوضاع متعددة المستخدمين (انظر دليل مستخدم مصمم المختبر).
- إزالة الاعتماد على ملفات lab_bin وlab_sys أثناء البناء. يتم نسخها الآن أثناء معايرة المختبر.
- نقل capinout.sh إلى /sbin ليتم العثور عليه عند التشغيل كـ root.
March 21, 2018
- إضافة CLONE للسماح بعدة مثيلات من نفس الحاوية، على سبيل المثال، للمختبرات المشتركة بين عدة طلاب متزامنين.
- تكييف مختبر kali-test لتقديم مثال على macvlan وCLONE.
- نسخ السكربت capinout.sh إلى /sbin ليتمكن root من العثور عليه بعد sudo su.
March 15, 2018
- دعم شبكات macvlan للاتصالات مع المضيفين الخارجيين.
- إضافة قاعدة Kali linux وصورة Metasploitable 2 (انظر kali-test).
March 8, 2018
- عدم الحاجة لاسم المختبر عند استخدام stop.py.
- التقاط الأخطاء الناتجة عن الشبكات الضالة وتوجيه المستخدم إلى إصلاح.
- إضافة دعم لاستخدام مستودعات apt وyum المحلية في NPS.
February 21, 2018
- إضافة dmz-lab.
- تغيير "checklocal" إلى "precheck"، ليعكس أنه يعمل قبل الأمر.
- فصل الإبلاغ عن أحداث inotify عن استخدام precheck.sh، والسماح لقوائم أحداث inotify بتضمين اسم ملف إخراج اختياري.
- تمديد خطاف bash إلى عمليات root، مسح bash_history.
- السماح بمعايرة حقول start.config، على سبيل المثال، لعناوين IP عشوائية.
- دعم مراقبة الخدمات التي بدأت عبر systemctl أو /etc/init.d.
- تقديم مؤهلات فاصل زمني لتنظيم ملف سجل بطابع زمني إلى نطاقات مفصولة بتغيير تكوين مثير للاهتمام (انظر dmz-lab).
February 5, 2018
- يتم الآن التعامل مع القيم المنطقية من ملفات results.config كقيم أهداف.
- إضافة دعم التعبيرات العادية لتحديد نتائج القطع الأثرية.
- دعم سجلات Docker البديلة، بما في ذلك سجل اختبار محلي للاختبار.
- إصلاحات متنوعة للمختبرات وأدلة المختبرات.
- لم يكن خطاف المراقبة capinout يقتل العمليات الفرعية عند الخروج.
- قتل العمليات المراقبة قبل جمع القطع الأثرية.
- إضافة labtainer.wireshark كحاوية أساسية، تنظيف dockerfiles.
January 30, 2018
- إضافة مختبر snort.
- دمج الطوابع الزمنية لملفات السجل، مثلاً من syslogs، في النتائج الموقوتة.
- إزالة قيم النتائج غير المعرفة من ملفات نتائج json الموقوتة الوسيطة.
- تغيير عملية تقييم الهدف time_during لربط الطوابع الزمنية بقيمة الهدف الناتجة.
January 24, 2018
- استخدام النوافذ ذات التبويبات تسبب في فشل جانب المدرس، استخدام علامات الاقتباس المزدوجة.
- تجاهل الملفات في أدلة _tar (بخلاف .tar) عند تحديد تبعيات البناء.