Discussion:
[FD] Yahoo! Bug Bounty #29 YM - Filter Bypass & Persistent Web Vulnerability
Vulnerability Lab
2014-07-10 12:48:12 UTC
Permalink
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 (***@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-***@public.gmane.org - research-***@public.gmane.org - admin-sRlC7LJHFRmvt2SHZzvQTwC/***@public.gmane.org
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-***@public.gmane.org or research-***@public.gmane.org) to get a permission.

Copyright © 2014 | Vulnerability Laboratory [Evolution Security]
--
VULNERABILITY LABORATORY RESEARCH TEAM
DOMAIN: www.vulnerability-lab.com
CONTACT: research-***@public.gmane.org
Loading...