Linux has five times more reported vulnerabilities than Microsoft. And yet it’s Windows bugs that are more often exploited in attacks before anyone manages to patch them. The Mac has the least malware of all three systems, and yet new backdoors targeting it grew by 67% in 2025. If that sounds like a contradiction, it’s because most “most secure operating system” rankings count the wrong things. 💥
Instead of another fan war, I gathered hard data from 2025 and 2026: how many vulnerabilities each system gets, how many of them are actually exploited in attacks, how much malware is written for it, how fast vendors patch, and how many people (and how much money) stand behind it all. Every number has a source and a year.
⚡ TL;DR (for the busy):
- Linux has the most CVEs (5,687 in 2025, the kernel alone 3,649), Microsoft 1,255, Apple 727 – but the Linux kernel assigns a CVE number to almost every fix, so this figure measures transparency, not how full of holes it is.
- Windows has the most actually exploited vulnerabilities: 39 new entries in the CISA KEV catalog in 2025 (Apple 9, Linux 7), 25 of the 90 zero-days of 2025 and 390 of the 1,748 entries in the entire KEV catalog (as of October 2026).
- Malware: about 70 million new samples are created for Windows every year, about 2 million for Linux, and a dozen or so thousand for macOS – but it’s on the Mac that backdoors grew by 67% in 2025, and on Linux/ESXi servers the hypervisor share of encryption incidents jumped from 3% to 25%.
- Patching speed: in the latest Project Zero comparison, Linux fixed reported bugs in 25 days on average, Apple in 69, Microsoft in 83. Meanwhile, a year after Windows 10 reached end of support, it still runs on 28% of Windows PCs, and only those who enrolled in Extended Security Updates (ESU) get patches.
- The new player: the AI agent. Claude Code, Codex or Gemini CLI increasingly run on all three systems with your permissions. Malware has already learned to use them, and in October 2026 one Reddit user’s Mac had been mining cryptocurrency for two months before it was spotted… by an AI agent. And in October Binance lost about $6.3 billion in an attack in which the criminals took over more computers through a company AI tool.
- People and money: Microsoft claims the equivalent of 34,000 engineers working on security and $20 million in bug bounties per year, Apple pays up to $2 million for a single bug, and CVEs for the Linux kernel are assigned by a team of… 3-4 people.
- Bottom line: no system wins by default. The winner is whoever knows where they’re being attacked and patches what is actually being attacked.
Before we compare: three things that break every ranking
Most “operating system security rankings” on the internet make the same mistake: they count raw numbers without context. So first, three caveats without which the rest of this post would be dishonest.
First, market share. A criminal is an entrepreneur too. They write malware where the customers are.
Operating system share on desktops and laptops, worldwide, September 2026
Source: StatCounter Global Stats, desktop worldwide, September 2026 (macOS = the sum of the “OS X” and “macOS” entries). StatCounter data fluctuates a lot from month to month, so treat it as an order of magnitude.
Second, Linux is not a “desktop” system. 4.5% on laptops, but the vast majority of servers, cloud, routers and edge devices. So we’re comparing a system where people click on attachments with a system that holds databases and is exposed to the internet 24/7. Different attack surfaces, different kinds of criminals.
Third, who counts and how. More on that in a moment, because it’s the biggest trap in this whole comparison.
Lesson #1: “Which system is the most secure?” is a question with no answer until you add: “against whom, in what role and in whose hands”. From here on I count honestly, but keep these three caveats in mind.
Round 1: who has the most vulnerabilities (CVEs)?
For the non-technical folks: CVE is a public, global catalog of vulnerabilities. Every disclosed bug gets its own number, so everyone is talking about the same flaw. 2025 set a record: 48,185 new ones.
So how does it look per vendor?
Number of CVEs published in 2025 – vendors
…and the operating systems themselves (single products)
Source: Jerry Gamblin, “2025 CVE Data Review” (NVD + CVE List V5 data, excluding rejected CVEs). Per-vendor numbers cover all products (for Microsoft also Office, Exchange, Azure; for Apple also iOS).
First instinct: “Linux has five times more holes than Windows, end of discussion”. And this is exactly where trap number three kicks in.
Why Linux “has” so many CVEs
In February 2024 the Linux kernel project became its own CNA, an organization that assigns CVE numbers to its own bugs. And it adopted a rule that Greg Kroah-Hartman (the stable branch maintainer) explains bluntly: in the kernel almost any bug can turn out to be a security bug, so every fix that might have such consequences gets a CVE number. The team would rather assign too many than too few. The result: in 2024 the kernel was issuing about 60 CVEs a week, in July 2026 it published 432 CVEs in about 30 hours, and in the preview of his talk at the September Kernel Recipes 2026 conference, Kroah-Hartman showed a chart indicating that the number of CVEs per kernel release grew from about 500 in the 6.x era to more than 1,500 at 7.2, and is approaching 2,000 – partly because the kernel code (more than 40 million lines) is now being combed through by AI tools. At the conference itself he already spoke of a pace of 33 CVEs per day.
Microsoft and Apple do the opposite: they assign CVEs only to what they consider a vulnerability, and many security fixes ship in cumulative updates without a separate number. Apple, for that matter, has been criticized for years for terse descriptions of what it actually patches.
On top of that, Linux is thousands of drivers for hardware you will never see. A good chunk of those 3,649 CVEs concern modules that aren’t even loaded on your server.
Lesson #2: The CVE count measures how closely a project looks at its own code and how honestly it talks about it, not how full of holes it is. If someone shows you a ranking of “the most vulnerable systems” built on CVEs alone, they’re showing you a transparency ranking. This matters for your company too: an auditor counting CVEs in a scanner report is counting the same thing.
Round 2: which vulnerabilities are actually attacked?
Since raw CVE counts are misleading, let’s look at a list that doesn’t lie: CISA KEV, a catalog maintained by the US agency listing vulnerabilities that are confirmed to be exploited in real attacks. And at Google Threat Intelligence Group’s annual review of zero-days, meaning vulnerabilities exploited in attacks before a patch existed.
What is actually attacked – 2025
Sources: Cyble – CISA KEV 2025 summary (245 new entries in the year); Google Threat Intelligence Group, “2025 Zero-Days in Review” (90 zero-days, including Google 11, Cisco 4, Fortinet 4); percentages calculated from Gamblin’s data. Microsoft, Apple and Linux counted as vendors with all their products.
And now the picture flips. Linux has the most CVEs, but only a tiny sliver of them make it onto the list of actually exploited ones. Microsoft has five times fewer CVEs, but the most actually attacked vulnerabilities – 39 new KEV entries in 2025, more than anyone else, and in the whole catalog (1,484 entries at the end of 2025) Microsoft products account for 350 entries, almost 24%. By mid-October 2026 the catalog already had 1,748 entries, 390 of them Microsoft products (Apple: 95, Google: 75, Linux kernel: 31). In 2026 alone, 264 entries were added – more than in all of 2025.
Same story with zero-days: of the 90 exploited in 2025, 25 affected Microsoft products, 11 Google, 8 Apple. Operating systems were the most attacked category – 24 zero-days in desktop systems and 15 in mobile ones.
To be fair once again: Microsoft is not just Windows. Those 39 entries include SharePoint, Exchange and Office. But Windows has its classics too: the CLFS driver, the MMC console, SMB. And one more thing these lists won’t show you: in October 2025 CISA confirmed that ransomware groups are exploiting the Linux kernel vulnerability CVE-2024-1086. Seven KEV entries isn’t much, but each one hits the servers where you keep everything.
Lesson #3: From an attacker’s point of view, what matters is not how many holes a system has, but how many of them are worth exploiting. Windows sits on 76% of the world’s desks, so a Windows exploit has the biggest market. That’s not a knock on Microsoft, it’s economics. For you it means one thing: patch by the KEV list, not by the CVE count in your scanner. 245 entries a year instead of 48 thousand.
Round 3: how much malware is written for each system?
Here the numbers are the most brutal and the least surprising. The AV-TEST institute (the AV-ATLAS project) registers more than 450 thousand new malware samples every day. The latest full per-system breakdown it published looks like this:
New malware samples in one year (AV-ATLAS, 2022)
Source: AV-ATLAS / AV-TEST, 2022 year summary (69,504,686 Windows, 1,917,133 Linux, 12,445 macOS, plus 1.07 million Android). The Windows sample database alone grew from 920 to 995 million between 2024 and 2025. For contrast: in its 2025 antivirus tests for macOS, AV-TEST used a set of about 800 samples, versus about 45 thousand in the Windows tests.
Windows: five thousand times more new malware than macOS and 35 times more than Linux. Case closed? Not quite, because the sample count tells you about production, not about where breaches actually happen. And here are two trends that change the picture.
The Mac is no longer “safe because it’s niche”
In 2025 Mac market share grew by 16%, and criminals noticed. From the Jamf (Security 360, 2026) and Moonlock Lab (MacPaw) reports:
- Jamf Threat Labs added more than 26 thousand Mac malware samples to its database in 2025 alone; trojans now make up half of detected macOS malware, and infostealers (programs that steal passwords, session cookies and crypto wallets) grew by 28% the year before.
- Moonlock recorded a 67% increase in new backdoor variants and a 17% increase in stealers on macOS in 2025; AtomicStealer (AMOS) and its forks account for nearly 30% of detections, and on VirusTotal – for more than 40% of macOS samples.
- In February 2026 even Microsoft issued a warning about a growing wave of macOS infostealers (AMOS, MacSync, DigitStealer), spread through Google ads and the “ClickFix” trick (a website asks you to paste a command into the terminal yourself).
Mac malware today is a subscription product: a stealer costs about $1,000 a month, and passwords stolen from a Mac sell for a dozen or so dollars per bundle. This business didn’t exist five years ago.
Linux: few samples, big targets
Elastic Security telemetry (2023 report) showed something that captures Linux’s role nicely: 91% of malware signature events came from Linux endpoints (read: servers), while 94% of behavioral alerts, meaning detections of suspicious behavior, came from Windows, and 3% from macOS. On Windows you attack the user, on Linux you attack the service.
And ransomware? For years it was a “Windows” specialty. Today groups actively hunt for VMware ESXi hypervisors (Linux under the hood), because encrypting one host means encrypting dozens of virtual machines at once. According to Huntress telemetry, the hypervisor share of encryption incidents grew from 3% in the first half of 2025 to 25% in the second (partial H2 data, published in December 2025). Check Point Research noticed the same thing: Linux ransomware is simpler to build than the Windows kind, because it doesn’t have to evade antivirus – it’s tailor-made for specific, large organizations.
Lesson #4: Windows is the mass market, macOS is the emerging market, Linux is the “prestige” target – few attacks, but each one goes straight for the heart of the company. If your company has 200 Windows laptops, 30 Macs in the boardroom and the creative team, and 5 Linux servers, you have three different problems, not one “secure” and two “insecure” systems. The worst scenario I see on tests: the board’s Macs with no EDR at all (“because it’s a Mac”) and a Linux server nobody has updated since deployment (“because it’s Linux”).
Round 4: how fast do they patch?
The most interesting data in this round comes from Google Project Zero – the team that reports vulnerabilities to vendors with a 90-day patch deadline and then publicly keeps score of who made it. In the latest such aggregate review (bugs reported in 2019-2021), the result was clear:
Average time from Project Zero report to patch release (days)
Source: Google Project Zero, “A walk through Project Zero metrics” (February 2022): 25 reports for Linux, 84 for Apple, 80 for Microsoft; “on time” = within 90 days without a grace period. Project Zero has not published a newer per-vendor breakdown, and GTIG reports that in 2025 vendors patched actively exploited zero-days in about 15 days on average.
Where does the difference come from? The patch release model:
- Linux ships new stable kernel versions every week, and distributions (Debian, Ubuntu, Red Hat) add their own updates practically every day. A fix is usually a few lines of code (median: 4 lines added, 2 removed – from an analysis of 6,464 kernel CVEs in a paper by researchers from Nicolaus Copernicus University in Toruń and AWS) and doesn’t wait for a “window”.
- Microsoft has Patch Tuesday: one big bundle on the second Tuesday of the month (1,139 CVEs in total in 2025, and in 2026 more records: July – 570, September – 973, October – more than 1,400 in a single bundle, partly because Microsoft hunts for bugs in its own code with the help of AI). The upside: admins know when to get ready. The downside: a bug reported the day after Patch Tuesday waits a month, unless it’s actively exploited – then an out-of-band fix ships.
- Apple patches irregularly, in bulk and across all systems at once (macOS, iOS, watchOS). Even the small “point” update iOS 26.6.1 from August 2026 closed 42 vulnerabilities. The upside is high adoption – Apple users update quickly and en masse.
A patch nobody installed doesn’t exist
And here is the most important number of this round, which isn’t about vendors at all, but about us. Windows 10 support ended on October 14, 2025. A year later, in September 2026, Windows 10 still runs on 27.8% of Windows PCs worldwide (Windows 7, dead since 2020, on 0.55%). To be fair: some of them are still getting patches. Microsoft runs Extended Security Updates (ESU), and in June 2026 it quietly extended the consumer version by another year, to October 12, 2027. Free of charge, provided someone actually enrolled (a Microsoft account and Windows Backup turned on are enough). Businesses pay for ESU separately. How many of those 28% are really in the program, Microsoft won’t say. All we know is that anyone who didn’t enroll has been getting nothing for a year – and every Windows 11 Patch Tuesday is a map of holes to exploit for them, because most fixes touch shared code.
On the Linux side there’s a different sin: old LTS kernels. The same research paper showed that newer kernel versions get fixes faster, while older branches “collect” unresolved CVEs. If your server runs a kernel from five years ago because “it works, don’t touch it”, the kernel team’s speed does nothing for you.
Lesson #5: In the vendor race, Linux is the fastest, Apple makes up for it with adoption, and Microsoft is the slowest but the most predictable. In the user race we all lose equally: 28% of PCs on Windows 10 is not Microsoft’s fault. It’s an item in your risk register if you have even one such machine in the company.
Round 5: who’s behind it – people and money
This is a question a client asked me recently: “how many people are actually guarding this system?”. The answer surprises in both directions.
Teams and money
Sources: Microsoft Security Blog – SFI Progress Report (Sep 2024) and MSRC – Bounty Program year in review (2026); Apple Security Research – Apple Security Bounty update (Oct 2025); G. Kroah-Hartman – kernel CVE process documentation (Feb 2024) and “Linux kernel security work” (LWN, 2026).
After the Storm-0558 breach in 2023 (a Chinese group read US government emails through Exchange Online) and a scathing report from the US Cyber Safety Review Board, which found the company had “a security culture that deprioritized security”, Microsoft announced the largest security engineering project in its history: the equivalent of 34 thousand full-time roles, security written into every employee’s annual review, 13 deputy CISOs. Plus a record $20 million in bug bounties over the last year.
Apple says nothing about its team, but it talks with money: $2 million for a “zero-click” exploit chain is the highest payout in the industry today, and since 2020 the company has paid $35 million to more than 800 researchers (about $44 thousand per report on average). It’s a deliberate strategy: Apple competes with exploit brokers who sell those same bugs to spyware companies.
And Linux? Several thousand developers work on the kernel for each release, mostly employed by Intel, Google, Red Hat, Oracle or Huawei. But the security team is a handful of experienced subsystem maintainers who – as Kroah-Hartman describes it – act as individuals and can’t even tell their employers about reports until they’re fixed. CVE numbers are assigned by three or four people reviewing every commit to the stable branch. There’s no bug bounty for the kernel itself; there are indirect programs, like Google kernelCTF (for kernel exploits in Google’s configuration) or the community-run Internet Bug Bounty.
Lesson #6: A budget doesn’t buy security directly. The company with the largest security team in history also has the most KEV entries, while the project with a four-person CVE team patches the fastest. The difference isn’t money, it’s the model: open code, small fixes, weekly releases versus a billion devices, backward compatibility going back to the 90s and cumulative updates. The same law applies in your company: the winner isn’t whoever has the biggest security budget, but whoever has the shortest path from “we know about the hole” to “patched”.
Bonus: Pwn2Own, or what falls when you pay for the hack
If you want to see what “security” looks like under fire, look at Pwn2Own – a competition where researchers break fully patched systems for prize money. In Berlin in May 2026, in three days: 47 zero-days and almost $1.3 million in prizes. Windows 11 fell five times (privilege escalation every time), Red Hat Enterprise Linux several times, Microsoft Exchange went for 200 thousand, and the attempts against Safari… didn’t fit in the time limit. Not because Windows is “worse”, but because it’s the target researchers prepare the most exploits for. For the same reason criminals do.
The new player: an AI agent on your computer 😈
So far I’ve been comparing operating systems. But in 2026, on every one of them – Windows, Linux and Mac – there’s increasingly a new tenant: the AI agent. Claude Code, Codex, Gemini CLI, Cursor. It reads files, runs terminal commands, installs packages. It works with your permissions, and often with your cloud and GitHub keys. For an attacker it’s neither Windows nor Mac. It’s a new, highly privileged attack surface that the operating system can’t tell apart from you at all.
A story from Reddit: the miner nobody saw for two months
In October 2026 a Reddit user described how his Mac was heating up to 112°C. He built himself a temperature monitoring app with Claude Code, and while testing it the agent found the culprit: a Monero cryptocurrency miner (XMRig) eating about 1,175% CPU, roughly 12 processor cores. It was launched by a LaunchAgent (the macOS autostart mechanism) with an encoded script that restarted the miner every time the process was killed. According to the screenshot, the entry had been sitting in the system since the end of August.
Where it came from was never established. In the comments, some people even suspected the agent itself, and Macworld put that straight into its headline. The August date suggests the miner was on the Mac earlier, but nobody verified it: it’s one person’s account, with no file hashes and no analysis. For me, two things are most interesting here at the same time. First, the textbook pattern: a Mac with no EDR, “because Macs don’t get viruses”, spent two months mining crypto for someone else. Second, the very fact that the internet’s first question was “what if it was the AI?”. And that question is entirely fair.
Binance: a job interview, an internal AI tool and $6.3 billion
The strongest example arrived a few days before this post was published. On November 3, 2026, Binance described how on October 29 it lost about $6.3 billion – more than four times as much as Bybit in February 2025, the previous record. The FBI attributed the attack to North Korea. Customers didn’t lose any money, because Binance covered the losses from its own funds. Here’s how it unfolded, according to Binance’s report:
- June 2026: an engineer working on wallet infrastructure searched the web for an AI tool and downloaded a fake Homebrew installer (Homebrew is a popular package manager for developers). Binance detected the infection and changed the passwords, but the attackers had already found out who this person was and who they worked with.
- September 2026: a second engineer got a job offer through a recruitment platform. The first interview – an ordinary video call with “HR”. The second – on a messaging app, with the “CEO” of a non-existent company, who at the end sent over a recruitment assignment. The engineer downloaded the repository onto their work computer. During setup, code ran that swapped out part of a legitimate developer tool, connected to the attackers’ server and covered its tracks. The malware went undetected.
- October 20: from that computer, the attackers abused Binance’s internal AI tool to take control of the computers of two more engineers. Exactly how – Binance hasn’t disclosed.
- October 29: on one of the compromised computers they found a container deployment token, ran their own script and got into the internal service that signs transactions. The transfers out of the hot wallets took less than four hours.
Notice how little “operating system hacking” there is here. No zero-day in Windows or macOS. Just a fake recruitment process, a homework assignment in a repository and a company AI agent with access to too many computers at once. The attackers didn’t have to hop from machine to machine themselves – the tool everyone in the company trusted did it for them. 😈
Malware that uses your AI
More proof that this isn’t theory came back in August 2025. Attackers hijacked the publishing process of the popular developer tool Nx (millions of weekly downloads) and released infected versions. The install script checked whether AI command-line tools were installed on the machine – Claude, Gemini, Amazon Q – and told them to search the disk themselves for SSH keys, tokens, password files and crypto wallets. The targets were Linux and macOS. The outcome of the campaign, dubbed “s1ngularity”: 2,180 compromised GitHub accounts and 7,200 repositories, including 6,700 private ones that the attackers made public. Researchers at Wiz noticed that the criminals kept tweaking their prompts on the fly, because the models sometimes refused to carry out the command.
In plain English: the malware no longer had to know where to look. It was enough to ask the assistant that was already there.
MCP, or plugins that see everything
AI agents connect to the world through MCP (Model Context Protocol) – something like plugins that give them access to email, repositories, databases or the cloud. And the story repeats itself, just like with every new add-on ecosystem:
- September 2025: a fake MCP server impersonating Postmark (an email delivery service) added a hidden BCC to the attacker on every message. Invoices and internal correspondence leaked.
- May 2025: a single crafted issue in a public GitHub repository was enough. An AI agent with MCP access read it, treated it as an instruction and moved data from private repositories into a public pull request. That’s prompt injection: the attacker doesn’t break into the system, they just slip the agent some text that it will execute.
- February 2026: a cloned MCP server project for the Oura ring distributed the StealC infostealer, which steals browser passwords, API keys and crypto wallets.
On top of that, researchers at Adversa AI showed that in four popular tools (Claude Code, Gemini CLI, Cursor CLI, Copilot CLI), a single click on “trust this folder” after cloning someone else’s repository can launch the MCP servers defined in it with the user’s full permissions. For now this is a research demonstration, not a known attack. And AI tools themselves have already joined Pwn2Own as full-fledged targets: in Berlin in May 2026, OpenAI Codex, Cursor and LM Studio fell, among others, and in Ireland in October 2026 Codex was broken on day one.
AI agents in customer service: social engineering, minus the human
AI agents don’t just sit on developers’ laptops anymore. More and more often they answer customer emails, run the chat on the website and pick up the phone on the hotline. Inti De Ceukelaire, a researcher and one of the founders of the Intigriti bug bounty platform, showed at DEF CON 34 (Bug Bounty Village) what that leads to. By his own account, he collected over $50,000 in bounties over a few weekends – no scanners, just by writing to bots. A few techniques worth knowing:
- Impersonating a customer by email. Some bots recognize the customer by the visible sender, not by what the email security checks actually verified. A crafted email is enough for the bot to reply with data from someone else’s account – sometimes straight to the attacker’s address added in CC.
- Phishing from the official address. A “send me the chat transcript” feature let anyone receive the attacker’s text from the real support address, which sails through spam filters.
- Stealing one-time codes. The attacker leaves the bot an “instruction”, then triggers a password reset. The bot reads the incoming code and obediently forwards it. A similar trick worked on the AI assistant built into the Chrome browser – Google marked the report as “Won’t Fix”.
- One thing for the human, another for the AI. Hidden text in HTML, different versions of the same email (plain text and HTML), a forged “prior approval from a support agent” in a quoted reply. The human who approves the bot’s action sees an innocent email, while the agent executes the command. In one example this ended with an unauthorized $4,200 refund.
- Switching channels. When the chat verifies customers well, just call. The AI hotline trusted the caller ID, which can be spoofed, or security questions whose answers can be guessed.
- A poisoned knowledge base. The bot pulls answers from company pages and the community forum. An attacker’s forum post can get indexed as official company knowledge – fake discount code included.
The key takeaway from this talk: a human in the loop is not a safeguard if they see something different from the machine. It’s good old helpdesk social engineering, except the bot never has a bad day, never gets suspicious and answers anyone who writes within a second. If your company is rolling out an agent like this, treat it as privileged automation: separate customer content from system instructions, verify identity in a logged-in session instead of by the “From” field, check every tool call on the server side and don’t let the bot send codes or data to an unverified address.
Lesson #7: An AI agent is a new “employee” with full permissions who reads everything you put in front of it – including attacker commands hidden in a file, an issue or an email. And as Binance showed, a company AI tool with access to many computers at once is a ready-made highway for an attacker. And it doesn’t matter whether it lives on Windows, Linux or a Mac. Treat it like a new hire on probation: a separate account or container, tokens with minimal permissions, MCP plugins only from trusted sources, manual approval of commands that change anything, and zero “trust” for repositories you don’t know – including those from “recruitment assignments”. And if your laptop suddenly heats up – check Activity Monitor before someone else does.
Verdict: who wins which round
| Metric | Windows | Linux | macOS |
|---|---|---|---|
| Number of CVEs (2025) | 1,255 | 5,687 | 727 |
| Actually exploited (new in KEV 2025) | 39 | 7 | 9 |
| Zero-days (GTIG 2025) | 25* | outside TOP 7 | 8* |
| New malware per year | ~70M | ~2M | ~12K |
| Attack trend | consistently high | ESXi ransomware 3% → 25% | backdoors +67% |
| Time to patch (Project Zero) | 83 days | 25 days | 69 days |
| Security team | 34K FTEs (SFI) | a handful + 3-4 on CVEs | not disclosed |
| Max bug bounty | $250K | none of its own | $2M |
* counted per vendor (all Microsoft / Apple products). Green = best result in the round, red = worst.
If you count “points”, Linux wins three rounds (actually exploited vulnerabilities, zero-days, patching speed), macOS three (fewest CVEs, least malware, highest bounty), Windows one (team). But this ranking is worth exactly as much as my three caveats from the beginning: Linux wins because it doesn’t sit on desks, the Mac wins because it’s only just entering the crosshairs, and Windows loses because it’s everywhere.
So which system should you choose? Wrong question
From a pentester’s perspective, the truth is less comfortable than any ranking: in 2026 I break into companies not through the operating system, but through what the company did with it. Through an account without MFA, through an internet-facing server with a year-old vulnerability from the KEV list, through a laptop running Windows 10, through the CEO’s Mac with no EDR, because “Macs don’t get viruses”. Or through an AI agent someone handed the keys to everything. So instead of a ranking – four short checklists:
- Windows – your mass market and your biggest attack surface. Retire Windows 10 or buy ESU (Extended Security Updates), roll out Patch Tuesday in days, not weeks, treat the KEV list as your priority, EDR on every endpoint, local admin disabled. Boring? Boring saves companies.
- macOS – manage it exactly like Windows: MDM, EDR, enforced updates. Train people on “ClickFix” (no sane person asks you to paste commands into the terminal to “fix” a website). An infostealer on the CEO’s Mac is today the cheapest road into your Microsoft 365.
- Linux – the kernel team patches in days, but your server won’t update itself. Kernel and distribution on a supported version, ESXi hypervisors cut off from the internet and from the user network, an inventory of what’s exposed to the outside. Few attacks doesn’t mean zero attacks – it means attacks that hit the heart.
- AI agent (on all three) – if your developers or you yourself use Claude Code, Codex or Cursor, set the rules before someone else does it for you: a separate environment, tokens with minimal permissions, an allowlist of MCP plugins, manual approval of commands and never “trust” for an unknown repository. And if AI answers your customers, test it the way an attacker would test a helpdesk: a spoofed email, a phone call instead of chat, a hidden instruction in a message.
And one thing common to all of them: check that it works. Microsoft, Apple and Linux know about their holes because someone is actively looking for them – researchers chasing $2 million, Project Zero, Pwn2Own. At your scale, that role is played by a penetration test: a controlled attack after which you get a list of what is actually vulnerable, not theoretically. If you want to know what it costs, work it out in 2 minutes with the calculator.
Summary ✔️
Windows has the most actually exploited vulnerabilities and the most malware, but the biggest team and the most predictable patching. Linux has the most CVEs on paper and the fewest in practice, and patches the fastest – provided someone installs those patches. macOS has the least of everything, but the fastest-growing threats and a reputation for being “safe” that has become its biggest weakness. And above it all, a new player has appeared – the AI agent, which on each of the three systems has exactly as much power as you give it. None of them is secure on its own. Each is exactly as secure as the company using it – and that’s actually good news, because that’s the part you control.
Frequently asked questions (FAQ)
Which operating system is the most secure: Windows, Linux or macOS?
There is no single winner. In 2025 Linux had the most CVEs (5,687), but the fewest actually exploited vulnerabilities (7 new CISA KEV entries) and the shortest patch time (25 days according to Project Zero). Windows had the most actually exploited vulnerabilities (39 KEV entries, 25 zero-days) and about 70 million new malware samples a year. macOS has the fewest vulnerabilities and the least malware, but the fastest-growing threats (backdoors +67% in 2025). Security is decided by configuration and update speed, not by the operating system itself.
Why does Linux have so many CVEs?
Since February 2024 the Linux kernel project assigns CVE numbers itself, and does so very broadly: every fix that might have security implications gets one. Hence about 60 CVEs a week in 2024 and close to 2,000 per kernel release in 2026. Microsoft and Apple assign CVEs only to selected bugs, and many fixes ship without a number. So the CVE count measures a project’s transparency, not how vulnerable it is.
Can Macs get viruses?
Yes, and more and more of them. Jamf added more than 26 thousand macOS malware samples to its database in 2025, trojans make up half of detections, and Moonlock recorded a 67% increase in new backdoors. The most common type is infostealers (e.g. AtomicStealer), which steal passwords, session cookies and crypto wallets, spread through fake ads and the “ClickFix” trick.
How fast do Microsoft, Apple and Linux patch vulnerabilities?
According to Google Project Zero’s latest aggregate review (reports from 2019-2021), Linux released a patch in 25 days on average, Apple in 69 and Microsoft in 83. Linux ships a stable kernel every week, Microsoft patches on a monthly cycle (Patch Tuesday, 1,139 CVEs in 2025), Apple irregularly but in bulk. According to GTIG, vendors patched actively exploited zero-days in about 15 days on average in 2025.
How many people work on Windows, macOS and Linux security?
Microsoft claims the equivalent of 34 thousand full-time engineering roles under the Secure Future Initiative and paid out $20 million in bug bounties in 2025/26. Apple doesn’t publish the size of its team, but since 2020 it has paid $35 million to more than 800 researchers and offers up to $2 million for a single bug. In the Linux kernel, CVE numbers are assigned by a team of 3-4 senior developers, and the security team is a handful of subsystem maintainers acting as individuals.
Is Windows 10 safe after end of support?
Only if it’s enrolled in Extended Security Updates (ESU). Standard support ended on October 14, 2025, but home users can get free security updates until October 12, 2027 – Microsoft extended that deadline in June 2026. The condition: enrollment in the program (a Microsoft account with Windows Backup turned on, Microsoft Rewards points or a $30 fee). Businesses buy ESU separately. A PC without ESU hasn’t received any patches for a year, and every fix for Windows 11 hints to attackers where to look for holes. In September 2026 Windows 10 was still running on about 28% of Windows PCs.
Are AI agents (Claude Code, Codex, Cursor) a threat to computer security?
They can be, regardless of the operating system. An agent runs with the user’s permissions, reads files, executes commands and often has access to cloud and repository keys. In the “s1ngularity” attack (August 2025), infected versions of the Nx package told the installed AI tools to search the disk for secrets, which ended with 2,180 GitHub accounts compromised. Malicious MCP plugins and prompt injection – attacker commands hidden in content the agent reads – are threats too. Good practices: a separate environment, minimal token permissions, plugins only from trusted sources and manual approval of commands.
Sources 📚
- Jerry Gamblin – 2025 CVE Data Review (48,185 CVEs; Linux 5,687, Microsoft 1,255, Apple 727; kernel 3,649, Windows 10 623, macOS 362)
- Google Threat Intelligence Group – 2025 Zero-Days in Review (90 zero-days; Microsoft 25, Google 11, Apple 8)
- Cyble – CISA KEV 2025 (245 new entries; Microsoft 39, Apple 9, Linux 7) and KEV catalog data (1,484 entries Dec 2025, Microsoft 350); Safeguard – CISA KEV by the numbers (1,748 entries, version of 16 Oct 2026)
- StatCounter – desktop OS market share, September 2026 and Windows version market share (Windows 10: 27.83%)
- AV-ATLAS / AV-TEST – summary of new malware samples per operating system for 2022 (post on the AV-ATLAS profile, Dec 2022) and AV-TEST malware statistics
- Elastic Security Labs – Global Threat Report 2023 and 2025
- Jamf – Security 360: 2026 Annual Trends Report (Mac); Moonlock Lab – Mid-2026 macOS Threat Report; Microsoft Security – warning about macOS infostealers (Feb 2026)
- The Register – Huntress: hypervisor share of ransomware encryption 3% → 25% (Dec 2025); CISA – alert on CVE-2024-1086 (Oct 2025); Check Point Research – Linux/Windows ransomware comparison
- Google Project Zero – A walk through Project Zero metrics (Linux 25 days, Apple 69, Microsoft 83)
- Przymus, Weiner, Rykaczewski, Kudrjavets – “Linux Kernel Recency Matters, CVE Severity Doesn’t, and History Fades” (MSR 2026)
- LWN – The kernel becomes its own CNA; LWN – Kroah-Hartman: Linux kernel security work; Phoronix – CVEs per kernel release (Kernel Recipes 2026); LWN – report on Kroah-Hartman’s Kernel Recipes 2026 talk; The Register – 432 CVEs in two days (Jul 2026)
- Microsoft – SFI Progress Report (Sep 2024); SecurityWeek – Microsoft Bounty: $20M (2026)
- Apple Security Bounty – Oct 2025 update ($2M, $35M paid out)
- Security Affairs – Pwn2Own Berlin 2026, days 1 and 2; Zero Day Initiative – Pwn2Own Berlin 2026, day 3 and summary; Privacy Guides – Pwn2Own Ireland 2026
- Zero Day Initiative / Tenable – Patch Tuesday reviews 2025-2026; BleepingComputer – October 2026 Patch Tuesday; Apple – security releases (iOS 26.6.1)
- Help Net Security – Windows 10 consumer ESU extended to Oct 2027
- Macworld – XMRig miner on a Mac detected by Claude Code (Oct 2026); Let’s Data Science – details and caveats
- The Hacker News – Binance: fake job interviews and abuse of an AI tool (Nov 2026); Hackread – details and Richard Teng’s statement
- BleepingComputer – the s1ngularity attack on Nx (2,180 GitHub accounts)
- AuthZed – timeline of MCP incidents; SecurityWeek – Adversa AI research on folder trust in AI agents
- Intigriti – Hacking AI customer service agents (Inti De Ceukelaire, Sep 2026); DEF CON 34, Bug Bounty Village – “Hacking Human-in-the-Loop systems” (recording)
Whatever operating system your company runs on, the question is the same: has anyone checked yet what you look like from an attacker’s perspective? A penetration test is a controlled attack on your systems – Windows, Linux and Macs together – after which you get a concrete list: what’s vulnerable, how badly, and what to close first. Get a quote with the calculator or drop me a line. 🔓