Dev-Time Model Theft si verifica quando, durante fasi di sviluppo e training, modelli AI o loro componenti proprietari vengono copiati, estratti o subiscono accesso non autorizzato. Questa minaccia deriva da vulnerabilità tipiche di ambienti insicuri, controlli insufficienti, logging inadeguato e pratiche di storage non sicure che consentono agli attaccanti di ottenere i modelli prima del deployment.
Vulnerabilità da individuare nel ciclo di sviluppo
- Accesso non autorizzato o furto dei modelli AI nel ciclo di sviluppo.
- Controlli di accesso e meccanismi di isolamento assenti o deboli.
- Storage, trasferimento e gestione insicuri di artefatti e modelli nelle fasi di training e sviluppo.
Come testare Dev-Time Model Theft
1. Scansione credenziali hardcoded
- Utilizzare git-secrets o TruffleHog per cercare credenziali hardcoded (API key, password, access token) nei repository Git del progetto.
- Una vulnerabilità è confermata se vengono trovate credenziali valide che consentono accesso in lettura a storage dove risiedono modelli o dati di training.
2. Esfiltrazione tramite pipeline CI/CD
- Analizzare la configurazione e i permessi della CI/CD pipeline. Verificare se un utente con ruolo developer può modificare la pipeline aggiungendo step che esfiltrano artefatti (es. uso di
curloscpper inviare i file modello a server esterni). - La vulnerabilità si manifesta se la pipeline permette queste modifiche senza security alert o blocchi sulle policy di rete in uscita.
3. Estrazione modello tramite API di sviluppo non protette
- Individuare API interne o di staging usate per debug o valutazione modelli. Provare ad accedervi da ambienti esterni, tentare di scaricare file modello o parametri.
- Una risposta vulnerabile si evidenzia quando le API risultano esposte o prive di autenticazione, consentendo download di artefatti proprietari.
Output atteso di un ambiente sicuro
- Nessun segreto o credenziale hardcoded nei repository di codice.
- Pipeline CI/CD equiparata all’infrastruttura di produzione: modifiche soggette a security review, runner sandboxati e controllo rigoroso del traffico in uscita.
- Accesso ai file modello e ai dati di training strettamente limitato a servizi e personale esplicitamente autorizzati. Tutte le operazioni sono registrate e monitorate.
Strategie di remediation
- RBAC rigoroso e gestione centralizzata dei segreti: implementare restrizioni di accesso su tutte le risorse di sviluppo, conservare password e API key in vault sicuri.
- Rinforzare la sicurezza della CI/CD pipeline: regole di branch protection, bisogno di review per le modifiche, utilizzo di runner sandboxati con regole di egress restrittive.
- Firma digitale di tutti gli artefatti modello. Il processo di deployment verifica la firma per garantire integrità e assenza di manomissioni.
- Conservazione cifrata degli artefatti modello in repository privati e audit logging continuo.
- Monitoraggio e Data Loss Prevention: controllare tutti gli accessi e bloccare direttamente eventuali tentativi non autorizzati di trasferimento dei file modello.
Strumenti utili
- Scansione segreti: git-secrets, TruffleHog
- Gestione artefatti: JFrog Artifactory, AWS CodeArtifact
- Sicurezza e auditing pipeline: GitLab Security, GitHub Advanced Security, Checkov
- Data Loss Prevention: OpenDLP, Google Cloud DLP
Riferimenti
- OWASP AI Exchange – Model Theft & Intellectual Property Risks
- MITRE ATT&CK – Data Staged: Model Theft
- NIST AI Security Guidelines – Protecting AI Artifacts and Intellectual Property
Individuare e mitigare le vulnerabilità relative al Dev-Time Model Theft durante sviluppo e training di modelli AI è essenziale per proteggere asset proprietari e garantire la sicurezza dell’intero ciclo di vita del modello.
