And of course, you have not only device drivers, but also "drivers" for various other capabilities, some of which Linux doesn't have at all. Anti-malware tools started off in the 90s by using drivers to just hotpatch kernel functions, until Microsoft made official APIs for the desired capabilities and started putting defensive measures against code modification into the kernel.
Or are you implying that Linux is immune to this? Because it's not. This is equivalent to running a bash script downloaded from internet with root privileges and then writing that you pwned Linux. Remember, VBA IS!!! a programming language, having the same access as any other programming language (tied to your user).
Now if this guy would've ran this macro using a normal user and then the computer would've been pwned, now that's a privilege escalation.
Macros were another billion dollar mistake: https://www.zdnet.com/article/the-cost-of-ransomware-around-...
So even if we say that Office Macros were responsible for half of all ransomware infections, I'm not convinced the world economy doesn't benefit more than $20 billion per year from Office Macros. Many businesses basically run on macro-enhanced Excel spreadsheets.
It could retrieve work from a server to start long running processes that mine cryptocurrency. And scan every IP/port on your local network and use metasploit to send matching exploits to everything it sees. And then hijack a local process running under a different user with disk write permissions.
I would like to see macros restricted similar to Javascript in the browser. You can still run code and manipulate local data, but you don't get any direct access to the host OS. No disk access, no registry access, no way to create a process, only able to calculate things and change the document itself. And there must be no checkbox to disable these protections.
1- For network privileges you can restrict user to strict network location and nothing else.
2 - For scanning it also needs privileges that can be restricted using policies.
3 - Can't send anything if it doesn't have the correct privileges.
Who's stopping you to create your own version of VBA, release it and replace Microsoft Office suite with your own defined version as you said. And in the process of doing this you'll become billionaire too.
Until then, a correctly configured Windows system is immune to all of the above.
>Who's stopping you to create your own version of VBA, release it and replace Microsoft Office suite with your own defined version as you said.
I'm stopping myself because nobody would use it :)