Cómo probar mi sitio web para la vulnerabilidad YAML de los rieles

1

Estoy bastante desconcertado por cómo probar mi aplicación Rails para la vulnerabilidad YAML

primero, actualicé a los últimos rieles 3.2.11, y probé this

Me dio not likely to be vulnerable or URIPATH must be set lo que debería ser razonable ya que actualicé a los últimos carriles.

Pero revisé otra aplicación de rieles que abandoné hace mucho tiempo, que sé que no está parcheada. Me dieron el mismo resultado. Tenga en cuenta que mis dos aplicaciones se ejecutan en heroku.

¿Cuál es la diferencia entre RHOSTS y VHOST y URI? ¿Debe RPORT ser el puerto http o el puerto que ejecuta el servidor web?

    
pregunta Nick Ginanto 02.02.2013 - 09:31
fuente

2 respuestas

2

Perdón por una breve respuesta, pero estoy seguro de que otros lo completarán eventualmente.

RPORT probablemente significa el puerto en el que se está ejecutando el servidor web.

Todavía no he usado metasploit para esto, a menos que Tinfoil Security use el mismo concepto, vea: enlace

-k0nsl

    
respondido por el k0nsl 02.02.2013 - 13:03
fuente
2

Descargo de responsabilidad: soy uno de los desarrolladores de Tinfoil Security. Tenemos un control rápido y gratuito en enlace .

El control de Tinfoil se basó en la sonda original de Metasploit. Tengo curiosidad por saber por qué nos volvimos vulnerables cuando Metasploit no lo hizo; no dude en enviarnos un correo electrónico a [email protected] o visítenos en enlace y estaremos encantados de investigarlo. Dicho esto, hemos tenido casos de personas que han actualizado Rails pero aún tienen un middleware vulnerable que aún deserializa las cargas útiles de manera inadecuada, por lo que aún es importante verificar manualmente y estar absolutamente seguro. En Rails 3.2.11 esto se indica mediante una excepción Hash::DisallowedType que se está generando.

Si sus registros incluyen parámetros (comportamiento predeterminado), puede usar eso para ver si las cargas útiles se están deserializando de forma insegura. Parameters: {"tinfoil_probe"=>1970-01-01 00:00:00 +0000} indica que se ha creado una instancia del objeto Time a través del YAML. Psych::SyntaxError ((<unknown>): control characters are not allowed at line 1 column 1) indica que el marco intentó deserializar el YAML pero estaba mal formado, lo que es un indicador de que el marco todavía es vulnerable.

    
respondido por el Ben 05.02.2013 - 03:34
fuente

Lea otras preguntas en las etiquetas