Vulnerabilities / Threats

10/27/2016
05:35 PM
Connect Directly
Twitter
LinkedIn
RSS
E-Mail
50%
50%

'AtomBombing' Microsoft Windows Via Code Injection

Researchers have identified a new way to inject malicious code into Windows systems -- and it doesn't exploit a vulnerability.

Security researchers at enSilo have demonstrated a new way for attackers to inject malicious code into practically any Windows system in a manner that is undetectable to existing anti-malware tools.

The method, which enSilo calls "AtomBombing," takes advantage of an underlying mechanism in the Windows operating system called atom tables. There is no way to patch against this code-injection method since it does not rely on any vulnerability, enSilo said in an alert this week.

"AtomBombing affects all Windows versions," Tal Liberman, an enSilo security researcher, said in the alert. "Since the issue cannot be fixed, there is no notion of a patch for this."

Code injection is a technique that attackers often use to execute malicious code by inserting it into a legitimate application or process. The Open Web Application Security Project (OWASP) describes it as an attack that is typically made possible because of a failure by the application or process to properly validate input and output data, like allowed characters, data format, and amount of expected data.

As Liberman noted, attackers often use code-injection when they want to bypass process level restrictions or for doing things like accessing encrypted passwords and man-in-the-middle attacks.

enSilo's AtomBombing attack involves the injection of malicious code into the so-called atom tables that are present in all versions of Windows. The tables allow Windows applications to store, share, and access certain data in the form of strings and associated identifiers.

In researching new code injection techniques for Windows, enSilo researchers discovered a way that attackers could use to write malicious code into an atom table and force applications using the table to retrieve and execute the code.

"This is the first code injection technique that is based on atom tables," Liberman told Dark Reading.

The technique leverages Windows atom tables that allow communication between processes. 

"The code then is not injected into the atom table, rather to a target process through the usage of atom tables," he says. "Once the code has been injected into a process, the attackers can do as they please as though the code was loaded legitimately by the target process."

The oldest version of Windows that uses atom tables is Windows 2000, so the issue dates back to 2000, Liberman says.

An attacker that gains access to a Windows machine can easily use AtomBombing to inject code to any process that has equal privileges. But it is not a privilege-escalation attack, meaning it cannot be used to inject an administrative account from a non-administrative one, he says.

Black Hat Europe 2016 is coming to London's Business Design Centre November 1 through 4. Click for information on the briefing schedule and to register.

 

"What we need to remember is that this method is useful not only during the initial infection," Liberman notes.

An attacker could use AtomBombing to inject code into Internet Explorer. Or to take a screenshot, he could employ AtomBombing to inject code into an explorer.exe. To steal passwords, an attacker could use the attack to inject code into chrome.exe, he says.

"This code-injection technique is not dependent on a vulnerability in Microsoft. Rather, it leverages legitimate building blocks of Windows," he says.

Chris Eng, vice president of research at application security firm Veracode, says this attack technique represents another example of how even well-designed applications can be tricked into performing actions not intended by their developers via code injection.

"New technologies are coming into the scene to actually watch what's happing inside the application and prevent the success of those sorts of attacks," Eng says.

Related Content:

 

Jai Vijayan is a seasoned technology reporter with over 20 years of experience in IT trade journalism. He was most recently a Senior Editor at Computerworld, where he covered information security and data privacy issues for the publication. Over the course of his 20-year ... View Full Bio

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Nexusfactor
50%
50%
Nexusfactor,
User Rank: Apprentice
11/7/2016 | 12:23:57 PM
Encryption Should Be Changed to Hash?
I'm in no way an expert on this, but in the article is says "like accessing encrypted passwords and man-in-the-middle attacks". Shouldn't it be "like accessing hashed passwords and man-in-the-middle attacks"?
Veterans Find New Roles in Enterprise Cybersecurity
Kelly Sheridan, Staff Editor, Dark Reading,  11/12/2018
Understanding Evil Twin AP Attacks and How to Prevent Them
Ryan Orsi, Director of Product Management for Wi-Fi at WatchGuard Technologies,  11/14/2018
7 Free (or Cheap) Ways to Increase Your Cybersecurity Knowledge
Curtis Franklin Jr., Senior Editor at Dark Reading,  11/15/2018
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Flash Poll
Online Malware and Threats: A Profile of Today's Security Posture
Online Malware and Threats: A Profile of Today's Security Posture
This report offers insight on how security professionals plan to invest in cybersecurity, and how they are prioritizing their resources. Find out what your peers have planned today!
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2018-19355
PUBLISHED: 2018-11-19
modules/orderfiles/ajax/upload.php in the Customer Files Upload addon 2018-08-01 for PrestaShop (1.5 through 1.7) allows remote attackers to execute arbitrary code by uploading a php file via modules/orderfiles/upload.php with auptype equal to product (for upload destinations under modules/productfi...
CVE-2008-7320
PUBLISHED: 2018-11-18
** DISPUTED ** GNOME Seahorse through 3.30 allows physically proximate attackers to read plaintext passwords by using the quickAllow dialog at an unattended workstation, if the keyring is unlocked. NOTE: this is disputed by a software maintainer because the behavior represents a design decision.
CVE-2018-19358
PUBLISHED: 2018-11-18
GNOME Keyring through 3.28.2 allows local users to retrieve login credentials via a Secret Service API call and the D-Bus interface if the keyring is unlocked, a similar issue to CVE-2008-7320. One perspective is that this occurs because available D-Bus protection mechanisms (involving the busconfig...
CVE-2018-19351
PUBLISHED: 2018-11-18
Jupyter Notebook before 5.7.1 allows XSS via an untrusted notebook because nbconvert responses are considered to have the same origin as the notebook server. In other words, nbconvert endpoints can execute JavaScript with access to the server API. In notebook/nbconvert/handlers.py, NbconvertFileHand...
CVE-2018-19352
PUBLISHED: 2018-11-18
Jupyter Notebook before 5.7.2 allows XSS via a crafted directory name because notebook/static/tree/js/notebooklist.js handles certain URLs unsafely.