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.


04:00 PM
Connect Directly

Securing OS X: Apple, Security Vendors Need To Up Their Game

To date, OS X malware is pretty lame, but it's easy to write better malware to bypass current defenses, security researcher Patrick Wardle told a Black Hat audience last week.

BLACK HAT USA -- Las Vegas -- The current class of malware designed to infect Apple’s OS X operating system, “while sufficient, is inelegant, amateur, and trivial to detect and prevent,” according to Patrick Wardle, director of research and development with security firm Synack.

The problem is Apple and third party security companies are using the existing OS X malware to validate their tools. Yet, it is very easy to write even better malware to bypass current defenses for OS-X-based Mac computers, Wardle said. And, if he can do it, so can nation-states or malicious attackers.

So Wardle used his presentation, “Writing Bad @$$ Malware for OS X,” at the Black Hat conference last week as a wake-up call and a forum to demonstrate how to write better malware and to present some free security tools that can help prevent more advanced malware infections.

Mac computers are prevalent in the home and enterprise. In March, Apple officials reported that Mac notebook sales have grown 21 percent over the last year, while total industry sales have fallen.  Yet, Apple has claimed that Mac isn’t susceptible to the thousands of viruses plaguing Windows-based computers, Wardle noted.

In fact, the ‘first’ virus, Elk Cloner, infected Apple II computers. Over the last five years, 50 new OS X malware families have emerged. And, in 2014, there were nearly 1,000 unique attacks on Mac computers, according to Kaspersky Labs.

Using several recent OS X malware as examples -- OSX/XSLCMD, OSX/WIRELURKER (an iOS infector via USB) and OSX/CRISIS – Wardle drew some general observations about the current state of OS X malware.

In terms of infection, most use Trojans, meaning they require user interaction.  Some use phishing, but the exploits they deliver are older or already patched.  “So, security conscious users who keep their computers updated and email, probably will be fine,” Wardle said.

In terms of persistence, the malware use well-known techniques. The majority employ launch items that are easy to uncover, detect and prevent.  In terms of self-defense, there is minimal obfuscation and the malware is easy to detect and remove. From a stealth perspective, most 'hide' in plain sight and are stand-alone executables.   

“Features is one area that current OS X malware is sufficient, it gets the job done,” Wardle said. “But if you look closer at how these features are implemented, a lot of times it’s done in an amateur, inelegant way.” Finally, the malware does not have the ability to bypass personal firewalls and anti-virus software.

“The grade I would like to give current OS X malware is a C+.  It is sufficient, but inelegant, amateur, and trivial to detect and prevent,” Wardle said.  “So, my goal is to spur discussions to make better security tools so we can ultimately secure our Macs.

Apple has introduced security enhancements to thwart malware such as XProtect, a built-in anti-virus solution; Gatekeeper, which verifies downloaded software; sandboxing, which prevents Mac Store applications from accessing OS-level components; and signed-code requirements, which only allows signed kernel extensions to be loaded. 

Wardle demonstrated how many of these capabilities, although steps in the right direction, could be circumvented. For example, binary infection is an old school, but colorful attack mechanism, which is stealthy and hard to remove. Here an attacker would inject viral code into OS X binaries, effectively shutting down any other processes or files from running in the file system. 

Load time process injection could also be launched on the web browser.  Every time a browser is executed, the malicious code will also execute within a trusted context of the browser.  If a personal firewall is monitoring for untrusted connections it is going to trust the browser. The malware will not be detected because it is part of a trusted browser.

Wardle noted that the OS X loader, which validates the digital signature of applications in the binary, could block this attack. But there are ways to work around it. The loader looks for a signature block within the binary. If it is there, it validates it. But unlike iOS, OS X allows unsigned applications to execute. So the signature block can be pulled out and the malware can “infect away,” Wardle noted.

Wardle also showed ways malware can attack dynamic libraries in OS X to allow attackers to gain persistence on vulnerable systems, perform process injection and bypass security features such as Gatekeeper.

He also shared some of the tools he has written that will help protect Macs.  KnockKnock detects what’s persistence on the Mac. It can detect launch items, kernel extension, and malware. The only limitation is it is reactive; you have to manually run it.  So, he wrote a real-time detection tool called BlockBlock.   

Another tool, TaskExplorer, looks for all running tasks and processes. “You can write filters that say show all Apple apps running or unsigned code,” he said.

Hopefully, Wardle’s attempts to show how easily more lethal malware can be written for OS X will convince Apple to up its game and security vendors to improve their products, he said.

Rutrell Yasin has more than 30 years of experience writing about the application of information technology in business and government. View Full Bio

Recommended Reading:

Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
User Rank: Apprentice
8/26/2015 | 8:51:19 AM
Re: OS X protection vendor
On a mac, Most of the malware is installed by people who have no clue of what they're installing, especially those very well designed fake "websites" that look like a mac os X alert dialog box... It all starts with educating people on how to not fall in those dirty tricks...
User Rank: Apprentice
8/14/2015 | 7:23:54 PM
OS X protection vendor
There is a Boston based vendor called Confer that is doing a great job in detecting and preventing new unknow attacks on not only OS X but all endpoints. Anyone with an issue in this area should check them out.
7 Old IT Things Every New InfoSec Pro Should Know
Joan Goodchild, Staff Editor,  4/20/2021
Cloud-Native Businesses Struggle With Security
Robert Lemos, Contributing Writer,  5/6/2021
Defending Against Web Scraping Attacks
Rob Simon, Principal Security Consultant at TrustedSec,  5/7/2021
Register for Dark Reading Newsletters
White Papers
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
How Enterprises are Developing Secure Applications
How Enterprises are Developing Secure Applications
Recent breaches of third-party apps are driving many organizations to think harder about the security of their off-the-shelf software as they continue to move left in secure software development practices.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
PUBLISHED: 2021-05-14
The Linux kernel before 5.11.14 has a use-after-free in cipso_v4_genopt in net/ipv4/cipso_ipv4.c because the CIPSO and CALIPSO refcounting for the DOI definitions is mishandled, aka CID-ad5d07f4a9cd. This leads to writing an arbitrary value.
PUBLISHED: 2021-05-14
In the Linux kernel before 5.12.4, net/bluetooth/hci_event.c has a use-after-free when destroying an hci_chan, aka CID-5c4c8c954409. This leads to writing an arbitrary value.
PUBLISHED: 2021-05-14
The block subsystem in the Linux kernel before 5.2 has a use-after-free that can lead to arbitrary code execution in the kernel context and privilege escalation, aka CID-c3e2219216c9. This is related to blk_mq_free_rqs and blk_cleanup_queue.
PUBLISHED: 2021-05-14
A heap buffer overflow read was discovered in upx 4.0.0, because the check in p_lx_elf.cpp is not perfect.
PUBLISHED: 2021-05-14
A Zip Slip vulnerability was found in the oc binary in openshift-clients where an arbitrary file write is achieved by using a specially crafted raw container image (.tar file) which contains symbolic links. The vulnerability is limited to the command `oc image extract`. If a symbolic link is first c...