https://github.com/Anamul-ho/os3-security-studio/releases
OS3 Security Studio is a comprehensive educational cyber security platform designed for hands-on learning. It combines interactive labs, vulnerability assessments, and security training into a single, approachable environment. The project targets students, educators, researchers, and professionals who want to sharpen their skills through practical exercises. The platform emphasizes repeatability, clarity, and a steady progression from fundamentals to advanced topics. It integrates real-world concepts with guided experiments, clear scoring, and actionable feedback.
This repository centers on delivering a robust learning ecosystem. It blends practical labs with theory, enabling learners to explore network security, web security, secure coding, incident response, and risk assessment in a controlled setting. The design favors clarity and reliability. It uses familiar tooling and a straightforward setup so instructors can adopt it quickly, and students can focus on the work rather than the infrastructure.
Key idea: education first. The platform guides learners from foundational concepts to complex scenarios. It keeps results visible and interpretable, so learners can track progress and reflect on what they did, why it mattered, and how to improve.
- Topics covered span cyber-lab basics to advanced security engineering.
- The learning path aligns with university curricula and professional training programs.
- The codebase emphasizes modularity so instructors can swap in new labs or modify existing ones with minimal friction.
If you want a secure, scalable, and transparent way to teach cyber security, this project offers a solid foundation with room to grow.
Table of contents
- Why OS3 Security Studio
- Core ideas and design principles
- How the platform works
- Tech stack and architecture
- Getting started
- Lab catalog and examples
- How to run and extend labs
- Curriculum alignment and teaching guides
- Instructor tooling and assessment
- Developer guide
- Testing and quality
- Security and safety notes
- Community and governance
- Roadmap
- Acknowledgments
- Licensing and credits
- Releases
Why OS3 Security Studio This project centers on practical, hands-on learning. Learners push the system to its limits in safe, controlled spaces. They observe how security controls behave, why certain configurations fail, and how attackers and defenders interact. The environment offers guided tasks, instant feedback, and measurable outcomes. It supports both individual study and classroom use.
Design goals
- Clarity: every lab includes goals, steps, expected outcomes, and scoring criteria.
- Reproducibility: labs run the same way across machines and environments.
- Modularity: each lab is independent, with clean interfaces for inputs, outputs, and scoring.
- Accessibility: material is approachable for beginners while still useful for advanced users.
- Safety: activities stay contained within lab bounds and do not affect external systems.
Core ideas and design principles
- Hands-on first: learners learn by doing, then reason about why things work.
- Incremental difficulty: labs build on previous work, with clear progression paths.
- Observable outcomes: learners see immediate feedback and score updates.
- Transparent scoring: assessments reflect specific actions and results.
- Traceability: labs produce logs, artifacts, and evidence of work for review.
How the platform works
- Front-end and back-end integration: a lightweight web interface communicates with a Flask-based API. The API orchestrates lab sessions, collects results, and manages state.
- Lab sandboxing: each lab runs in tight boundaries to keep experiments isolated. Containers or isolated processes host lab tasks.
- Lab authoring model: instructors create labs with clear steps, expected outcomes, and scoring rules. Labs are data-driven and easy to reuse.
- Assessment and feedback: the system analyzes learner actions, highlights mistakes, and points to best practices.
- Progress tracking: learners earn scores, badges, and certificates as they complete milestones.
- Extensibility: new labs, tools, and datasets can be added with minimal changes to core code.
Tech stack and architecture
- Back end: Python with Flask for the REST API and server-side rendering where needed.
- Front end: lightweight HTML/JS templates with minimal dependencies for reliability.
- Data: a relational store for users, labs, sessions, and results. The data model is designed for clear reporting and auditing.
- Lab runtime: containerized or isolated environments to host lab tasks and simulators.
- Security: input validation, least privilege execution, and activity logging ensure a safe learning space.
- Documentation: Markdown-based docs and inline examples help teachers and students understand how to operate the system.
Getting started Prerequisites
- Python 3.9 or later
- Pip for Python package installation
- A modern browser (Chrome, Firefox, Edge, or Safari)
- Optional: Docker if you want containerized labs (not required for basic usage)
Installation steps
- Clone the repository
- Create and activate a virtual environment
- python -m venv venv
- source venv/bin/activate (Linux/macOS)
- venv\Scripts\activate (Windows)
- Install dependencies
- pip install -r requirements.txt
- Configure the environment
- Copy the sample config and adjust settings for your environment.
- Set up the database connection and any required secrets.
- Run the server
- export FLASK_APP=app.py
- flask run --host=0.0.0.0 --port=8000
- Access the platform
- Open http://localhost:8000 in your browser
- Optional: Docker-based lab runtime
- If you want isolated labs via containers, follow the Docker-based setup in the docs.
- This approach helps keep experiments contained and repeatable.
Using the platform
- Start a lab session
- Choose a lab from the catalog.
- Start a new session; the platform provisions a sandbox and initializes data.
- Complete lab tasks
- Follow the steps described in the lab guide.
- Each step provides actionable guidance and expected outcomes.
- The system records actions and updates the score as milestones are reached.
- Review results
- After each lab, review a detailed report with logs, screenshots, and rationale.
- Use the feedback to improve your understanding and techniques.
- Export and share
- Generate a lab report that documents your approach and results.
- Share the report with instructors, peers, or mentors.
Lab catalog and examples
- OWASP Top Ten learning path
- Lab 1: Input validation and output encoding
- Lab 2: Authentication weaknesses and session management
- Lab 3: Sensitive data exposure and encryption basics
- Lab 4: Security misconfigurations in a web app
- Lab 5: Cross-site scripting and content security
- Lab 6: Broken access control and authorization checks
- Lab 7: Insecure deserialization and data flows
- Lab 8: Security testing fundamentals with scanners
- Lab 9: Threat modeling for a web application
- Lab 10: Secure coding practices and code reviews
- Network security labs
- Lab 11: Packet filtering and firewall rules
- Lab 12: Intrusion detection basics and log analysis
- Lab 13: Network segmentation and access controls
- Lab 14: VPN concepts and secure remote access
- Incident response and forensics
- Lab 15: Incident triage workflow
- Lab 16: Log correlation and root cause analysis
- Lab 17: Evidence collection and chain of custody
- Security hygiene and operations
- Lab 18: Patch management and vulnerability prioritization
- Lab 19: Secure configuration baselines
- Lab 20: Continuous monitoring and alert tuning
Lab authoring and extension
- Create new labs with a clear schema
- A lab has: title, objective, prerequisites, steps, expected outcomes, scoring rules, data sets, and artifacts.
- Reusable components
- Use common tasks and checklists where possible to reduce duplication.
- Build labs as modular units that can be assembled into larger learning paths.
- Testing and review
- Run labs end-to-end to verify behavior before publishing.
- Obtain feedback from students and instructors and iterate.
Curriculum alignment and teaching guides
- University curriculum mapping
- Align labs with core security domains: vulnerability assessment, secure coding, network security, incident response, and risk management.
- Provide module-level objectives that fit into lecture sequences and lab periods.
- Teaching materials
- Instructor guides cover setup, pacing, assessment strategies, and classroom activities.
- Student guides present learning goals, required readings, and lab tasks.
- Assessment rubrics
- Create clear criteria for each lab: task completion, reasoning, evidence collection, and remediation steps.
- Include a rubric for lab reports, code reviews, and practical demonstrations.
Instructor tooling and assessment
- Dashboard and analytics
- Instructors can monitor student progress, lab completion rates, and common errors.
- The dashboard highlights students who need additional focus or remediation.
- Feedback and grading
- Provide structured feedback with concrete suggestions.
- Use the scoring rules embedded in each lab to justify grades.
- Classroom management
- Create cohorts, assign labs, and track attendance and engagement.
- Export data for institutional reporting and accreditation needs.
Developer guide
- Code organization
- Core modules handle routing, lab orchestration, and user management.
- Lab modules are stored as data-driven definitions with optional code hooks.
- Contribution workflow
- Fork the repository, create a feature branch, and submit a pull request.
- Include tests, documentation updates, and a changelog entry.
- Quality controls
- Run unit tests and integration tests locally.
- Ensure code adheres to style guidelines and security best practices.
- Documentation
- Keep docs up to date with features, API changes, and deployment notes.
- Include examples and tutorials for new contributors.
Testing and quality
- Test strategy
- Unit tests verify core components and data models.
- Integration tests ensure lab orchestration, user flows, and scoring work as expected.
- End-to-end tests simulate real student journeys.
- Test coverage and metrics
- Track code coverage and critical path tests.
- Monitor performance of the lab runtime and API endpoints.
- Continuous improvement
- Review test failures promptly.
- Refactor code to reduce technical debt while preserving features.
Security and safety notes
- Safe lab environment
- Labs run in isolated spaces to avoid impacting the host system.
- All actions are logged for audit and review.
- Data handling
- Use minimal personal data for learners.
- Store sensitive data securely and rotate credentials regularly.
- Responsible experimentation
- Design labs to teach defense, not to enable exploitation on real systems.
- Provide guardrails to prevent escalation of privileges beyond the sandbox.
Community and governance
- Open governance
- Community members contribute ideas, code, and content.
- Decisions are discussed openly with clear, actionable outcomes.
- Collaboration norms
- Be respectful, constructive, and precise in feedback.
- Document decisions and link to discussions when possible.
- Recognition
- Acknowledge contributors and give credit for substantial work.
Roadmap
- Short-term goals
- Expand the OWASP-focused labs with more coverage of secure coding practices.
- Improve lab authoring tools to simplify creating new labs.
- Add richer analytics dashboards for instructors.
- Medium-term goals
- Integrate more secure configuration templates and automated remediation guidance.
- Support additional runtimes and container orchestration options.
- Provide offline mode for classroom settings without internet access.
- Long-term vision
- Build a holistic cyber security education ecosystem that spans K-12 to higher education and professional training.
- Enable cross-institution sharing of labs, datasets, and rubrics.
Acknowledgments
- Educational partners and instructors who contributed lab ideas and feedback.
- Early adopters who helped test the platform in classroom settings.
- The open-source community for code reviews, bug fixes, and feature suggestions.
- Institutions that provided educational use cases and curriculum alignment feedback.
Licensing and credits
- The project uses a permissive open-source license, with credits to all contributors.
- Acknowledgments are included in the LICENSE and CONTRIBUTORS files.
- Feel free to reuse labs and materials under the project’s license terms, with appropriate attribution.
Releases
-
For the latest builds and their accompanying assets, check the Releases page. The link is provided again here for convenience:
-
See the Releases page for installation bundles, sample data, and migration notes. This resource is updated to reflect new labs, improvements, and bug fixes. To download and run the latest installer or lab bundles, visit the releases page and follow the instructions for your platform. The path-based releases page hosts downloadable assets you can adapt for your lab environments. After you access the page, locate the appropriate file, download it, and execute the installer or lab bundle as guided by the release notes.
-
Revisit the Releases page regularly to keep up with new content and improvements. For convenience, you can open the page at any time via the same link: Releases page
Topics
- cyber-lab
- cybersecurity
- cybersecurity-education
- education
- flask
- network-security
- owasp
- python
- security-training
- university-curriculum
- web-security
Community and contribution details
- How to contribute
- Start with the issues labeled “help wanted” or “good first issue.”
- Propose new labs by sharing a detailed outline and a runnable example.
- Submit tests that demonstrate new behavior and ensure existing features stay intact.
- How to report issues
- Use the issue tracker for bugs, feature requests, and questions.
- Include steps to reproduce, expected behavior, and environment details.
- Documentation requests
- Propose improvements to installation instructions, lab guides, and API references.
- Share sample student outcomes or rubrics to help instructors calibrate grading.
Usage patterns and best practices
- Classroom-ready labs
- Prepare labs in advance, with clear prerequisites and assessment criteria.
- Provide a short briefing before each lab and a debrief after.
- Self-paced learning
- Learners can work through labs sequentially, collecting artifacts and notes.
- Encourage learners to annotate findings and justify decisions with evidence.
- Assessment-driven learning
- Use the scoring rules to guide students toward correct reasoning.
- Provide targeted feedback that helps learners close knowledge gaps.
Images and visuals used
- Lab banner image from a generic source to convey the learning environment.
- A clean badge to indicate release activity and a technology-themed badge to reflect the stack.
Frequently asked questions (selected)
- What is the primary goal of OS3 Security Studio?
- To provide a practical, repeatable environment for learning cyber security through hands-on labs and guided assessments.
- Who is this for?
- Students, educators, researchers, and professionals seeking structured, lab-based learning.
- Do I need to be expert to use it?
- No. The project starts with fundamentals and expands to more advanced topics as learners progress.
- Can I customize labs?
- Yes. Labs are designed to be modular and easy to extend or customize.
- Is it safe to run labs on my machine?
- Labs run in isolated environments. They are designed to minimize risk to the host system.
Appendix: quick references
- Architecturally, the platform emphasizes a Flask-based API with a lightweight front end.
- Labs are data-driven, with clear input, step-by-step tasks, and scoring rules.
- The ecosystem supports classroom use, self-paced learning, and instructor-driven evaluation.
Notes on usage and behavior
- The platform is designed to be navigated by learners with minimal setup beyond the initial installation steps.
- Labs are designed to be resilient and forgiving, with explicit guidance to help learners recover from missteps.
- Instructors can curate labs to fit a course schedule, balancing theory with practice.
End of documentation
- The documentation above provides a comprehensive view of the OS3 Security Studio project.
- It balances practical setup guidance with extensive information about labs, pedagogy, and governance.
- It remains focused on delivering an effective, teachable cyber security education experience without sacrificing accessibility or clarity.