viernes, 20 de junio de 2014

Python vulnerability.- Reading Arbitrary Process Memory

Ayer, buscando librerías que me permitieran seguir con el script de ayer. Encontré una página llamada [HackerOne] dedicada a promocionar la colaboración entre Hackers y Programadores. Uno programador sube su creación a esta pagina pone unas clausulas para la divulgación de los fallos y lo deja a merced de los hackers que quieran darle fuerte y flojo. Si queréis mas información le dais al enlace anterior.


En esta pagina me he encontrado hoy una vulnerabilidad, ya resuelta, que afectaba a python 2.X como a la versión 3.X por un error en el modulo json  que quien haya jugado un poco con Python sabrá que es un formato de intercambio de datos ligero entre python y Json (Javascript Object Notation).

"Python 2 y 3 son susceptibles a la lectura de la memoria del proceso arbitrario por un usuario o adversario debido a un error en el módulo _json causada por insuficiente de los límites de cheking"

"Los únicos requisitos previos de este ataque es que el atacante es capaz de controlar o influir en los dos parámetros de la función scanstring por defecto: la cadena para ser decodificado y el índice."

"El error se debe a que el usuario pueda suministrar un valor de índice negativo. El valor de índice se utiliza a continuación directamente como un índice para una matriz en el código C; internamente la dirección de la matriz y su índice se añaden entre sí con el fin de producir la dirección del valor que se desea. Sin embargo, mediante el suministro de un valor de índice negativo y sumando esto a la dirección de la matriz, el valor de registro del procesador se envuelve alrededor y el valor calculado se apuntan a una posición en la memoria que no está dentro de los límites de la cadena de suministro, haciendo que la función para acceder a otras partes de la memoria del proceso."
 Si tenéis la misma curiosidad que yo y queréis indagar mas,  os dejo el reporte completo:
Sed Buenos con esto ;) 

No hay comentarios:

Publicar un comentario