Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Mobile Security

10/30/2019
11:50 AM
Larry Loeb
Larry Loeb
Larry Loeb
50%
50%

Xhelper Will Be Back Whether You Want It or Not

Researcher says that this Trojan dropper variant of the original Android malware has infected more than 45,000 Android devices over the last six months.

The enterprise's adoption of liberal BYOD policies over the years has led it to the point where the operating system of some connected devices can serve as an attack vector. Android, for example, has some inherent flaws that are just being starting to be exploited by threat actors in this way.

Xhelper is a Trojan dropper variant of the original Android malware that was first seen in March 2019. Mary Ying Tee of Symantec issued a report on it that avers it will reinstall itself after it has been removed. Further, it comes back following a factory reset.

The researcher says that Xhelper has infected more than 45,000 Android devices over the last six months. In the past month alone, there was an average of 131 devices infected each day, and an average of 2,400 devices persistently infected throughout the month. It’s geospecic in what it aims for, going after devices in the US, India and Russia.

This morbid persistence has been evident since the first version of it that was detected. Reddit conversations between users during the first occurrence point out that killing this little bugger is hard and that it may be resurrected by over-the-air updates which could wittingly or unwittingly be spreading the malware code.

Xhelper is not an app, it is an application component that takes actions. Being of this form makes it easier to be stealthy in the actions that it takes. The device’s application launcher won’t show that it is present. The report says that, “Xhelper can’t be launched manually since there is no app icon visible on the launcher. Instead, the malicious app is launched by external events, such as when the compromised device is connected to or disconnected from a power supply, the device is rebooted, or an app is installed or uninstalled.”

Once activated, it decrypts to memory the malicious payload that is embedded in its package. The payload will connect to the attacker’s command and control (C&C) server and wait for a command to download further malware payloads. SSL certificate pinning is used for all communication between the victim’s device and the C&C server, increasing the stealth of the communication.

Xhelper’s functionality has expanded drastically in recent times, according to Symantec. They say that they “strongly believe that the malware’s source code is still a work in progress.” The researchers have seen Xhelper-containing apps installed more frequently on certain phone brands, which leads them to believe that the attackers may be focusing on specific brands. However, they believe it to be unlikely that Xhelper comes preinstalled on devices given that these apps don’t have any indication of being system apps in origin.

Xhelper is a nasty Trojan platform that has seemingly not yet hit its stride where functionality is concerned. It deserves serious attention from those dealing with Android devices in a network.

— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
COVID-19: Latest Security News & Commentary
Dark Reading Staff 9/17/2020
Cybersecurity Bounces Back, but Talent Still Absent
Simone Petrella, Chief Executive Officer, CyberVista,  9/16/2020
Meet the Computer Scientist Who Helped Push for Paper Ballots
Kelly Jackson Higgins, Executive Editor at Dark Reading,  9/16/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Special Report: Computing's New Normal
This special report examines how IT security organizations have adapted to the "new normal" of computing and what the long-term effects will be. Read it and get a unique set of perspectives on issues ranging from new threats & vulnerabilities as a result of remote working to how enterprise security strategy will be affected long term.
Flash Poll
How IT Security Organizations are Attacking the Cybersecurity Problem
How IT Security Organizations are Attacking the Cybersecurity Problem
The COVID-19 pandemic turned the world -- and enterprise computing -- on end. Here's a look at how cybersecurity teams are retrenching their defense strategies, rebuilding their teams, and selecting new technologies to stop the oncoming rise of online attacks.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-25789
PUBLISHED: 2020-09-19
An issue was discovered in Tiny Tiny RSS (aka tt-rss) before 2020-09-16. The cached_url feature mishandles JavaScript inside an SVG document.
CVE-2020-25790
PUBLISHED: 2020-09-19
** DISPUTED ** Typesetter CMS 5.x through 5.1 allows admins to upload and execute arbitrary PHP code via a .php file inside a ZIP archive. NOTE: the vendor disputes the significance of this report because "admins are considered trustworthy"; however, the behavior "contradicts our secu...
CVE-2020-25791
PUBLISHED: 2020-09-19
An issue was discovered in the sized-chunks crate through 0.6.2 for Rust. In the Chunk implementation, the array size is not checked when constructed with unit().
CVE-2020-25792
PUBLISHED: 2020-09-19
An issue was discovered in the sized-chunks crate through 0.6.2 for Rust. In the Chunk implementation, the array size is not checked when constructed with pair().
CVE-2020-25793
PUBLISHED: 2020-09-19
An issue was discovered in the sized-chunks crate through 0.6.2 for Rust. In the Chunk implementation, the array size is not checked when constructed with From<InlineArray<A, T>>.