github-samples / github-samples/pets-workshop

GitHub security workshop: Add a deterministic CodeQL scanning lab

Offen
#271 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

priority: P2
Vorherrschende Sprache
Python
Sterne
80
Forks
161
Ø Merge
31 Min.
Gemergte PRs (30 T.)
1

Beschreibung

Goal

Teach learners how to enable code scanning and observe a real, intentionally introduced CodeQL finding in the pets application.

Scope

Add one safe training change that is detected reliably by a documented Python CodeQL query. The vulnerable path should be realistic enough to teach source-to-sink reasoning, but isolated from normal workshop startup and clearly marked as training-only. Provide a maintainer verification procedure so dependency or query-suite updates cannot silently break the exercise.

Acceptance criteria

  • The exercise explains default setup versus advanced setup and selects one tested path.
  • Learners enable CodeQL using current, capability-based instructions.
  • A training fixture or guided code change triggers a named CodeQL query deterministically.
  • The fixture contains no real secret, external side effect, or production deployment path.
  • Learners trigger analysis on a branch or pull request and can identify the resulting check.
  • The expected query ID, severity, file, and vulnerable data flow are documented for maintainers.
  • A repeatable validation step proves the expected alert appears.
  • Cleanup/reset instructions return the repository to a safe state.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Prüfung der pets-Anwendung und der vorhandenen Setup-Anleitung des Workshops und vergleiche anschließend die Optionen für das standardmäßige und das erweiterte CodeQL-Setup. Definiere ein ausschließlich für Schulungszwecke vorgesehenes Fixture oder eine angeleitete Änderung und dokumentiere die benannte Abfrage, den Schweregrad, die Datei, den Datenfluss, den Branch- oder Pull-Request-Trigger, den Validierungsschritt und das Verfahren zur Bereinigung. Als erledigt gilt die Aufgabe, wenn die Warnung zuverlässig erscheint, ohne Secrets, Seiteneffekte oder einen Produktionspfad zu verwenden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
github, github-actions, python
Bereich
documentation, security
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
50/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.