Exploit-DB #29019
Description: Zikula CMS 1.3.5 - Multiple Vulnerabilities
Type: webapps
Platform: php
Date: 2013-10-17
Author: Vulnerability-Lab

Exploit:
Document Title:
===============
Zikula CMS v1.3.5 - Multiple Web Vulnerabilities


References (Source):
====================
http://www.vulnerability-lab.com/get_content.php?id=1114


Release Date:
=============
2013-10-16


Vulnerability Laboratory ID (VL-ID):
====================================
1114


Common Vulnerability Scoring System:
====================================
6.7


Product & Service Introduction:
===============================
Zikula is an open source MVC web application framework, released under the LGPLv3, that allows you to rapidly 
build websites for any application including all forms of content management. Zikula is fast and flexible and 
easily extendable via a system on plugins, themes and extensions.

No matter what your needs, Zikula can provide the solution. Whether it is a corporate presence with ecommerce, 
a simple blog or a community portal, Zikula can do it all. Best of all, its completely free. Our community forum 
provides you with the support and help you need free of charge.

(Copy of the Vendor Homepage: http://zikula.org/CMS/Zikula/ )


Abstract Advisory Information:
==============================
The Vulnerability Laboratory Research Team discovered multiple web vulnerabilities in the Zikula Content Management System v1.3.5 web-application.


Vulnerability Disclosure Timeline:
==================================
2013-10-16:    Public Disclosure (Vulnerability Laboratory)


Discovery Status:
=================
Published


Affected Product(s):
====================
PostNuke e.V.
Product: Zikula Content Management System - Web Application 1.3.5


Exploitation Technique:
=======================
Remote


Severity Level:
===============
High


Technical Details & Description:
================================
1.1
A persistent input validation web vulnerability is detected in the Zikula Content Management System v1.3.5 web-application.
The bug allows an attacker (remote) to implement/inject malicious own malicious persistent script codes (application side).

The persistent web vulnerability is located in the `User Information (Page)` &  `Profile Info (Page)` module. Remote attackers 
are able to change the regular real name in the profile info page to own malicious script codes. The script code execute occurs 
in the user profile info page of the public cms application.

Exploitation of the persistent web vulnerability requires low user interaction and a low privileged web-application user account 
Successful exploitation of the vulnerability can lead to persistent session hijacking (customers), account steal via persistent 
web attacks, persistent phishing or persistent module context manipulation.

Request Method(s):
				[+] [POST]

Vulnerable Module(s):
				[+] User Information (Page)

Vulnerable Parameter(s):
				[+] real name (z-formnote)

Affected Module(s):
				[+] Profile Info


1.2
A client-side POST injection web vulnerability is detected in the official Zikula Content Management System v1.3.5 web-application.
The non-persistent cross site web vulnerability allows an attacker to manipulate client side web application to browser GET method requests.

The client-side cross site web vulnerability is located in the `login` module of the web-application. Remote attackers can inject via POST 
request method own malicious script codes as authentication_info (users_login) value.

Exploitation of the vulnerability requires no privileged application user account but low or medium user interaction. Successful exploitation 
of the vulnerability results in session hijacking, client-side phishing, client-side external redirects or malware loads and client-side 
manipulation of the vulnerable module context.

Request Method(s):
				[+] [POST]

Vulnerable Module(s):
				[+] Login

Vulnerable Parameter(s):
				[+] users_login_login_id > authentication_info > username & password text



1.3
A client-side cross site scripting web vulnerability is detected in the Zikula Content Management System v1.3.5 web-application.
The non-persistent cross site scripting web vulnerability allows an attacker to manipulate client side web application GET method requests.

The first client-side cross site vulnerability is located in the `func` value of the index.php file. Remote attackers are able to inject own 
malicious script codes via vulnerable `func` parameter in client-side GET method requests. 

The second client-side cross site vulnerability is located in the display name to path value GET method request. Remote attackers are able 
to inject own malicious script codes as regular path. The script code execute occurs in the news display path. Attackers can change the 
regular path with script code to execute the client-side malicious context. 

Exploitation of the vulnerability requires no privileged application user account but low or medium user interaction. Successful exploitation 
of the vulnerability results in session hijacking, client-side phishing, client-side external redirects or malware loads and client-side 
manipulation of the vulnerable module context.

Request Method(s):
				[+] [GET]

Vulnerable Parameter(s):
				[+] display path
				[+] func


Proof of Concept (PoC):
=======================
1.1
The persistent input validation web vulnerability can be exploited by remote attackers with low privileged application user account 
and low user interaction. For demonstration or reproduce ...

Inject via Real Name
http://zikula.localhost:8080/en/profile/modify

Exploitation in Profile
http://zikula.localhost:8080/en/profile/view/[PROFILE NAME]


PoC: Personal Info - Profile (Users)

<div class="z-formrow">
<strong class="z-label">Real name:</strong>
<span class="z-formnote">>"<<>"<[PERSISTENT INJECTED SCRIPT CODE!]"> >"<<>"<[PERSISTENT INJECTED SCRIPT CODE!/a></span>
</div>
<div class="z-formrow">
<strong cla