Resources
Key frameworks, standards, and references for the workshop, pinned to the exact editions used in the course. Where links lead to living documents (ATLAS, OWASP), the referenced edition is noted. Verify currency at M5 content lock.
Workshop videos (YouTube)
Session recordings and demos for this workshop, collected in one playlist.
- SecAI+ Workshop — YouTube playlist ↗
The full video playlist for this week — recordings and demos, watch in order or jump to a session.
Classroom demo labs (build it yourself)
Short, self-contained labs you can run and demo to students. Full step-by-step setup lives on each page; scripts download as an annotated zip.
- Local LLM chat starter — Ollama + Python (guide) ↗
Step-by-step: install Ollama, pull a local model, and run a tiny fully-commented Python chat client that sets system prompts and streams replies. Runs offline, no API key — a clean demo of what a chatbot actually is.
- Download the scripts — ollama-python-chat.zip ↗
The annotated chat client plus three example system-prompt personas, zipped. Standard-library Python only — nothing to pip install. (Setup guide linked above.)
Tokens: tokenizers & API costs
Tokens are the unit of both meaning and billing — these make that concrete.
- Tiktokenizer ↗
Paste text and watch it split, across several model families. The fastest way to show a class that "cybersecurity" is not one token.
- Hugging Face Tokenizer Playground ↗
Same idea, side-by-side across tokenizers — good for showing that token counts differ per model for identical text.
- tiktoken (OpenAI, GitHub) ↗
The BPE tokenizer library itself. This is what the Day-2 guardrail labs pre-cache so TokenLimit works offline.
- Hugging Face NLP course — Byte-Pair Encoding ↗
How BPE actually builds a vocabulary. The explainer to reach for when someone asks why rare strings tokenize badly.
- Artificial Analysis — model comparison ↗
Cost per million tokens, speed and quality compared across frontier models in one table.
- Anthropic — pricing ↗
Per-million-token input and output pricing, with the input/output asymmetry visible.
- Google — Gemini API pricing ↗
Gemini per-token rates, including the free tier limits.
- OpenAI — API pricing ↗
Per-token rates for the GPT family. (Canonical source; blocks automated checks, so verify in a browser.)
- Anthropic — token counting API ↗
Count tokens before you send a request — how to estimate cost and stay inside a context window.
Day 2 — watch & discuss: Securing AI
Optional watches for the 40% domain — authoritative, stable sources. Each pairs with a discussion prompt in the Day 2 deck; screen any clip before class.
- Simon Willison — "Prompt injection, explained" (talk + slides + transcript) ↗
The ~10-minute canonical explainer of LLM01 from the person who coined the term. Discuss: which of today's controls would blunt each of his examples?
- OWASP GenAI — Top 10 for LLM Applications 2025 ↗
The source document for the 40% domain — the exact numbering used all day. Discuss: which two risks are NEW in 2025 (LLM07, LLM08) and why did RAG make them necessary?
- MITRE ATLAS — adversary matrix + real case studies ↗
The ATT&CK-style matrix for AI. Pull up one case study and trace it across the tactics. Discuss: what tactic did the attacker open with, and where would you have broken the chain?
RAG & local AI tools
Ways to run retrieval-augmented generation on your own machine — no API key, no data leaving the box.
- AnythingLLM Desktop ↗
All-in-one desktop app: point it at documents and chat over them locally. The quickest way to show RAG to a class without building a stack.
- Ollama ↗
The local model runtime used in every lab this week — serves qwen2.5 and nomic-embed-text on CPU.
- Chroma ↗
The vector store behind the Day 1 RAG pipeline. Embeddings in, nearest-neighbour search out.
- LM Studio ↗
Desktop alternative to Ollama with a built-in model browser and chat UI.
- Open WebUI ↗
Self-hosted chat front-end that speaks to Ollama, with document upload for RAG.
- LlamaIndex ↗
Python framework for the ingest -> chunk -> embed -> retrieve pipeline when you outgrow a hand-rolled script.
- LangChain ↗
The other common framework for chaining retrieval and generation steps.
Referral codes & sign-up credits
Sign-up links for services we use, some with referral codes. Referral links are marked — using one may earn the instructor credit at no cost to you; the plain sign-up page is always an option if you'd rather not.
- RunPod — GPU cloud (referral) ↗
On-demand cloud GPUs for running larger models than your laptop can host — rent by the minute, no long-term commitment. Referral link. Plain sign-up: runpod.io.
- Claude Code — AI coding agent (referral) ↗
The CLI coding agent used to build this course site. Referral link. Plain sign-up: claude.ai/code.
Security frameworks & standards
The risk lists and control frameworks the labs and exam map to.
OWASP Top 10 for LLM Applications 2025
The 2025 edition of the authoritative LLM security risk list — used throughout Days 2 and 3. Key 2025 additions: LLM07 System-Prompt Leakage and LLM08 Vector & Embedding Weaknesses. Published by the OWASP Gen AI Security Project.
Edition: 2025 — verify at M5 content lock.
OWASP ML Security Top 10 v0.3 (2023 draft)
Machine-learning security risks covering training-data poisoning, model inversion, model theft, and adversarial examples. Draft standard (v0.3, 2023); cited in Days 2–3 defense discussions. Tracks threats to the ML pipeline itself, complementing the LLM Top 10.
Edition: v0.3 (2023 draft).
NIST AI RMF 1.0 + AI 600-1 GenAI Profile
The AI Risk Management Framework (AI RMF 1.0) and its companion NIST AI 600-1 GenAI Profile. Day 3 lab includes a hands-on AI RMF mapping worksheet (Govern, Map, Measure, Manage). AI 600-1 extends the framework with controls specific to generative AI (foundation models, RAG, agents).
AI RMF 1.0 (Jan 2023) · AI 600-1 (Jul 2024).
MITRE ATLAS (live matrix)
Adversarial Threat Landscape for AI Systems — attack techniques and mitigations for ML/AI systems, structured like ATT&CK. Referenced live; the matrix is continuously updated by MITRE. Used in Day 2–3 threat modeling and Day 4 detection rule exercises.
Live — current edition as of access date.
Governance & regulation
What compliance obligations attach to an AI system, and when.
EU AI Act — Primer
Key provisions: risk-tier classification (unacceptable / high / limited / minimal), transparency obligations, prohibited uses, and enforcement. Covered in the Day 3 governance module (D4 domain).
High-risk compliance deadline: 2 December 2027 — deferred by the Digital Omnibus package (provisional, pending formal adoption; re-verify at M5 content lock). General provisions applied from 2 August 2026.
Regulation (EU) 2024/1689. High-risk deadline: 2 Dec 2027 (Digital Omnibus — provisional).
Certification
The blueprint this workshop and the Friday exam are built against.
SecAI+ (CY0-001 V1) Objectives
CompTIA's official SecAI+ exam objectives — gated; linked only, not reproduced verbatim (copyright). Launched February 2026. Four domains: Basic AI Concepts (17%), Securing AI Systems (40%), AI-Assisted Security (24%), AI Governance/Risk/Compliance (19%).
CY0-001 V1, launched Feb 2026.
Additional Reading
- OWASP AI Security and Privacy Guide ↗— broader AI security guidance covering the full system lifecycle.
- CISA AI Resources ↗— US government guidance on secure AI deployment in critical infrastructure.
- MCP Specification 2025-11-25 ↗— the stable Model Context Protocol spec used in the Day 4 lab.
- Instructor on GitHub (@profzeller) ↗— course code, lab repos, and follow-along material.
- MutaSpace SOC Lab (GitHub) ↗— hands-on SOC lab environment for detection and triage practice.