There's a new zero-day Microsoft Windows exploit in the wild by the name of AtomBomb, and Microsoft may not be able to fix it.
Ensilo security researchers have discovered a new zero-day exploit in Windows that attackers can make use of to inject and execute malicious code. The researches call the exploit AtomBombing because of its use of a Windows function called Atom Tables.
What's particularly interesting about the exploit is that it does not rely on security vulnerabilities in Windows components but native Windows functions. This means, according to the researchers, that Microsoft won't be able to patch the issue.
It is particularly worrying that the issue affects all versions of Windows, and that security programs that run on the system -- firewall or antivirus for instance -- won't stop the execution of the exploit.
The technique works in the following way on an abstract level:
- Malicious code needs to be executed on a Windows machine. A user might run malicious code for instance.
- This code is blocked usually by antivirus software or other security software or policies.
- In the case of AtomBombing, the malicious program writes the malicious code in an atom table (which is a legitimate function of Windows and won't be stopped therefore).
- It then uses legitimate processes via APC (Async Procedure Calls) , a web browser for instance, to retrieve the code from the table undetected by security software to execute it.
You can find an extremely detailed explanation of AtomBombing here. Time to run Windows only in VMs?
Source: https://www.helpnetsecurity.com/2016/10/28/code-injection-windows-atombombing/
(Score: 2, Insightful) by Anonymous Coward on Sunday October 30 2016, @05:04PM
This is just a local way to get from one process to another, without even gaining privilege. It's no worse than having a debug capability.
(Score: 1, Informative) by Anonymous Coward on Sunday October 30 2016, @05:13PM
...and a quite convoluted way of doing this.
Normally you use CreateRemoteThread paired with WriteProcessMemory or VirtualAllocEx to write your code directly into another process.
(Score: 2) by Username on Sunday October 30 2016, @10:11PM
Well, it is an easy and interesting way to get chrome to run code. I didn’t know people actually used atom, or actually thought about using atom other than for setting windows global hotkeys.
(Score: 1, Funny) by Anonymous Coward on Sunday October 30 2016, @05:25PM
But...but... it's called ATOMbombing... it must be a big deal! Years of being subjected to marketing and advertising has taught me that marketeers never lie and only tell me things that are true and of interest to me. Why would they lie to me about this being a big deal? </sarcasm>
(Score: 5, Interesting) by Anonymous Coward on Sunday October 30 2016, @06:18PM
Don't you know debuggers are illegal?
(Score: 1, Informative) by Anonymous Coward on Sunday October 30 2016, @08:29PM
source?
(Score: 1, Informative) by Anonymous Coward on Sunday October 30 2016, @08:48PM
I think it is Stallman's "The Right to Read", certainly reads like Stallman's writing.
(Score: 0) by Anonymous Coward on Sunday October 30 2016, @10:06PM
Right to read [gnu.org]
Richard Stallman, February 1997 issue of Communications of the ACM (Volume 40, Number 2)
(Score: 3, Informative) by NCommander on Monday October 31 2016, @05:12AM
While I personally disagree with rms on many points, I do think the worlds he outlined in Right to Read and such are disturbingly plausible in many ways. I just wish the FSF would stop shooting itself in the foot in many ways; the GPLv3 as a license is a disaster.
(specifically, I don't mind the concepts desired in the GPLv3 itself, however, its very difficult to read even being versed in software licensing and an above average legal understanding. The FSF could have gotten exactly the same effect with much clearer language. A layman can read the GPLv2 and completely understand it, not true of the GPLv3. For patent clauses, compare Apache 2.0 to GPLv3 and tell me which one actually is understandable on the first go, Furthermore, getting around the TiVozation requirements within the GPLv3 is relatively straightforward; virtualization can easily allow you to comply with the GPLv3 while running around the intent of the license.).
Still always moving