hacker:5ai:5llm:5chatbot:5llm_internal:5
elenco di tutti i tipi di attacchi che un llm puo subire
Sì. Se per **“attacchi che un LLM può subire”** intendiamo sia gli attacchi al modello sia quelli contro un'applicazione che lo utilizza, l'elenco è piuttosto ampio. Conviene dividerli per categoria.
### 1. Attacchi al prompt e alle istruzioni
1. **Direct Prompt Injection** — l'attaccante inserisce istruzioni ostili direttamente nel prompt.
2. **Indirect Prompt Injection** — l'istruzione malevola è contenuta in un documento, pagina Web, email, PDF ecc. che il modello deve leggere.
3. **Jailbreaking** — tentativi di aggirare le restrizioni del modello.
4. **Instruction Override** — tentativo di far prevalere un'istruzione dell'utente sulle istruzioni di sistema.
5. **Role-play attack** — si induce il modello ad assumere un ruolo che dovrebbe consentire comportamenti normalmente vietati.
6. **Multi-turn manipulation** — l'attacco viene costruito progressivamente attraverso molte conversazioni.
7. **Context poisoning** — vengono introdotte informazioni false o istruzioni malevole nel contesto che il modello utilizzerà successivamente.
8. **Many-shot attack** — vengono fornite moltissime dimostrazioni/esempi per spingere il modello verso un comportamento indesiderato.
9. **Obfuscation attack** — l'istruzione malevola viene codificata, alterata o mascherata per evitare i controlli.
10. **Multilingual attack** — si utilizza una lingua o una combinazione di lingue nella quale i filtri risultano meno efficaci.
### 2. Attacchi contro RAG e conoscenza esterna
11. **RAG poisoning** — inserimento di documenti manipolati nella base di conoscenza.
12. **Retrieval manipulation** — manipolazione dei dati affinché il sistema recuperi determinati documenti.
13. **Knowledge-base poisoning** — contaminazione sistematica della fonte di conoscenza.
14. **Indirect prompt injection via documents** — istruzioni nascoste nei documenti recuperati.
15. **Web poisoning** — creazione/manipolazione di pagine che il sistema potrebbe successivamente recuperare.
16. **Citation manipulation** — tentativo di influenzare le fonti o i riferimenti restituiti dal sistema.
### 3. Furto di informazioni
17. **Prompt leakage** — tentativo di ottenere il system prompt o istruzioni interne.
18. **System-prompt extraction** — estrazione sistematica delle istruzioni riservate.
19. **Data leakage** — fuoriuscita di informazioni presenti nel contesto.
20. **Training-data extraction** — tentativo di recuperare informazioni memorizzate durante l'addestramento.
21. **PII extraction** — estrazione di informazioni personali.
22. **Secret extraction** — tentativo di ottenere password, API key, token o altre credenziali.
23. **Cross-user data leakage** — possibilità che un utente riceva dati appartenenti a un altro utente.
### 4. Attacchi al modello
24. **Model poisoning** — contaminazione dei dati o del processo di addestramento.
25. **Backdoor attack** — inserimento di un comportamento nascosto che viene attivato da determinate condizioni.
26. **Adversarial examples** — input costruiti appositamente per provocare una classificazione o risposta errata.
27. **Evasion attack** — modifica dell'input per aggirare un sistema di rilevamento.
28. **Model extraction** — tentativo di ricostruire un modello interrogandolo ripetutamente.
29. **Model stealing** — clonazione o approssimazione delle capacità del modello.
30. **Membership inference** — tentativo di stabilire se un determinato dato era presente nel training set.
31. **Model inversion** — tentativo di ricavare informazioni sugli input utilizzati per addestrare il modello.
### 5. Attacchi contro gli agenti LLM
Questa categoria è particolarmente importante perché l'LLM non si limita più a parlare.
32. **Tool abuse** — manipolazione del modello affinché utilizzi impropriamente uno strumento.
33. **Tool poisoning** — manipolazione delle informazioni/descriptions relative agli strumenti.
34. **Excessive agency** — sfruttamento di permessi eccessivi concessi all'agente.
35. **Privilege escalation** — tentativo di ottenere capacità superiori a quelle autorizzate.
36. **Unauthorized actions** — induzione dell'agente a compiere azioni non autorizzate.
37. **Agent hijacking** — presa di controllo del comportamento dell'agente attraverso input malevoli.
38. **Command injection** — trasformazione dell'output del modello in un comando eseguibile.
39. **Code injection** — inserimento di codice malevolo nel flusso dell'applicazione.
40. **SQL injection via LLM** — utilizzo dell'LLM per generare query manipolate o pericolose.
41. **SSRF via agent** — induzione dell'agente a effettuare richieste verso risorse che normalmente non dovrebbero essere accessibili.
42. **Sandbox escape** — tentativo di uscire dall'ambiente isolato nel quale opera l'agente.
### 6. Attacchi alla disponibilità
43. **Denial of Service (DoS)** — rendere il sistema inutilizzabile.
44. **Resource exhaustion** — consumare CPU, memoria, token o altri recursos.
45. **Token exhaustion** — generare richieste enormi o conversazioni molto lunghe.
46. **API abuse** — uso massiccio dell'API per aumentare costi o saturare il servizio.
47. **Cost attack / Denial of Wallet** — provocare intenzionalmente un consumo economico elevato.
48. **Recursive agent loops** — provocare cicli ripetitivi in un agente autonomo.
### 7. Attacchi all'applicazione che circonda l'LLM
49. **Authentication bypass** — aggiramento dell'autenticazione.
50. **Authorization bypass** — accesso a funzioni non autorizzate.
51. **Session hijacking** — appropriazione della sessione di un utente.
52. **Insecure API exploitation** — sfruttamento delle API che comunicano con il modello.
53. **Insecure output handling** — l'applicazione tratta l'output dell'LLM come codice o HTML affidabile.
54. **XSS attraverso output LLM** — output manipolato che viene poi interpretato dal browser.
55. **Data exfiltration** — utilizzo del modello/applicazione come canale per portare dati fuori dal sistema.
56. **Supply-chain attack** — compromissione di modelli, dataset, librerie, plugin o componenti di terze parti.
### 8. Attacchi multimodali
Con i modelli che possono leggere immagini, audio e video compaiono ulteriori possibilità:
57. **Adversarial images** — immagini costruite per ingannare il modello.
58. **Hidden-text attacks** — istruzioni nascoste nell'immagine.
59. **OCR injection** — testo inserito in immagini affinché venga interpretato come istruzione.
60. **Audio prompt injection** — istruzioni malevole contenute nell'audio.
61. **Video prompt injection** — istruzioni inserite nei fotogrammi o nell'audio del video.
62. **Cross-modal injection** — un contenuto in una modalità influenza il comportamento del modello in un'altra.
### 9. Attacchi comportamentali e sociali
63. **Social engineering via LLM** — sfruttamento dell'LLM per convincere persone a compiere determinate azioni.
64. **Impersonation** — utilizzo del modello per simulare una persona o un'organizzazione.
65. **Phishing generation** — generazione automatizzata di messaggi ingannevoli.
66. **Misinformation injection** — introduzione deliberata di informazioni false nel sistema.
67. **Trust exploitation** — sfruttamento dell'eccessiva fiducia dell'utente nelle risposte del modello.
---
### Una distinzione fondamentale
Non tutti questi sono propriamente **“attacchi contro l'LLM”**.
Ci sono almeno tre bersagli diversi:
```text
ATTACCO
│
┌────────────┼────────────┐
▼ ▼ ▼
MODELLO LLM APP AGENTE
│ │ │
poisoning data leak tool abuse
extraction injection privilege
inversion XSS escalation
jailbreak auth bypass command injection
```
E c'è una differenza enorme tra un chatbot che **risponde soltanto** e un LLM che può **leggere file, navigare su Internet, eseguire codice e modificare dati**. Nel secondo caso molte delle tecniche sopra possono trasformarsi da semplice manipolazione della risposta a vera compromissione del sistema.
Se vuoi, posso anche trasformare questo elenco in una **mappa visuale degli attacchi agli LLM**, organizzata dal più innocuo al più pericoloso.
Fuente original
https://chatgpt.com/c/6aaef4bc-6350-83ed-b61d-05c5a0eb6293