w3school - usando title html




Como escapar corretamente citações dentro de atributos html? (4)

Não há como escapar de citações no valor de um texto de entrada ... mas você pode usar javascript (ou jquery):

<input type="input" name="myinput" id="myinput" value="" />
<script>document.getElementById("myinput").value="This input has a [\"]";</script>

Eu tenho um suspenso em uma página da web que está quebrando quando a cadeia de valor contém uma citação.

O valor é "asd mas no DOM sempre aparece como uma string vazia.

Eu tentei de todas as maneiras que eu sei para escapar da seqüência corretamente, mas sem sucesso.

<option value=""asd">test</option>
<option value="\"asd">test</option>
<option value="&quot;asd">test</option>
<option value="&#34;asd">test</option>

Alguma idéia de como processar isso na página para que a mensagem de postagem contenha o valor correto?


Outra opção é substituir aspas duplas por aspas simples se você não se importar com o que quer que seja. Mas eu não menciono este aqui:

<option value='"asd'>test</option>

Eu menciono este aqui:

<option value="'asd">test</option>

No meu caso, usei essa solução.



Você só deve permitir dados não confiáveis ​​em uma lista branca de bons atributos como: align, alink, alt, bgcolor, borda, cellpadding, cellspacing, classe, cor, colspan, colspan, coords, dir, face, altura, hspace, ismap, lang margem, largura de margem, múltiplo, nohref, noresize, noshade, nowrap, ref, rel, rev, linhas, rowspan, rolagem, forma, span, sumário, tabindex, título, usemap, valign, valor, vlink, vspace, largura

Você realmente deseja manter dados não confiáveis ​​de manipuladores de javascript, bem como atributos id ou name (eles podem destruir outros elementos no DOM).

Além disso, se você estiver colocando dados não confiáveis ​​em um atributo SRC ou HREF, então é realmente um URL não confiável, portanto, você deve validar o URL, certifique-se de que NÃO seja um javascript: URL e, em seguida, codificar a entidade HTML.

Mais detalhes sobre tudo aqui: https://www.owasp.org/index.php/Abridged_XSS_Prevention_Cheat_Sheet







escaping