SQL Injection y archivo peligroso en Demokratian


Demokratian_logo

Demokratian es una aplicación web para realizar votaciones de forma sencilla y segura. Es software libre y puede ser utilizada sin mucho nivel técnico. Está escrita en PHP y que utiliza una base de datos MySQL.

Por casualidades encontré el software demokratian en unas votaciones en las que participé. Al participar me entró la curiosidad y realizando algunas pruebas encontré estas 2 vulnerabildades.

Hay que decir que el desarrollador, al contactar con el, arreglo el bug bastante rápido.

Info del Software

Vulnerabilidades

Bien, aquí están dos los vulnerabilidades que encontré y que fueron reportadas y solucionadas por el desarrollador Carlos Salgado.

SQL Injection

Como podemos ver la vulnerabilidad es bastante grave. Ya que es posible descargar los datos de los votantes. La vulnerabilidad tiene parche y es posible aplicarlo descargando la versión master o aplicando la siguiente modificación en el código:

basicos_php/genera_select.php

#$id_provincia = fn_filtro($con, $_GET['id_provincia']);
$id_provincia = fn_filtro_numerico($con, $_GET['id_provincia']);

Broken Authentication

Esta vulnerabilidad se debe a que los administradores de sistemas se dejan el fichero después de la instalación y es posible hacer un usuario con rol de administrador de forma transparente y ganando control total sobre la aplicación. En las nuevas versiones este fichero es borrado una vez se ha instalada la aplicación.