Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

CVE-2019-19781: Exploit Scripts for Remote Code Execution Vulnerability in Citrix ADC and Gateway Available

Attackers are actively probing for vulnerable Citrix Application Delivery Controller (ADC) and Gateway hosts, while multiple proof-of-concept scripts are released, emphasizing the importance of mitigating this flaw immediately.

Background

On December 17, Citrix published a support article for CVE-2019-19781, a path traversal flaw in Citrix ADC and Citrix Gateway, both of which were formerly known as NetScaler ADC and NetScaler Gateway. Citrix cautioned that successful exploitation could result in an unauthenticated attacker gaining remote code execution. Citrix did not provide a patch for the vulnerability, but instead strongly urged customers to apply mitigation steps to thwart exploitation attempts. In the weeks since, attackers have begun scanning for vulnerable hosts for reconnaissance, with some reports suggesting attackers may have already exploited this vulnerability in the wild.

On January 3, SANS Internet Storm Center (ISC) tweeted that they had observed the “first exploit attempt” for this vulnerability in the wild.

According to Shodan, there are over 125,000 Citrix ADC or Gateway hosts publicly accessible. Nate Warfield from Microsoft’s Security Response Center found that every system he “spot checked” was vulnerable to CVE-2019-19781.

Analysis

The information Citrix provided in their mitigation steps offers clues into the vulnerable component of ADC and Gateway, referencing requests containing the “/vpns/” path. Because this is a path traversal flaw, identifying a vulnerable ADC or Gateway host requires confirming the presence of files located outside the original path requested.

On January 7, SANS ISC published a blog with more details about attackers scanning their honeypots and attempting to exploit the flaw. In the blog, they reference requests looking for a file called smb.conf in the “/vpns/cfg/” path. Requesting this file from a vulnerable Citrix ADC or Gateway will successfully return a configuration file. Systems that have applied Citrix’s recommended mitigations will return an HTTP 403 FORBIDDEN response.

On January 8, Craig Young, principal security researcher on Tripwire’s Vulnerabilities and Exposures Research Term (VERT), published a blog discussing how he achieved “arbitrary command execution” on a vulnerable ADC host. According to Young, there are Perl scripts located in the “/vpns/” path of the Citrix appliances, which can be targeted to allow for limited file writing on the vulnerable host.

On January 10, Rio Sherri, senior security consultant at MDSec, published a blog with additional insight into the limited file writing, highlighting code in the ‘csd’ function of the UserPrefs perl module that “builds a path from the NSC_USER HTTP header without any sanitisation” and will be triggered by any script that calls the function. Sherri found that nearly “all the scripts used this function,” but highlighted one script in particular, newbm.pl. This file accepts parameterized information and builds it into an array stored in an XML file on the vulnerable host. However, code execution is still not feasible at this point. That’s where the research from Young comes into play. He mentions an undocumented feature in the Perl Template Toolkit that “allowed arbitrary command execution when processing a crafted directive.” Sherri saw this as a “potential avenue for exploitation.” By inserting arbitrary code into the XML file, the only remaining step to get code execution would be to get the template engine to parse the file. Sherri achieved this by issuing a specially crafted HTTP request for the XML file stored on the vulnerable host.

All the security researchers opted not to share specific details about the vulnerability due to the fact that Citrix has not yet released a patch for this vulnerability. However, as of January 10, there are exploit scripts in circulation that can achieve code execution.

Proof of concept

Recently, there have been several repositories created on GitHub referencing CVE-2019-19781, including exploit scripts that could lead to code execution by a remote, unauthenticated attacker.

Solution

While Citrix has provided detailed mitigation steps, currently, there is no patch available despite the advisory being released nearly a month ago. With the availability of exploit scripts for this vulnerability, users are strongly encouraged to apply these mitigation steps as soon as possible. Additionally, we would recommend reviewing your logs for requests to determine if active scanning or exploitation may have already occurred. These requests may include paths, such as:

  • /vpns/
  • /vpn/../vpns/cfg/smb.conf
  • /vpn/../vpns/portal/scripts/newbm.pl

Identifying affected systems

Tenable Research has released a direct check plugin (ID 132752) to identify vulnerable assets in addition to the our version check plugin (ID 132397), which can be found here. Note that the version check plugin (ID 132397) requires enabling 'paranoid mode'.

Get more information

Join Tenable's Security Response Team on the Tenable Community.

Learn more about Tenable, the first Cyber Exposure platform for holistic management of your modern attack surface.

Get a free 30-day trial of Tenable.io Vulnerability Management.

Subscribe to the Tenable Blog

Subscribe
Try for Free Buy Now

Try Tenable.io

FREE FOR 30 DAYS

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Sign up now.

Buy Tenable.io

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

65 assets

$2,275

Buy Now

Try for Free Buy Now

Try Nessus Professional Free

FREE FOR 7 DAYS

Nessus® is the most comprehensive vulnerability scanner on the market today. Nessus Professional will help automate the vulnerability scanning process, save time in your compliance cycles and allow you to engage your IT team.

Buy Nessus Professional

Nessus® is the most comprehensive vulnerability scanner on the market today. Nessus Professional will help automate the vulnerability scanning process, save time in your compliance cycles and allow you to engage your IT team.

Buy a multi-year license and save. Add Advanced Support for access to phone, email, community and chat support 24 hours a day, 365 days a year. Full details here.

Try for Free Buy Now

Try Tenable.io Web Application Scanning

FREE FOR 30 DAYS

Enjoy full access to our latest web application scanning offering designed for modern applications as part of the Tenable.io platform. Safely scan your entire online portfolio for vulnerabilities with a high degree of accuracy without heavy manual effort or disruption to critical web applications. Sign up now.

Buy Tenable.io Web Application Scanning

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

5 FQDNs

$3,578

Buy Now

Try for Free Contact Sales

Try Tenable.io Container Security

FREE FOR 30 DAYS

Enjoy full access to the only container security offering integrated into a vulnerability management platform. Monitor container images for vulnerabilities, malware and policy violations. Integrate with continuous integration and continuous deployment (CI/CD) systems to support DevOps practices, strengthen security and support enterprise policy compliance.

Buy Tenable.io Container Security

Tenable.io Container Security seamlessly and securely enables DevOps processes by providing visibility into the security of container images – including vulnerabilities, malware and policy violations – through integration with the build process.

Learn More about Industrial Security

Get a Demo of Tenable.sc

Please fill out the form below with your contact information and a sales representative will contact you shortly to schedule a demo. You may also include a short comment (limited to 255 characters). Please note that fields with asterisks (*) are mandatory.

Try for Free Contact Sales

Try Tenable Lumin

FREE FOR 30 DAYS

Visualize and explore your Cyber Exposure, track risk reduction over time and benchmark against your peers with Tenable Lumin.

Buy Tenable Lumin

Contact a Sales Representative to see how Lumin can help you gain insight across your entire organization and manage cyber risk.