2011-10-13 10 views
5

Come parte di un progetto, accetto il testo da un utente tramite il modulo Web e lo visualizzo su una pagina Web. Il testo che forniscono può contenere URL, in tal caso mi piacerebbe renderlo come collegamento ipertestuale per migliorare l'esperienza. Ad esempio, l'utente potrebbe inviare il testo contenentee voglio convertirlo in <a href="http://www.google.com">...Rendering sicuro di collegamenti ipertestuali nel testo non attendibile

Mi chiedo quali problemi di sicurezza dovrei essere a conoscenza mentre lo faccio. Ho già preso misure per evitare qualsiasi semplice inserimento XSS, perché la mia libreria XML sfugge a qualsiasi personaggio speciale, ma immagino che ci siano attacchi più sofisticati.

+0

Uno dei tuoi maggiori problemi [potrebbe essere questo.] (Http://www.youtube.com/watch?v=oHg5SJYRHA0) Modifica: Dang, renditi conto che non stai per offuscare l'href. Ignorare questo;) – vzwick

risposta

1

Oltre a ignorare javascript:, probabilmente si dovrebbero creare collegamenti ipertestuali solo per il protocollo http: perché ci sono alcune applicazioni che possono essere avviate o controllate tramite altri protocolli. Steam, Skype e AOL Messenger vengono in mente.

+1

dati: text/html; base64, PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4 = –

0

Se si dispone solo di URL circostanti con elementi a, l'unico problema che si deve verificare se immette un URL dannoso (potrebbe essere abbreviato) e si finisce per cliccarlo, a condizione che tutti gli altri mezzi di attacco siano sicuri nel software (ad esempio, non è possibile eseguire arbitrariamente JavaScript, ecc.).

Assicurarsi di non considerare lo pseudo protocollo javascript: quando si stanno verificando gli URL. Niente di bello potrebbe venire da quello.

Problemi correlati