Domanda

Sto lavorando su un app che ha bisogno di accettare una RegEx da parte dell'utente, di farlo sto usando il seguente codice:

Regex user_searchPattern = new Regex(this.userInput_regEx.Text);

sta facendo questo è sicuro?
C'è una necessità per disinfettare l'input dell'utente, e se sì, come?

È stato utile?

Soluzione

Si potrebbe ottenere un errore se l'espressione regolare ha una sintassi non valida o potrebbe consumare una quantità esponenziale di tempo e di spazio quando viene elaborato se un cosiddetto patologica espressione regolare è testato su qualche particolare stringa .

Altri suggerimenti

L'input dell'utente è sempre il male. Che cosa si intende con "sicuro". Può contenere degli errori che renderanno il vostro codice di un'eccezione o non riescono in qualche altro modo? Sì, certamente può, così si dovrebbe essere preparati per questo, naturalmente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top