Clarification: 1.2.10 "single quote"

Aperta
#3,230 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma

Direzione di ricerca

Iniziare esaminando il requisito 1.2.10 nella fonte ASVS 5.0 e confrontare le relative indicazioni su CSV e fogli di calcolo con RFC 4180. Chiarire l'ambito previsto, i formati supportati e se l'escaping con apici singoli sia sufficiente, quindi aggiornare il requisito in modo che le relative aspettative di sicurezza siano inequivocabili.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

2) Awaiting response V1 (prev V5)

1.2.10 Verify that the application is protected against CSV and Formula Injection.
The application must follow the escaping rules defined in RFC 4180 sections
2.6 and 2.7 when exporting CSV content. Additionally, when exporting to CSV
or other spreadsheet formats (such as XLS, XLSX, or ODF), special characters
(including ‘=’, ‘+’, ‘‑’, ‘@’, ‘\t’(tab), and ‘\0’(null character)) must be escaped
with a single quote if they appear as the first character in a field value.

  • Relying only on RFC 4180 and the “leading character” rule may not protect against all injection scenarios, because different applications can interpret CSV data in different ways.
  • Escaping with a single quote at the start isn’t always the best or only defense, especially for more complex formats that have their own structures and formula parsing rules.
  • As far as I know RFC 4180 describes how CSV files are structured,it doesn’t address security measures like escaping for formula injection or other spreadsheet-specific risks.
  • A single quote escape is not a universal solution.
  • The requirement also doesn’t clearly define its scope. This mitigation is only necessary when user-provided data is included in CSV/XLS output. If all the content is system-generated and trusted, this escaping may not be needed.
Lingua principale
HTML
Stelle
3.8k
Fork
855
Merge medio
1g 9h
PR unite (30g)
8

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di OWASP/ASVS

Tutte le issue di OWASP/ASVS

Issue simili

Altre issue su Documentation

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.