[VIM] Lifetype "XSS" issue might be file inclusion?
George A. Theall
theall at tenablesecurity.com
Mon Apr 17 22:31:07 EDT 2006
> Lifetype has source available, but a grep-style check didn't find
> proof right away.
>
> - op paramater is "Template" which suggests use of templates, which
> are frequently files...
>
> - attacker uses XSS manipulation in a Template op
>
> - and even with the XSS manipulation, you get full path disclosure
>
>
> So - this could be an application-controlled XSS/full path disclosure
> ("hey, I couldn't find the template using this filename: [XYZ]") or
> maybe it's a PHP-level inclusion/path traversal error by actually
> trying to access the file and failing.
Here's what I see (minus HTML formatting) when I run an exploit against
1.0.3:
---- snip, snip, snip ----
Exception message: Smarty error: unable to read resource:
"standard/[XSS_here].template"
Error code: 512
-- Backtrace --
/var/www/localhost/htdocs/lifetype/class/template/smarty/Smarty.class.php(1108):
trigger_error
/var/www/localhost/htdocs/lifetype/class/template/smarty/Smarty.class.php(1604):
cachedtemplate.trigger_error
/var/www/localhost/htdocs/lifetype/class/template/smarty/Smarty.class.php(1433):
cachedtemplate._fetch_resource_info
/var/www/localhost/htdocs/lifetype/class/template/smarty/Smarty.class.php(1279):
cachedtemplate._compile_resource
/var/www/localhost/htdocs/lifetype/class/template/cachedtemplate.class.php(48):
smarty.fetch
/var/www/localhost/htdocs/lifetype/class/view/smartyview.class.php(207):
cachedtemplate.fetch
/var/www/localhost/htdocs/lifetype/class/view/blogview.class.php(224):
smartyview.render
/var/www/localhost/htdocs/lifetype/class/controller/controller.class.php(329):
templateview.render
/var/www/localhost/htdocs/lifetype/index.php(42): blogcontroller.process
---- snip, snip, snip ----
A comment in class/template/smarty/Smarty.class.php suggests it's
slightly modified version.
I tried passing in a couple of directory traversal sequences, but Smarty
seems to cache files locally and uses its own name so directory
traversal sequences are ignored.
George
--
theall at tenablesecurity.com
More information about the VIM
mailing list