Lucene search
+L

PayPal Inc GP+ Cross Site Scripting

🗓️ 06 Oct 2014 00:00:00Reported by Benjamin Kunz MejriType 
packetstorm
 packetstorm
🔗 packetstormsecurity.com👁 55 Views

PayPal Inc GP+ Persistent XSS Vulnerabilit

Code
`Document Title:  
===============  
PayPal Inc Bug Bounty #53 - Multiple Persistent Vulnerabilities  
  
  
References (Source):  
====================  
http://www.vulnerability-lab.com/get_content.php?id=835  
  
  
Release Date:  
=============  
2014-09-29  
  
  
Vulnerability Laboratory ID (VL-ID):  
====================================  
835  
  
  
Common Vulnerability Scoring System:  
====================================  
4.3  
  
  
Product & Service Introduction:  
===============================  
PayPal is a global e-commerce business allowing payments and money transfers to be made through the Internet. Online money   
transfers serve as electronic alternatives to paying with traditional paper methods, such as checks and money orders. Originally,   
a PayPal account could be funded with an electronic debit from a bank account or by a credit card at the payer s choice. But some   
time in 2010 or early 2011, PayPal began to require a verified bank account after the account holder exceeded a predetermined   
spending limit. After that point, PayPal will attempt to take funds for a purchase from funding sources according to a specified   
funding hierarchy. If you set one of the funding sources as Primary, it will default to that, within that level of the hierarchy   
(for example, if your credit card ending in 4567 is set as the Primary over 1234, it will still attempt to pay money out of your   
PayPal balance, before it attempts to charge your credit card). The funding hierarchy is a balance in the PayPal account; a   
PayPal credit account, PayPal Extras, PayPal SmartConnect, PayPal Extras Master Card or Bill Me Later (if selected as primary   
funding source) (It can bypass the Balance); a verified bank account; other funding sources, such as non-PayPal credit cards.  
The recipient of a PayPal transfer can either request a check from PayPal, establish their own PayPal deposit account or request   
a transfer to their bank account.  
  
PayPal is an acquirer, performing payment processing for online vendors, auction sites, and other commercial users, for which it   
charges a fee. It may also charge a fee for receiving money, proportional to the amount received. The fees depend on the currency   
used, the payment option used, the country of the sender, the country of the recipient, the amount sent and the recipient s account   
type. In addition, eBay purchases made by credit card through PayPal may incur extra fees if the buyer and seller use different currencies.  
  
On October 3, 2002, PayPal became a wholly owned subsidiary of eBay. Its corporate headquarters are in San Jose, California, United   
States at eBay s North First Street satellite office campus. The company also has significant operations in Omaha, Nebraska, Scottsdale,   
Arizona, and Austin, Texas, in the United States, Chennai, Dublin, Kleinmachnow (near Berlin) and Tel Aviv. As of July 2007, across   
Europe, PayPal also operates as a Luxembourg-based bank.  
  
On March 17, 2010, PayPal entered into an agreement with China UnionPay (CUP), China s bankcard association, to allow Chinese consumers   
to use PayPal to shop online.PayPal is planning to expand its workforce in Asia to 2,000 by the end of the year 2010.  
Between December 4ñ9, 2010, PayPal services were attacked in a series of denial-of-service attacks organized by Anonymous in retaliation   
for PayPal s decision to freeze the account of WikiLeaks citing terms of use violations over the publication of leaked US diplomatic cables.  
  
(Copy of the Homepage: www.paypal.com) [http://en.wikipedia.org/wiki/PayPal]  
  
  
Abstract Advisory Information:  
==============================  
The Vulnerability Laboratory Research Team discovered two persistent input validation web vulnerabilities in the official PayPal Inc GP+ online service web-application.  
  
  
Vulnerability Disclosure Timeline:  
==================================  
2014-09-29: Public Disclosure (Vulnerability Laboratory)  
  
  
Discovery Status:  
=================  
Published  
  
  
Affected Product(s):  
====================  
PayPal Inc  
Product: GP+ - Application Service 2013 Q1  
  
  
Exploitation Technique:  
=======================  
Remote  
  
  
Severity Level:  
===============  
Medium  
  
  
Technical Details & Description:  
================================  
Multiple persistent input validation web vulnerabilities has been discovered in the official PayPal Inc GP+ online service web-application.  
The vulnerability allows an attacker to inject own malicious script codes to the application side (persistent) of the vulnerable module.  
  
The persistent input validation vulnerabilities are located `New page title Add` and `Create a new META-description` input values of the   
`Improvement-Plan` module. Remote attacker are able to inject own persistent script codes by generating the search-engine-content list.  
The attack vector is persistent on the application-side of the vulnerable service and the request method to inject the code is POST.  
  
To exploit the persistent bugs the attacker needs to bypass with 2 different ways the validation of the meta tag and page titel input fields.  
  
Page Title Input Bypass  
In the first example method the attacker can use %20``> to split the request and closes the tag with < >. All after the closed   
ending tag will execute the code. At the end the example should look like ... %20``>+[Random Context]+< >[PERSISTENT INJECTED SCRIPT CODE!]  
  
Meta Tag Bypass  
In the second example method the attacker needs to match the meta tag word validation by including any random word. After the random   
word he includes ><> to close the mask, then he opens with ``< a new (note: meta tags splitted with ,) and can execute after the ``< ``>   
his own script code. At the end the example should look like ... [Random Word as TAG], ><>``< ``>< ``><[PERSISTENT INJECTED SCRIPT CODE!]<  
  
The security risk of the persistent web vulnerability is estimated as medium with a cvss (common vulnerability scoring system) count of 4.3.   
Exploitation of the application-side web vulnerability requires a low privileged web-application user account but only low user interaction.  
Successful exploitation of the vulnerabilities result in persistent phishing mails, session hijacking, persistent external redirect to malicious   
sources and application-side manipulation of affected or connected module context.  
  
Request Method(s):  
[+] POST  
  
Vulnerable Service(s):  
[+] Paypal Inc - GP+  
  
Vulnerable Module(s):  
[+] Improvement-Plan > Create a new page title  
  
Vulnerable Parameter(s):  
[+] New page title Add (name)  
[+] Create a new META-description (tag)  
  
Affected Module(s):  
[+] Preview Improve Page - Listing  
[+] Meta Tag - Listing  
  
  
Proof of Concept (PoC):  
=======================  
The vulnerabilities can be exploited by remote attackers with low privileged application user account and low or medium   
required user interaction. For demonstration or reproduce ...  
  
PoC:  
%20">< >"<[PERSISTENT INJECTED SCRIPT CODE!]<  
... or  
PENTEST INJECTED SCRIPT CODE ><>"<">< "><[PERSISTENT INJECTED SCRIPT CODE!]<  
  
  
Review: Preview improve page - Listing  
  
Module: Create a new page title > New page title Add  
Affected: Preview improve page - Listing  
  
<div id="preview-seo-improvement-plan">  
<div id="search-engine-content">  
<a id="heading" href="#">a</a>  
<p>%20">%20">><<<[PERSISTENT INJECTED SCRIPT CODE!]) <</iframe></p>  
<a href="#">http://maja.com/impressum.php</a> - <span>in cache</span>  
</div></div>  
  
  
  
Review: Meta TAG - Listing  
  
Module: Create a new page title > Create a new META-description  
Affected: Meta TAG - Listing  
  
<div id="notifier">  
<p class="notifier-heading">Improve page <input id="page-number" name="page" value="0"> of 1</p>  
<p class="notifier-text">Each page should have unique title and META description. Create a title that describes   
in a few words what can be found on this page. The META description is used in the search results. Describe in 1   
or 2 short sentences what this page is about.</p></div>  
  
<div id="preview-seo-improvement-plan">  
<div id="search-engine-content">  
<a id="heading" href="#">MaJa - Ihr Partner in Fragen Webdesign, Webhosting, Webpromotion, Prasentationen...</a>  
<p>hello, merlin, [PENTEST INJECTED SCRIPT CODE!]+ben><>"<   
">><>"<</iframe></p>  
<a href="#">http://www.vulnerability-lab.com/[o_O]</a> - <span>in cache</span>  
</div></div>  
  
  
Reference(s):  
https://www.paypal-gpplus.com/en/dashboard/improvement-plan/2729702/step2/  
  
  
Solution - Fix & Patch:  
=======================  
The vulnerability can be patched by parsing the web context of the Create a new META-description and New page title Add input fields.  
Do not forget to seperate parse the vulnerable output listing of the vulnerable values to fix the issue.  
  
  
Security Risk:  
==============  
The security risk of the persistent input validation vulnerabilities and filter bypass method are estimated as medium. (CVSS 4.3)  
  
  
Credits & Authors:  
==================  
Vulnerability Laboratory [Research Team] - Benjamin Kunz Mejri ([email protected]) [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: [email protected] - [email protected] - [email protected]  
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   
([email protected] or [email protected]) to get a permission.  
  
Copyright © 2014 | Vulnerability Laboratory [Evolution Security]  
  
--   
VULNERABILITY LABORATORY RESEARCH TEAM  
DOMAIN: www.vulnerability-lab.com  
CONTACT: [email protected]  
  
`

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation