Trustwave SpiderLabs Uncovers Critical Cybersecurity Vulnerabilities Exposing Manufacturers to Costly Attacks. Learn More

Trustwave SpiderLabs Uncovers Critical Cybersecurity Vulnerabilities Exposing Manufacturers to Costly Attacks. Learn More

Managed Detection & Response

Eradicate cyberthreats with world-class intel and expertise

Managed Security Services

Expand your team’s capabilities and strengthen your security posture

Consulting & Professional Services

Tap into our global team of tenured cybersecurity specialists

Penetration Testing

Subscription- or project-based testing, delivered by global experts

Database Security

Get ahead of database risk, protect data and exceed compliance requirements

Email Security & Management

Catch email threats others miss with layered security & maximum control

Co-Managed SOC (SIEM)

Eliminate alert fatigue, focus your SecOps team, stop threats fast, and reduce cyber risk

Microsoft Exchange Server Attacks
Stay protected against emerging threats
Rapidly Secure New Environments
Security for rapid response situations
Securing the Cloud
Safely navigate and stay protected
Securing the IoT Landscape
Test, monitor and secure network objects
Why Trustwave
The Trustwave Approach
Awards and Accolades
Trustwave SpiderLabs Team
Trustwave Fusion Platform
SpiderLabs Fusion Center
Security Operations Centers
Technology Alliance Partners
Key alliances who align and support our ecosystem of security offerings
Trustwave PartnerOne Program
Join forces with Trustwave to protect against the most advance cybersecurity threats
SpiderLabs Blog

Kernel Buffer Overflow in Trusteer Rapport for MacOS

Trustwave recently reported a Kernel based vulnerability in a driver bundled along with IBM Trusteer Rapport for MacOS. The vulnerability is a signedness bug leading to a Kernel stack memory corruption issue in a call to memcpy. IBM Trusteer Rapport is security software advertised as an additional layer of security to anti-virus software. It is designed to protect confidential data, such as account credentials, from being stolen by malicious software (malware) and via phishing. Security issues in such software are of serious concern as the installation base of Trusteer Rapport is believed to be large given the backing of numerous US and EU financial institutions.

The Issue

The root cause of the issue is a signedness bug in validating the user-supplied number of elements provided by the user in the structure passed to the Kernel driver function via a call to an struct method exported from the Kernel driver with the IOService 'com_trusteer_rapportke_v2'. The code in question is shown below:

Screen Shot 2018-12-11 at 15.14.38

The validation at offset 0x23AE is later used in a signed-conditional mov instruction at offset 0x23B8, this comparison permits the user to provide a large unsigned value, for instance, -0xC, hence a negative signed value and thus by-pass this bounds check. The result is an integer overflow at offset 0x23C8 through the removal of the two most-significant bits resulting in a truncation permitting the user to specify a large user-definable length for the call to memcpy at offset 0x23D3.

The destination buffer happens to be situated in the data segment of the Kernel driver complicating exploitation, however, several structures are located within range facilitating several exploitation scenarios with which to obtain arbitrary code execution within the context of the Kernel and thus the successful compromise of the host.

Trustwave worked with IBM throughout the disclosure process. When IBM was unable to provide a patch during our 90-day disclosure policy, we extended to them an additional 30 days. Unfortunately, that was also not enough time to develop a patch, and we feel it's important to alert the public about this issue.

Although there is currently no patch, the risk of this vulnerability is slightly mitigated by requiring local access, so those affected are recommended to verify that only authorized users can log in to those systems. Security awareness training can also help prevent local malware or social engineering attacks. Finally, you may want to step up auditing of any affected systems for signs of infection.

Here is the full disclosure timeline:

08/15/2018 - Vulnerability disclosed to vendor
11/13/2018 - 90-day deadline passed
11/14/2018 - Provided vendor 30-day extension for fix
12/17/2018 - Vendor confirms no patch is available
12/20/2018 - Advisory published

Latest SpiderLabs Blogs

Trustwave SpiderLabs Report: LockBit 3.0 Ransomware Vs. the Manufacturing Sector

As the manufacturing sector continues its digital transformation, Operational Technology (OT), Industrial Control Systems (ICS), and Supervisory Control and Data Acquisition (SCADA) are becoming...

Read More

Overview of the Cyberwarfare used in Israel – Hamas War

On October 7, 2023, the Palestinian organization Hamas launched the biggest attack on Israel in years, resulting in numerous casualties and hostages taken. Israel responded with a large-scale ground...

Read More

The 2023 Retail Services Sector Threat Landscape: A Trustwave Threat Intelligence Briefing

The annual holiday shopping season is poised for a surge in spending, a fact well-known to retailers, consumers, and cybercriminals alike. The latter group, however, is poised to exploit any...

Read More