Skip to content

Latest commit

 

History

History
576 lines (423 loc) · 17.7 KB

File metadata and controls

576 lines (423 loc) · 17.7 KB

GitHub Copilot InfoSec & Architecture Track

Document 04 | 2 Hours

Sri Bolisetty | December 2025


Track Overview

Attribute Value
Duration 2 hours
Target Audience CISO, Security Architects, Compliance Officers, Risk Managers
Prerequisites None (technical security background assumed)
Format Security review workshop
Core Outcome Security policy framework and risk assessment

Critical Context

This track must be completed BEFORE administrators configure Copilot. Security defines the policies; administrators implement them.

flowchart LR
    subgraph SECURITY["Security (This Track)"]
        S1["Risk Assessment"]
        S2["Policy Framework"]
        S3["Compliance Mapping"]
    end
    
    subgraph ADMIN["Admin Track (After)"]
        A1["Implement policies"]
        A2["Configure controls"]
        A3["Monitor compliance"]
    end
    
    SECURITY -->|"Approved policies"| ADMIN
Loading

Learning Objectives

By the end of this track, security professionals will be able to:

  1. Assess GitHub Copilot's risk profile against enterprise security requirements
  2. Map Copilot controls to compliance frameworks (SOC 2, ISO 27001, NIST)
  3. Define an organization-specific policy framework
  4. Establish ongoing security review processes for AI tool releases

Module Structure

flowchart TB
    subgraph SEC["🔒 INFOSEC ARCHITECTURE TRACK - 2 HOURS"]
        direction TB
        M1["Module 4.1: Threat Model & Risk Assessment<br/>30 min"]
        M2["Module 4.2: Security Controls Deep Dive<br/>40 min"]
        M3["Module 4.3: Compliance Framework Mapping<br/>30 min"]
        M4["Module 4.4: Policy Framework Design<br/>20 min"]
        M1 --> M2 --> M3 --> M4
    end
Loading

Module 4.1: Threat Model & Risk Assessment (30 min)

4.1.1 — Understanding the Attack Surface (10 min)

Copilot Data Flow Architecture

flowchart TB
    subgraph DEV["Developer Environment"]
        IDE["IDE (VS Code/JetBrains)"]
        CODE["Local Code"]
    end
    
    subgraph GITHUB["GitHub Infrastructure (Azure)"]
        PROXY["Proxy Service<br/>(Toxicity filter, content check)"]
        LLM["Foundation LLM<br/>(OpenAI/Internal)"]
    end
    
    IDE -->|"Context extraction"| PROMPT["Prompt Construction"]
    PROMPT -->|"HTTPS/TLS"| PROXY
    PROXY -->|"Filtered prompt"| LLM
    LLM -->|"Suggestion"| PROXY
    PROXY -->|"Post-processing"| IDE
    
    CODE -->|"Read by extension"| IDE
Loading

Data Elements Transmitted

Data Element Transmitted? Retention (Business/Enterprise)
Current file content Yes Not retained
Open tab content Yes Not retained
Cursor position Yes Not retained
File path/name Yes Not retained
User engagement data Yes 2 years
Suggestions accepted/rejected Yes Not retained

Data NOT Transmitted

  • Closed files
  • Files in .copilotignore
  • Content exclusion paths
  • Local git history
  • Credentials (in theory—validated by filters)

4.1.2 — Threat Modeling (10 min)

Primary Threat Vectors

flowchart TB
    subgraph THREATS["Threat Categories"]
        T1["Data Exfiltration<br/>Code/secrets leave org"]
        T2["Supply Chain<br/>Malicious suggestions injected"]
        T3["IP Leakage<br/>Proprietary code exposed"]
        T4["Compliance Violation<br/>Regulated data processed externally"]
        T5["Credential Exposure<br/>Secrets in code context"]
    end
Loading

Risk Assessment Matrix

Threat Likelihood Impact Residual Risk (w/ Controls)
Code transmitted to third party Certain Medium Low (in-memory only, no retention)
Secrets in suggestions Possible High Medium (filters, not guaranteed)
Public code in suggestions Possible Medium Low (public code filter)
Malicious code suggestions Unlikely High Medium (requires human acceptance)
Model training on your code None (Business/Enterprise) N/A None

Mitigating Controls Summary

Threat Primary Control Secondary Control
Data exfiltration No prompt retention Content exclusion
IP leakage Public code filter Code review process
Credential exposure Content exclusion Secret scanning
Compliance violation Data residency (Azure) Audit logging

4.1.3 — Risk Acceptance Decision Framework (10 min)

Questions for Risk Committee

  1. Is transmitting code context to GitHub/Azure acceptable?

    • Code is processed in-memory, not stored
    • GitHub is SOC 2/ISO 27001 certified
    • Business/Enterprise: No training on your code
  2. Can we accept AI-generated code in production?

    • All suggestions require human acceptance
    • Existing code review processes apply
    • Static analysis/security scanning unchanged
  3. What code categories require exclusion?

    • Classified/regulated code
    • Third-party code under NDA
    • Infrastructure secrets

Risk Acceptance Template

## GitHub Copilot Risk Acceptance

**Date:** [Date]
**Approved By:** [CISO/Risk Committee]

### Accepted Risks
1. Code context transmitted to GitHub infrastructure for processing
   - Mitigation: No retention, SOC 2 certified, content exclusion
   
2. AI-generated code suggestions may contain bugs
   - Mitigation: Human review, existing SDLC controls

### Conditions
- Content exclusion enabled for: [list]
- Public code filter: Enabled
- Agent Mode: [Enabled/Disabled pending review]
- Quarterly review of security posture

### Signature: _______________

Module 4.2: Security Controls Deep Dive (40 min)

4.2.1 — GitHub's Security Architecture (10 min)

Trust Center Overview

Location: copilot.github.trust.page

Certifications Held (December 2025)

Certification Scope Verification
SOC 1 Type 2 Financial controls Annual audit
SOC 2 Type 2 Security, Availability, Confidentiality Annual audit
SOC 3 General use report Public
ISO/IEC 27001:2022 ISMS certification Annual audit
CSA STAR Level 2 Cloud security (CCM) Third-party attestation
TISAX Automotive sector Relevant for automotive

Responsible AI Framework

GitHub follows Microsoft's Responsible AI Standard:

  • Accountability
  • Transparency
  • Fairness
  • Reliability & Safety
  • Privacy & Security
  • Inclusiveness

Aligned with NIST AI Risk Management Framework (AI RMF).


4.2.2 — Enterprise Security Controls (15 min)

Control Categories

flowchart TB
    subgraph CONTROLS["Enterprise Security Controls"]
        direction TB
        A["Policy Controls<br/>What features are allowed"]
        B["Access Controls<br/>Who can use Copilot"]
        C["Data Controls<br/>What code is processed"]
        D["Audit Controls<br/>What is logged"]
    end
Loading

Policy Controls Detail

Control Options Recommendation
Public code filter Enabled / Disabled Enable (reduces IP risk)
Agent Mode Enabled / Disabled Start disabled, enable after review
Coding Agent Enabled / Disabled Requires careful review
Third-party LLMs Allow / Block Block until vendor review
Copilot Extensions Allow / Block Block initially
Preview features Enabled / Disabled Disable for production

Access Controls Detail

Control Implementation
SSO/SAML Enterprise: Required
SCIM provisioning Automate seat assignment
IdP group mapping Team-based assignment
IP allowlisting Enterprise network only (optional)

Data Controls Detail

Control Scope Syntax Example
Content exclusion Org/Repo level **/.env, **/secrets/**
Repository restrictions Org level Exclude specific repos
File pattern exclusion Global **/*.pem, **/credentials.*

⚠️ Critical Limitation

Agent Mode and Coding Agent do NOT respect content exclusions. If content exclusion is critical, consider disabling these features.

Audit Controls Detail

Log Type Retention Export Options
Audit log (Copilot events) 180 days CSV, JSON, GraphQL, REST
Git events 7 days Same
Streaming to SIEM Real-time Splunk, Azure Event Hub

4.2.3 — Data Retention Policies (8 min)

Retention by Access Point

Access Point Prompts/Suggestions User Engagement Feedback
IDE (Business/Enterprise) Not retained 2 years As needed
GitHub.com Chat 28 days 2 years As needed
Coding Agent Session lifetime 2 years As needed

Data Residency

  • Primary processing: GitHub-owned Azure tenants
  • Traffic routing: Based on capacity, not geography
  • No guarantee of regional data residency

For Regulated Industries

If data residency is mandated:

  1. Document the Azure processing model
  2. Assess if "in-memory only" satisfies requirements
  3. Consider on-premises alternatives (e.g., JetBrains AI Enterprise) if required

4.2.4 — Audit Log Analysis (7 min)

Copilot-Specific Audit Events

Event Trigger Use Case
copilot.seat_assignment_created License assigned Track provisioning
copilot.seat_assignment_deleted License removed Track deprovisioning
copilot.cfb_seat_cancelled Business seat cancelled Billing audit
copilot.content_exclusion_changed Exclusion rules modified Policy change tracking

Audit Log Query Example

actor:username action:copilot created:>2025-01-01

SIEM Integration Options

SIEM Integration Method
Splunk GitHub App for Splunk + Audit Log Streaming
Microsoft Sentinel Azure integration + audit log connector
DataDog GitHub integration + webhook
Elastic REST API + webhook

Module 4.3: Compliance Framework Mapping (30 min)

4.3.1 — SOC 2 Mapping (10 min)

Trust Services Criteria Alignment

TSC GitHub Copilot Control Evidence
CC6.1 (Logical access) SSO/SAML, SCIM, IdP groups Audit logs
CC6.6 (System boundaries) Content exclusion, network config Policy settings
CC6.7 (Data transmission) TLS encryption, Azure network Trust Center
CC7.2 (Monitoring) Audit logging, SIEM streaming Audit exports
CC8.1 (Change management) Policy cascade, approval workflows Enterprise settings
PI1.1 (Privacy notice) Data handling documentation Trust Center

SOC 2 Audit Preparation

For your organization's SOC 2:

  1. Document Copilot as a subservice (SaaS)
  2. Reference GitHub's SOC 2 Type 2 report
  3. Document your configuration choices
  4. Maintain audit log exports

4.3.2 — ISO 27001 Mapping (10 min)

Annex A Control Alignment

Control Title Copilot Implementation
A.5.15 Access control SSO, SCIM, policy cascade
A.5.23 Cloud service security GitHub SOC 2/ISO 27001 certs
A.8.3 Information access Content exclusion, repo restrictions
A.8.10 Information deletion Retention policies (no retention)
A.8.12 Data leakage prevention Content exclusion, code filters
A.8.15 Logging Audit logs, SIEM streaming
A.8.16 Monitoring Metrics dashboard, alerts

ISO 27001 Documentation Requirements

  1. Risk assessment including AI tools (1.3 in this track)
  2. Statement of Applicability update for AI processing
  3. Third-party supplier assessment for GitHub
  4. Incident response procedures for AI tool issues

4.3.3 — NIST Frameworks (10 min)

NIST CSF 2.0 Mapping

Function Category Copilot Control
IDENTIFY Asset Management Seat inventory, license tracking
PROTECT Access Control SSO, policy enforcement
PROTECT Data Security Content exclusion, encryption
DETECT Continuous Monitoring Metrics dashboard, audit logs
RESPOND Analysis Audit log investigation
RECOVER Recovery Planning Seat management, policy restore

NIST AI RMF Alignment

GitHub claims alignment with NIST AI RMF through Microsoft RAI Standard:

AI RMF Function GitHub Implementation
GOVERN Responsible AI Impact Assessment
MAP Risk mapping for AI products
MEASURE Copilot effectiveness studies
MANAGE Safety filters, content moderation

NIST 800-53 (Federal)

For federal contractors:

  • Review FedRAMP status (GitHub Enterprise Cloud)
  • Document AI tool authorization
  • May require additional controls for classified work

Module 4.4: Policy Framework Design (20 min)

4.4.1 — Recommended Policy Template (10 min)

GitHub Copilot Security Policy Template

# GitHub Copilot Acceptable Use & Security Policy

**Version:** 1.0
**Effective Date:** [Date]
**Owner:** Information Security
**Review Cycle:** Quarterly / Per Major Release

## 1. Purpose
This policy defines security requirements for GitHub Copilot usage
within [Organization Name].

## 2. Scope
All employees with GitHub Copilot licenses.

## 3. Policy Requirements

### 3.1 Approved Use Cases
- Development of [approved project types]
- Code completion and assistance
- Test generation
- Documentation generation

### 3.2 Prohibited Use Cases
- Classified or restricted code
- Code under NDA without vendor approval
- Generation of security-critical algorithms without review
- Processing of PII/PHI without authorization

### 3.3 Required Controls
| Control | Setting | Enforcement |
|---------|---------|-------------|
| Public code filter | Enabled | Enterprise policy |
| Content exclusion | [Patterns] | Enterprise policy |
| Agent Mode | [Enabled/Disabled] | Enterprise policy |
| Coding Agent | [Enabled/Disabled] | Enterprise policy |

### 3.4 Review Requirements
- All Copilot-generated code subject to standard code review
- Security-sensitive code requires security review
- No automatic commits of Copilot suggestions

## 4. Compliance
Violations subject to [standard disciplinary process].

## 5. Exceptions
Exceptions require CISO approval.

## 6. Review History
| Version | Date | Changes |
|---------|------|---------|
| 1.0 | [Date] | Initial policy |

4.4.2 — Ongoing Security Review Process (10 min)

Release Review Cadence

flowchart LR
    A["GitHub Release<br/>(~Monthly)"] --> B["Security Review<br/>(2-5 days)"]
    B --> C{"New Features?"}
    C -->|Yes| D["Risk Assessment"]
    C -->|No| E["Confirm Controls"]
    D --> F["Update Policy"]
    E --> F
    F --> G["Communicate to Admins"]
Loading

New Feature Review Checklist

For each new Copilot feature:

  • What data does it access?
  • Does it respect content exclusion?
  • Does it require new permissions?
  • What audit events are generated?
  • Is it enabled by default?
  • Should we enable, disable, or defer?

Security Incident Response

Scenario Response
Suspected data leak via Copilot Disable for affected users, audit logs, investigate
Vulnerability in Copilot extension Update extension, communicate to users
GitHub security incident Monitor GitHub status, review audit logs
Malicious code suggestion accepted Standard incident response, add to test cases

Track Assessment

Security Review Deliverables

After completing this track, you should produce:

  • Risk assessment document (Module 1.3 template)
  • Control configuration recommendations (Module 2.2)
  • Compliance mapping relevant to your frameworks (Module 3)
  • Acceptable use policy (Module 4.1 template)
  • Ongoing review process definition (Module 4.2)

Handoff to Administrators

Provide Admin team with:

  1. Approved policy settings
  2. Content exclusion patterns
  3. Feature enable/disable decisions
  4. Audit requirements
  5. Escalation procedures

Appendix: Security Resources

GitHub Resources

Industry Frameworks


Version History

Version Date Changes
1.0 December 2025 Initial track

Related Documents

Document Relevance
05 - Administrators Track Policy configuration how-to
06 - Integration Guide SIEM integration details
09 - Governance Templates Ready-to-use policy templates
10 - Quick Reference Cards Security checklist card
12 - Implementation Risks Shadow Copilot detection
14 - Architecture & Security Advanced security patterns