ColdFusion haciendo ESAPI OWASP a través de Java

votos
2

Soy tener algún código de ColdFusion de edad. Fue escrito originalmente para CF9, pero ahora se está ejecutando en CF 2016.

Application.cfc

  local.esapi = createObject(java, org.owasp.esapi.ESAPI);
  application.esapiEncoder = local.esapi.encoder()

Mucho más tarde

página normal

  form.Reason = application.esapiEncoder.encodeForHtml(form.Reason);

Estoy pensando en sustituirla por

  form.Reason = encodeForHTML(form.Reason);

Hacer estas funcionan de la misma?

Publicado el 07/11/2018 a las 22:40
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
3

Sí, las encodeForX()funciones utilizan ESAPI de OWASP detrás de las escenas. encodeForHTML()es CF10 + y tiene un canonicalizeargumento, que toma la entrada a su factor más bajo. CF2016 añade un encodeForargumento a una cfoutputetiqueta para la salida que hace similar. También existe la canonicalize()función que se generará un error que se puede tomar. Eso es útil para ver si alguien está tratando de tirar entradas nefastos en su forma o en el sitio. No puedo pensar en una razón legítima para la doble o múltiple que codifica una entrada, y yo interpretaría como un ataque. El argumento en elencodeForX()función de lo tomará a su evaluación de base, pero no generará un error y simplemente devuelve la salida resultante. En lo personal, no estoy seguro de que hay mucho de una manera accidental a pasar un valor que sería recogido por canónicos, y me gustaría simplemente en lugar de que el intento coger y patear ese usuario fuera de mi sitio web.

https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-eg/encodeforhtml.html

https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-cd/Canonicalize.html

https://www.owasp.org/index.php/Category:Encoding

Respondida el 08/11/2018 a las 05:35
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more