Cog Q&A: Gernot Heiser, the Godfather of Modularity

For those of us in the business of devices, Gernot Heiser needs no introduction. But for the rest of you, here’s a summary:

Gernot’s primary occupation is leading research in Trustworthy Systems, aiming to make software systems truly trustworthy. He also teaches Advanced Operating Systems at UNSW, which also has its own prize for the best-performing student, the Advanced Operating Systems Alumni Prize.

In 2006 he founded Open Kernel Labs (OK Labs) for commercializing L4 microkernel technology developed in his research lab. He served as Chief Technology Officer from 2006–2010, and as a Director from 2006 until OK’s acquisition by General Dynamics in August 2012.

Gernot’s trailblazing work in the microkernel industry has led some of us around here to nickname him the “Godfather of Modularity,” and I had the privilege to catch up with him for a quick conversation.

Gernot, care to weigh in on the monolithic vs. modularity debate for device design?

Sure, that’s easy. The monolithic OS design model, used by Linux, Windows, macOS, is fundamentally and irreparably broken from the security standpoint.

Security is only achievable with a microkernel design, that minimizes the “trusted computing base” (TCB), i.e. the part of the system on which security depends. Ideally the microkernel is verified, mathematically proved correct, as in seL4. That is only feasible with a really small system. Systems like Linux have a TCB that is far too large and complex to get right, they are inherently full of security holes. Their use in security- or safety-critical applications is at best grossly negligent and should be considered professional malpractice. It must stop.

And you have some serious research to back this up. Tell us about it.

Absolutely. I recently performed an analysis of Linux vulnerabilities listed as critical – meaning it is easy to exploit and leads to full system compromise, including full access to sensitive data and full control over the system.

For each of those vulnerabilities we analyzed how it would be affected if the attack were performed against a feature-compatible, componentized OS. In other words, an application running on this OS should only be dependent on a minimum of services required to do its job, and no others.

We evaluated all Linux vulnerabilities that had been classified “critical”, a total of 112 vulnerabilities.

You have my attention – what was the result?

Well, for starters, only 5 compromises (4%) were not affected by OS structure.

29% were eliminated simply by implementing the OS as a componentized system on top of a microkernel! The example I like to give is if a Linux USB device driver is compromised, the attacker gains control over the whole system, because the driver runs with kernel privileges. In a well-designed microkernel-based system, only the driver process is compromised, but since our application does not require USB, it remains completely unaffected.

Wow. What else did you uncover?

A further 11% of the vulnerabilities are eliminated if the underlying microkernel is formally verified (proved correct), as we did with seL4. These are exploits against functionality, such as page-table management, that must be in the kernel, even if it’s a microkernel. A microkernel could be affected by such an attack, but in a verified kernel, such as seL4, the flaws which these attacks target are ruled out by the mathematical proofs.

So, taken with the previously mentioned 29%, we proved that 40% of the exploits would be completely eliminated by an OS designed based on seL4.

So, the case for modularity keeps building.

Definitely. We also found that another 17% of exploits are strongly mitigated. These are the kinds of attacks where a required component, such as NIC driver or network stack, is compromised, and as a result compromising the whole Linux system, while on the microkernel it might lead to the network service crashing without being able to compromise any data.

So if my math is correct, 57% of attacks are either completely eliminated or reduced to low severity?

That’s absolutely correct.

Gernot, thanks for your time and data as it relates to device vulnerability. Where can readers learn more about what you’re up to?

Thanks, Carl. People can find me at

WARNING: A Cybersecurity Revolution is Upon Us, With Consumers Taking the Power Seat

The world today has entered into a new era where consumers and enterprise alike have come to expect cyber attacks. However, as attacks become more severe with greater reach, a power shift is occurring among consumers who are losing trust in the enterprise and government to protect their privacy and data. Now, consumers are choosing to leverage their power and make choices based on their confidence in security.

 Increased Attacks and Lack of Trust are Fueling the Revolution

The PwC survey conducted in 2017 measuring consumer perceptions around cybersecurity and privacy risks demonstrates that a revolution is upon us and the findings are telling:

  • Just 25% of respondents believe most companies handle their sensitive personal data responsibly. Even fewer—only 15%—think companies will use that data to improve their lives.
  • Only 10% of consumers feel they have complete control over their personal information.
  • 88% of respondents say the amount of data they share with a company depends on how much they trust it.

So how could this revolution impact you? Manufacturers and enterprises serving these consumers will pay the ultimate price as 85% of respondents surveyed say they will not do business with a company if they have concerns about its security practices.

Prioritizing Cybersecurity

I’ve said it before and I’ll say it again: today’s manufacturers and enterprises can no longer afford apathy and lip service when it comes to cybersecurity. It needs to be in the forefront of your business strategy, which should include adopting and implementing proven security tactics that address consumer concerns to gain their loyalty. This applies to mobile, but especially IoT.

At Cog, we firmly believe that the world’s connected and IoT devices can be secured by leveraging virtualization at the architecture level . This is the only way to engineer tomorrow’s connected marketplace to deliver security and productivity.



How to Address Cybersecurity Unforced Errors in 2019

Looking back on the progress that the cybersecurity industry made in 2018, I remain optimistic that advancements will continue over the next year ahead. But there were some big misses that the industry made where we all share some accountability.

From my perspective, there were some unforced errors in 2018 that have continued to plague our industry. What does this mean going into 2019? Read on…


We hear about data breaches almost everyday so it’s no surprise that cyber fatigue is plaguing consumers, government and enterprise alike. In fact, a recent survey found that one in three government employees believed they were more likely to be struck by lightning than have their work data compromised.

Government and enterprise have created an environment and a culture that is nothing short of numbing to the public. We remain indifferent until we hear about cyber attacks like the latest “Collection #1,” which has exposed a record breaking 773 million email addresses and 21 million passwords. Perhaps a breach like this will awaken consumers to DEMAND more from the businesses and organizations who hold personal information with such clear disregard.

Lip Service

Over the course of my travels this past year, I’ve had the opportunity to hear some of the smartest people in the business talk about cybersecurity. The themes are all the same – huge growth, big problem, critical need, market demand, essential to our future, and investment in all kinds of time and money to solve the problem.

This is not isolated to just consulting firms (we expect them to be hyperbolic), but some of the leading technology companies in a position to directly impact the industry in a huge way. These big players have slideware that is impressive, spectacular even, yet it’s still just talk.  I contend the single most common element of all this talk is simple – “the problem is big, and you better pay attention. However, I have no practical solutions for you today, but don’t worry we are working on it.”

 Cybersecurity Needs to Show Business Value

Apathy and lip service are just a few of many key drivers that affect any culture. But wait, there’s more.  The reality is evident in the facts. Since the CISO is still a fairly new position, they rarely are invited to a seat in the boardroom or even report to the CEO.  When it comes to budget, holiday celebration expenditures have a better chance of getting approved than the newest cybersecurity tool.

So what can any good organization do to address these issues while we wait for the public to assemble and protest? They make a change. That means elevating cybersecurity to demonstrate itself as a profit center that demonstrates measurable business value. This is the opportunity we must work to embrace.

Here at Cog, our tagline is all about security via the virtualization of IoT. Yet, our customers find the value in the measurable ROI that they incur through the use of our technology, and security just comes along for the ride. The approach to security must be proactive and demonstrate real value to the business by minimizing risk, reducing cost and improving performance. All of this leads to company profit, which is how the CISO earns a seat in the boardroom. If we do that, then we can break through the apathy and lip service that has become our new reality.

In spite of it all, I still have nothing but optimism for the future. It’s a good time to be bold and elevate cybersecurity to a new level that will eventually change the industry and the world for the better.



Cog Joins GSA IoT Security Working Group

Addressing today’s IoT security challenge takes more than technology solutions. It requires experience, industry knowledge and expertise, collaboration and creativity. Most importantly, it takes a group of leaders that share a common goal.

Today, we are honored to announce that Cog has become a member of the Global Semiconductor Alliance (GSA) and the GSA IoT Security Working Group. The GSA IoT Security Working Group was established to address end-to-end issues in IoT Security. It is comprised of various IoT ecosystem security stakeholders including chipset vendors, platform companies, cloud vendors and service providers. The goal is to promote best practices on IoT Security, share information on threats and attacks, define security requirements and inform standards bodies.

In collaboration with the other members of the GSA IoT Security Working Group, Cog is honored to have the opportunity to lead a project focused on using Rich Execution Environments to drive enhanced security on End-Point Devices. This is but one of the many projects currently under sponsorship of the GSA, but is critical to supporting the industry with recommendations on standards and best practices to secure the rapidly expanding number of IoT devices being deployed in the home, workplace, and manufacturing segments

As cyber threats and attacks continue to become more aggressive and complex, organizations like the GSA will be critical to staying ahead of the hackers and providing the IoT industry with a security framework based on best practices and standards. We look forward to being a part of that effort and contributing to improving IoT security for enterprise and consumers alike.

Listen, We Need to Talk About your Attack Surface

As Miguel de Cervantes wisely said, “Never put all your eggs in one basket.”   Yet, when we design our software for IoT in one large, cumbersome, monolithic stack – well, that is exactly what we are doing.

And it all comes down to the attack surface.

For a software platform, the attack surface describes all the different points where an attacker could get into a system, and where they could get data out. The attack surface of an application, therefore, includes all of the following:

  • the sum of all paths for data/commands into and out of the application;
  • the code that protects these paths (including resource connection and authentication, authorization, activity logging, data validation and encoding);
  • all valuable data used in the application, including secrets and keys, intellectual property, critical business data, personal data and PII;
  • the code that protects the data, including encryption and checksums, access auditing, and data integrity and operational security controls.

Traditionally, we’ve thought of attack surface as it relates to perimeter.  After all, a perimeter is easy to think about as an area that needs to be patrolled and/or protected from harm by a bad actor.  And so, it’s always been important to protect the perimeter.

On the surface (no pun intended), that makes sense. Consider this analogy. If we had one, big, monolithic building that measured 10×5, then we would have a perimeter to be patrolled of a total of 30 units (2x (10+5)).   Now if I carved up my monolithic building into a series of 25 smaller modularized buildings that measure 2×1 that would equal a total perimeter of 150 units (25x(2x (2+1))). Now, if I told you that having 25 modular buildings would be more secure than 1 monolithic building – would that even be worthy of a discussion?  Nope – your attack surface is 400% larger!! Think of all the added work you would have to do just to protect that expanded perimeter.

The problem with that logic is that in the world of software a modular approach is much more secure than a monolithic approach.

Under the leadership of Dr. Gernot Heiser, he and two of his undergraduate students performed an analysis in order to prove out this approach. They developed a modular system built on sel4 and were able to completely eliminate 40% of the critical threats from the Common Vulnerability Assessments (CVE) database, while mitigating a further 59% to one degree or another.  Click Here to Read the White Paper.  

Why does this counterintuitive logic on attack surface work? Simple – instead of one key to the whole house, you need to have 25 keys…and even then each of the 25 modules only has access to the minimum number of services required to do its job, and no others.  By using microkernels, one can support this approach to architecting a fully modular design. This means a breach of the perimeter of one microkernel does not compromise the entirety of the system.

So, in spite of the increase in the size of your perimeter (aka attack surface) – one can cut the risk to their IoT device through a modular approach using only their required resources to deliver a more secure system.   Or put another way – go ahead and put your eggs in many baskets.