Author Topic: Is there something to learn for embedded/IOT from the Crowdstrike disaster?  (Read 28763 times)

0 Members and 2 Guests are viewing this topic.

Online Marco

  • Super Contributor
  • ***
  • Posts: 7702
  • Country: nl
Interoperability exemption means you can even bypass integrity mechanisms to distribute kernel level code if you want ...
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
That kernel-mode code can blue-screen Windows is true, but it doesn't follow that therefore, it is in the interest of the user to prevent the user from running kernel-mode code that does not cause Windows to blue-screen, which is what you are proposing. You constantly avoid justitfying the thing that you actually are proposing.

It's about risk. Code running in kernel mode can tramp over memory in use by other applications. This is a bad thing. User mode code cannot. This is a good thing.  Microsoft is responsible for providing an OS that is secure and reliable, and preventing applications from running in kernel mode reduces the risk of inept or hostile code trampling over memory allocated to other applications. It also reduces the ability of an application to crash the OS itself - this, too, is a good thing.

If you don’t think this is a good thing, ask yourself why all the big OSs work in this way: the OS runs (largely) in kernel mode, the applications run in user mode. Windows, Linux, MacOS all work like this. I'm not as familiar with Linux as you are, but I don't think Linux apps routinely run in kernel mode.

Re. your last sentence, I think I have done nothing but justify why apps are best kept away from kernel mode.

So, only Microsoft should be allowed to provide application software for Windows?

Eh? I said only Microsoft should be allowed to provide OS services and APIs. The application software - running in user mode - is open to any provider.

On all of the operating systems that I use, no vendor "owns" any API. I have all the source code to all of it and am legally explicitly allowed to modify all of it. So, it is obviously explicitly intended that I can add, remove, or change kernel mode code how ever I like it, be it with my own code, or code from any third party. So it is just obvious nonsense that it is somehow the universal model that some "vendor" controls what code I run on my operating systems in kernel mode.

That's because you are running Linux! The license is completely different. You are free to do whatever you like to any part of it. This is not true for Windows and MacOS. You don't have any of the source code for those OSs, and their license does not allow you to modify their operating systems.

If you blame the manufacturer for not preventing their customer from doing whatever their customer wants to do, that simply is an expression of your authoritarianism, not some universally agreed view.

As I said, Windows does NOT let applications do "whatever their customers want to do". If you don't think that is fair or acceptable, then use a different OS (but not MacOS, because that doesn't, either). I can't comment on whether that counts as authoritarian or not, but it certainly isn't my authoritarianism.

Now, the kernel API in particular is usually a privilege boundary. But it generally is not a privilege boundary between the owner of the machine and the kernel. It is a privilege boundary between users. The point is to isolate processes that run under different user ids, so that a process running under one user can not randomly read or modify data of some other user.

It IS a privilege boundary between the applications and the kernel (the owner only owns the hardware, remember). When that boundary is breached, disasters like CrowdStrike become more likely. CrowdStrike was not trying to stomp over processes running under different user IDs. It tried to access memory (apparently off a null pointer) that was not allocated to it.

Protecting "the OS" is not something that has any inherent value, because "the OS" is not something the user cares about on its own. Protecting "the OS" only makes sense as a means to an end, i.e., of protecting user data against abuse or corruption. Preventing the user to do with their data what they want to do with their data is not something that helps with that.

You say the user doesn't care about the OS on its own. Probably true, but only because most users only have a vague understanding of how their PC works. The reason why the OS should protect itself from damage is because, whether they know it or not, the integrity of the OS is crucial to protecting the user's data and letting them get on with their work.

And also, you are still confusing reliability features with anti-user enforcement. I can add any kernel mode code I want to my Linux kernel, for example. That doesn't mean that root processes don't segfault when they access an unmapped page or whatever. It isn't required for Linux to be able to have these features that I am prevented from changing the kernel code.

Reliability and user access enforcement are both important and enhanced by keeping apps away from kernel mode as far as possible. You certainly cannot add kernel mode code to the Windows kernel unless you jump through the hoops mentioned earlier. And, I'm sure you will admit that your code - running in kernel mode - has the ability to wreak far more havoc than your code running in user mode.

I think you are stuck in the Linux mindset, where everything is open and transparent. Windows isn't like that: Windows is a black box with published APIs. You can't mess with the OS because you can't get the source code.

I think the CrowdStrike disaster proves my point beyond doubt: an inept application was able to bluescreen Windows machines all over the world and caused absolute chaos to countless businesses because it was running in kernel mode. If it was running in user mode it couldn't have done that. That's why Microsoft is right in trying to reduce the amount of application code running in kernel mode.

You know, that sort of stuff is what I do for a living, and I can assure you that I understand how privilege boundaries on operating systems work. And I can also tell you that the way that you think about IT security is pretty confused.

Your ad hominem seems like a good place to stop. We've both got our heels dug in - I doubt there is any value in continuing. Also, we really should get back to talking about microcontrollers. Your professional experience with Linux surely means you can suggest some lessons that are relevant to microcontrollers.
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 7702
  • Country: nl
I'm fairly sure Apple's GPU and nvme drivers run in kernel mode.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
I'm fairly sure Apple's GPU and nvme drivers run in kernel mode.

They do indeed, as do Windows video/graphics drivers.

But these are drivers, not applications, and Microsoft and Apple both employ rigorous testing, certifying and signing regimes to these drivers before they can be installed.  That's because Apple and Microsoft know that code running in kernel mode has vastly more ability to destroy data and crash the OS.
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 7702
  • Country: nl
There's WHQL, but both Microsoft and Apple (before they just first partied all important hardware) let developers sign their own drivers.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
That kernel-mode code can blue-screen Windows is true, but it doesn't follow that therefore, it is in the interest of the user to prevent the user from running kernel-mode code that does not cause Windows to blue-screen, which is what you are proposing. You constantly avoid justitfying the thing that you actually are proposing.

It's about risk. Code running in kernel mode can tramp over memory in use by other applications. This is a bad thing. User mode code cannot. This is a good thing.  Microsoft is responsible for providing an OS that is secure and reliable, and preventing applications from running in kernel mode reduces the risk of inept or hostile code trampling over memory allocated to other applications. It also reduces the ability of an application to crash the OS itself - this, too, is a good thing.

If you don’t think this is a good thing, ask yourself why all the big OSs work in this way: the OS runs (largely) in kernel mode, the applications run in user mode. Windows, Linux, MacOS all work like this. I'm not as familiar with Linux as you are, but I don't think Linux apps routinely run in kernel mode.


What you are saying here is mostly correct.

But in so far as it is correct, it is completely besides the point.

Now, for one, no, "apps" on Linux don't "routinely run in kernel mode". But that's pretty much a vacuous statement, given that the definition of "application" is essentially "code running in userspace", so code running in kernel space would, by definition, not be an application.

However, I would agree than OS "vendors" are responsible for providing an OS that is secure and reliable.

In the case of Linux, the kernel developers do that in the form that they provide a ton of features that allow me, the owner and admin of the machine, and the software that I, the owner and admin install on it, to restrict the privileges of code running on the system, and to limit the impact of bugs in code running on the system, from virtual memory process isolation to user account isolation to seccomp and namespaces/containers, mandatory access control hooks, packet filters, what have you. Microsoft at least to some degree does the same on Windows. All of that is a good thing, no disagreement on that from me.

Now, you are further suggesting that the kernel developers should prevent me, the owner and admin, from changing the kernel code. What you have failed to provide so far is a justification for why that would be a good idea/why that would be in my interest.

The fact that running code in kernel space is risky is irrelevant for that. That's a justification for why I, the owner/admin should maybe generally avoid unnecessarily running code in kernel space, which is something that I do absolutely agree with. What needs justification is that the kernel developers (or Microsoft) should prevent me, the owner/admin, from running code in kernel space. And that justification needs to consider that (a) I, as the owner/admin already do have the option to not run code in kernel space unnecessarily in order to avoid that risk, so it doesn't need the kernel developers(/Microsoft) forcing me to not do that in order for me to be able to avoid that risk, (b) that there might be good reasons to run code in kernel space that are worth the risk and where I as a competent owner/admin am willing to take those risks for the advantage that it gives me, in which case it is obviously not in my interest that the kernel developers prevent me from doing the thing that would be to my advantage, and (c) that one reason in particular for why I might want to add kernel code could be that I want to add features that allow me to further restrict privileges of code running in userspace, in order to improve the security of the system, in the sense that I can prevent leaking or corruption of valuable data in ways that existing kernel features don't allow.

Also, just pointing out that in the case of Crowdstrike, the damage might have been prevented if Microsoft had prevented Crowdstrike users from installing the Crowdstrike kernel driver, is insufficient to justify such a restriction, because it neither addresses all the other effects of such a restriction (i.e. potential benefits that would be erased by such a restriction, see above) nor does it even establish that things would actually have been better for Crowdstrike users because you would also have to substantiate that the hypothetical kernel driver provided by Microsoft ("the API") instead of Crowdstrike's driver would not have suffered a similar or worse failure mode, which you haven't done. And all of this in particular, given that people who do use Windows already did have the option to not install Crowdstrike and thus also to not install the Crowdstrike kernel driver in order to avoid the damage that they suffered, so the restriction that you are suggesting is not actually necessary to that end.

Re. your last sentence, I think I have done nothing but justify why apps are best kept away from kernel mode.


Yes, you have. And that is the problem that I have been pointing out over and over, with you just ignoring it.

You are suggesting that Microsoft should prevent owners/admins from installing (certain) kernel mode drivers on their own systems.

But the justification you give is, at best, for why owners/admins should not (unnecessarily) install kernel mode drivers on their own systems.

That part I don't even necessarily disagree on.

The part that I disagree on is that Microsoft should prevent owners/admins from installing kernel mode drivers. And that is the part that you keep dodging. You keep explaining why people should avoid installing kernel mode drivers, but not why Microsoft should prevent people from installing kernel mode drivers.

The fact that it is risky is not sufficient reason why people should be prevented from taking the risk, if they think that that risk is worth it. But you are saying that it shouldn't matter what the owner/admin of a system thinks, and that Microsoft should decide for them that they are not allowed to take risks. That is the part that you need to justify.

All of this in particular given that the choices aren't actually what you present them to be. The option to "keep the app away from kernel mode" doesn't exist, except in so far as you can just not install "the app" (i.e. Crowdstrike or similar products) at all. Or rather, strictly speaking, there is no app in kernel mode at all, because the component of Crowdstrike that runs in kernel mode, by definition, is not part of the application, but part of the kernel. And there is no way to avoid that some portion of a system like Crowdstrike is implemented as a kernel driver, so it isn't actually an option to have "no kernel driver". The actual choice, besides not installing such software at all, is to either have a kernel driver from Crowdstrike, or a kernel driver from Microsoft. Therefore, no matter which option you choose, you do have code running in kernel mode, with the risks that are associated with running code in kernel mode. The only question is who that code is written by. And you are saying that Microsoft should be allowed to force its customers to only use a driver written by Microsoft. Again, that is the part that you haven't justified. The fact that you would prefer to use a driver from Microsoft is irrelevant. Other people being able to use drivers from other vendors does not in any way prevent you from using a driver from Microsoft, so it is not necessary to prevent other people from using drivers from other vendors in order to enable you to use a driver from Microsoft. If everyone wants to use a Microsoft driver, that is also possible without Microsoft preventing the use of other drivers. And iff there is anyone who wants to use a driver from a different vendor, then it is obviously not in their interest to force them to use a different driver than the one that they want to use.

So, only Microsoft should be allowed to provide application software for Windows?

Eh? I said only Microsoft should be allowed to provide OS services and APIs. The application software - running in user mode - is open to any provider.


Yeah, I know. But I asked you to justify this position. And the reasons that you gave as justification are not specific to "OS services and APIs", but rather would apply equally to application software.

I asked you to justify why the owner/admin of a machine should be prevented from running code of their choice in kernel mode, but should not be prevented from running code of their choice in userspace.

You said that the reason is because running code of their choice in kernel mode would be a risk to their data.

Now, I will ignore the logical non-sequitur in this, and will just assume that this is in fact a valid reason to prevent them from running code of their choice in kernel mode.

The problem is that running code of your choice in userspace also is a risk to their data.

So, if "being able to run code of your choice is a risk to their data" is a valid justification for preventing people from running code of their choice, then that justification applies to userspace just as much as it does do kernel mode, so it isn't actually a justification for your position that owners/admins should be prevented from running code of their choice in kernel mode, but not in userspace. If you indeed think that this is a valid reason, then it would follow that they should also be prevented from running code of their choice in user space, and if you think that people should be allowed to run code of their choice in user space, then your justification doesn't hold, and you will have to find a different one.

On all of the operating systems that I use, no vendor "owns" any API. I have all the source code to all of it and am legally explicitly allowed to modify all of it. So, it is obviously explicitly intended that I can add, remove, or change kernel mode code how ever I like it, be it with my own code, or code from any third party. So it is just obvious nonsense that it is somehow the universal model that some "vendor" controls what code I run on my operating systems in kernel mode.

That's because you are running Linux! The license is completely different. You are free to do whatever you like to any part of it. This is not true for Windows and MacOS. You don't have any of the source code for those OSs, and their license does not allow you to modify their operating systems.


Well, yeah? But for one, that doesn't change that your statement that this was somehow a universal thing with operating systems was bullshit. It was bullshit precisely because operating systems like Linux, OpenBSD, FreeBSD, NetBSD, Illumos, and who knows what, do have licenses that follow a very different model to the one that you claimed was universal.

But also, and maybe more importantly, it is mostly besides the point. The license maybe doesn't allow you to modify those operating systems. But the law does, within certain limits, and the law trumps license agreements. And you are suggesting that the law should also not allow it, i.e., the law, or the authorities enforcing the law, should allow Microsoft to prevent their customers from doing things with Microsoft's operating system that Microsoft's customers are allowed to do by law. So, it is a completel non-sequitur to say what amounts to "but it isn't legal for people to do these things with Windows" (i.e., "they 'own' the OS") as justification for why the law should be changed such that it would become illegal for people to do these things where they currently are legal. In this case, anti-trust law trumps copyright. You are just pointing to copyright law to support your position that anti-trust law should not apply ... that's just logical nonsense.

If you blame the manufacturer for not preventing their customer from doing whatever their customer wants to do, that simply is an expression of your authoritarianism, not some universally agreed view.

As I said, Windows does NOT let applications do "whatever their customers want to do". If you don't think that is fair or acceptable, then use a different OS (but not MacOS, because that doesn't, either). I can't comment on whether that counts as authoritarian or not, but it certainly isn't my authoritarianism.


That's just missing the point, though? Customers are doing a thing that they want to do, i.e., they are installing Crowdstrike kernel drivers. And they are in fact allowed to do that, because the law, as enforced by competition authorities, says that they are allowed to do it. And you somehow conclude that it is therefore appropriate to blame Microsoft for the consequences of what their customers have done, because you think that Microsoft should prevent their customers from doing the thing that those customers are doing voluntarily, and them failing to do so somehow makes them responsible for those voluntary actions of their customers.

That is just plain authoritarianism: You want the strong man (Microsoft) to override the whishes of other people and you want to blame the strong man for not  overriding the choices of those other people when those choices have negative consequences for those other people.

Now, the kernel API in particular is usually a privilege boundary. But it generally is not a privilege boundary between the owner of the machine and the kernel. It is a privilege boundary between users. The point is to isolate processes that run under different user ids, so that a process running under one user can not randomly read or modify data of some other user.

It IS a privilege boundary between the applications and the kernel (the owner only owns the hardware, remember).


No, I don't remember, because I never thought that in the first place, because it is nonsense, as I have explained at length.

When that boundary is breached, disasters like CrowdStrike become more likely.

Which isn't solved by forcing people to use kernel mode code from only one vendor. The kernel mode code runs in kernel mode in any case.

CrowdStrike was not trying to stomp over processes running under different user IDs. It tried to access memory (apparently off a null pointer) that was not allocated to it.

Your point being?

Protecting "the OS" is not something that has any inherent value, because "the OS" is not something the user cares about on its own. Protecting "the OS" only makes sense as a means to an end, i.e., of protecting user data against abuse or corruption. Preventing the user to do with their data what they want to do with their data is not something that helps with that.

You say the user doesn't care about the OS on its own. Probably true, but only because most users only have a vague understanding of how their PC works. The reason why the OS should protect itself from damage is because, whether they know it or not, the integrity of the OS is crucial to protecting the user's data and letting them get on with their work.


No, by "they don't care" I don't mean that they aren't hinking about it, or that they don't understand it, I mean that it makes no difference to them, i.e. that they still wouldn't care if you explained it to them sufficiently for them to understand the implications.

Also, your claim that the integrity of the OS is crucial to protecting the user's data is not really universally true. That very much depends on the usage scenario. The integrity of the OS is only crucial in so far as it does in fact prevent unauthorized access to relevant data. It isn't all that unusual to have servers, for example, where all the userspace software is running in one user account, with all of it having read and write access to all of the business critical data on the system. On such a system, the integrity of the OS often is almost completely irrelevant as far as the interests of the owner of the system is concerned, because every vulnerability in the system gives an attacker access to all the critical data anyway. If an attacker that compromises some service that is running in that one user account can access all of the critical data anyway (so they can exfiltrate or destroy it), it makes no material difference to the owner of that system whether the attacker can also compromise the kernel, because there is no damage that that allows the attacker to do that the attacker couldn't do without compromising the kernel.

And all of this is relevant here because, as I have already explained before, the nature of "security" solutions like Crowdstrike is that they do have access to anything of value by design. Even if that access were to be mediated by a kernel driver written by Microsoft ("the API") and even if we assume that that kernel driver would be free of bugs, Crowdstrike would still be able to see all of the data that's valuable to the user/the business, would still be able to make the system unusable, would still probably be able to corrupt data. As such, bugs or vulnerabilities in such software could still completely wreck anything that is valuable to the business using it. Which is why I said that protecting "the OS" in itself is not something that the user cares about. What the user cares about is their data. The integrity of "the OS" can be crucial to protect their data. But just protecting "the OS" is useless.

And also, you are still confusing reliability features with anti-user enforcement. I can add any kernel mode code I want to my Linux kernel, for example. That doesn't mean that root processes don't segfault when they access an unmapped page or whatever. It isn't required for Linux to be able to have these features that I am prevented from changing the kernel code.

Reliability and user access enforcement are both important and enhanced by keeping apps away from kernel mode as far as possible.

Generally, yes. But that is irrelevant for justifying your position that only Microsoft should be allowed to provide the kernel component of a system like Crowdstrike. What follows from this is that owners/admins and the vendors who produce the software that those owners/admins install on their systems should keep as much of the code that is necessary to implement the functionality of such a system in user space. It says nothing about whether Microsoft should (be allowed to) prevent their customers from using an implementation of the kernel component from a vendor other than Microsoft, which is what you are suggesting.

You certainly cannot add kernel mode code to the Windows kernel unless you jump through the hoops mentioned earlier.

Well, that is true. But for one, that does not justify that this is a good thing. And even less that Microsoft is allowed or should be allowed to arbitrarily reject kernel drivers. And my understanding of those hoops is that their only goal is to find and fix obvious show-stopper bugs before the code is deployed to tons of systems. It's not about security, nor about any particularly stringent reliability requirements, other than "doesn't just crash if you look at it wrong". The primary purpose, really, is to provide attribution, in that you as the user can be sure who the vendor of the driver is, so that you can avoid fake drivers.

And, I'm sure you will admit that your code - running in kernel mode - has the ability to wreak far more havoc than your code running in user mode.

Yeah, of course, obviously. But that never was the contention. The contention was that there is no good reason why the operating system vendor should force its customers to not run code of their choice in kernel mode. After all, there are good reasons to run code in kernel mode, or we wouldn't have any code running in kernel mode. And it should not be up to the operating system vendor to make that decision for their customer.

I think you are stuck in the Linux mindset, where everything is open and transparent. Windows isn't like that: Windows is a black box with published APIs. You can't mess with the OS because you can't get the source code.

No, i am not stuck in a Linux mindset, I am stuck in a liberal, democracy, open market competition, non-monopoly, mindset. And I think that that is a good thing. That Windows isn't like that might well be the case. But the discussion here is not about what Windows is like, but about what anti-trust law and enforcement is like or what it should be like. And in my view, if any product from any vendor is built in such a way that it prevents open market competition and creates monopolistic powers, then anti-trust law and its enforcement should stop that, because that sort of thin generally is to the detriment of the public at large. You are saying that Microsoft should have more monopoly power than they already have. And you are so far failing to justify why that would be a good idea.

I think the CrowdStrike disaster proves my point beyond doubt: an inept application was able to bluescreen Windows machines all over the world and caused absolute chaos to countless businesses because it was running in kernel mode. If it was running in user mode it couldn't have done that. That's why Microsoft is right in trying to reduce the amount of application code running in kernel mode.

No, it doesn't prove your point in any way, as that is just a serious of non-sequiturs. It doesn't follow that because Crowdstrike caused a ton of systems to bluescreen, therefore, Microsoft should be given the monopoly power to provide the only kernel driver for such applications. That is just pure logical nonsense. You have neither demonstrated that that would in fact solve the problem, nor that it would be the best solution to the problem, given that there are numerous other options to approach a solution to the problem, starting from the obvious option that customers could just voluntarily only use a kernel driver from Microsoft if they think that that would solve their problems.

You know, that sort of stuff is what I do for a living, and I can assure you that I understand how privilege boundaries on operating systems work. And I can also tell you that the way that you think about IT security is pretty confused.

Your ad hominem seems like a good place to stop. We've both got our heels dug in - I doubt there is any value in continuing. Also, we really should get back to talking about microcontrollers. Your professional experience with Linux surely means you can suggest some lessons that are relevant to microcontrollers.

It's weird that you write "I get the impression you aren't aware of the architecture of modern operating systems, and especially the concept of the API", but when I write the equivalent in the other direction, that's a problem, isn't it?

But also, neither of those are ad hominems. An ad hominem is a fallacy of the form "person X has character flaw Y, therefore, the claims that they make are false". That is obviously logical nonsense, as you just would have to find a person with a character flaw and have them say '1 + 1 does not equal 3' in order to prove that 1 + 1 equals 3, if that form of an argument were valid, which is why it is a fallacy. Neither "person X is not qualified on topic Y, therefore you shouldn't trust their claims on topic Y" nor the mere statement of "person X is not qualified on topic Y" are ad hominems, and they obviously are not fallacious.

And no, I don't have my heels dug in. I am just pointing out the logical flaws in your arguments, and asking you to make arguments that don't have logical reasoning errors, while you keep making the same errors over and over.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
Excellent and interesting reply - thanks, @zilp.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
As I work through it, I am struck by how we seem to be talking past each other. You keep saying my arguments are irrelevant or non sequiteurs. But when I read your own posts I am struck by what seems like a "stuck" mindset that can only think in one way ("This is how I do it in Linux, so that's how it should be for everyone and all OSs").

We both think our arguments are simple, clear and valid, and yet we shout straight past one another.

Before doing a proper reply, I'm going to pause and spend some time trying to understand why we have so far failed to communicate.

Once again, thanks for taking the time to write such a comprehensive post.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
As I work through it, I am struck by how we seem to be talking past each other. You keep saying my arguments are irrelevant or non sequiteurs. But when I read your own posts I am struck by what seems like a "stuck" mindset that can only think in one way ("This is how I do it in Linux, so that's how it should be for everyone and all OSs").

Irrelevant arguments or non-sequiturs are fallacies. "Being stuck" is not. I would assume that you are stuck on the position that 1 + 1 equals 2? Does that mean that there is some problem with that position?

Also, what I think how things should be done is irrelevant for whether your arguments contain logical flaws. The point of explaining how things work with Free Software is to demonstrate how one can achieve the goal that you supposedly want to reach without the measures that you claim are necessary to reach them, and how what you claim to be universal views are obviously not actually universal views, because it would follow from those that users of Free Software consider their systems to be insecure ... which they usually, rather unsurprisingly, don't.

We both think our arguments are simple, clear and valid, and yet we shout straight past one another.

Before doing a proper reply, I'm going to pause and spend some time trying to understand why we have so far failed to communicate.

Once again, thanks for taking the time to write such a comprehensive post.

You are welcome--and I am curious what conclusions you are going to come to :-)
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
Irrelevant arguments or non-sequiturs are fallacies. "Being stuck" is not.

Well obviously I don't think my arguments are irrelevant or non-sequiteurs!  :)  I think they are clear, simple and incisive. For my part I think you are too stuck in your ways to properly embrace an alternative point of view.  I strongly suspect you have just skim-read my posts without really thinking about what I'm actually saying.

But let's not do this - criticising each other is not at all helpful and it just leads to unpleasantness and upset feelings. Feel free to take another pop at me (I know you want to), but after that we should stop.

Right now I'm trying really hard to understand your arguments, including doing some background reading on Linux (I only write Windows applications). There'll be a slight pause, but I will get back to you.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
One point that we could clarify is this:

The part that I disagree on is that Microsoft should prevent owners/admins from installing kernel mode drivers. And that is the part that you keep dodging. You keep explaining why people should avoid installing kernel mode drivers, but not why Microsoft should prevent people from installing kernel mode drivers.

The fact that it is risky is not sufficient reason why people should be prevented from taking the risk, if they think that that risk is worth it. But you are saying that it shouldn't matter what the owner/admin of a system thinks, and that Microsoft should decide for them that they are not allowed to take risks. That is the part that you need to justify.


You frequently refer to owners/admins, and I'm not totally sure what that means. To you, it seems to mean an individual with complete access to all aspects of the OS, a deep understanding of how it works, who can write and run code that operates in user space or kernel space, and, crucially, is willing to take responsibility for all consequences of their actions. It is an intimate relationship between the owner/admin and the OS, with no secrets between them.

Now, this isn't remotely like 99% of the Windows users that I have ever known. Most Windows users have only the vaguest awareness of what Windows is and does. They don't know what an API is, they've never written a line of code, and they have no knowledge of user space and kernel space. What they see is the email app they use every day, the social media apps they use every hour, and some of them know how to use powerful applications like Microsoft Office. Some of them understand the hierarchical nature of the filing system; others don't and just save files to wherever is the default for the application (usually just piling files up in 'Documents').

So one thing I'm hoping you will recognise is that the great majority of these people are not remotely like the "owners /admins" you describe in the world of Linux. They are just users who really only care about the applications. To them, the OS is what provides the Start menu, the File Manager, and a nice picture on the desktop.

These are the people who form the great majority of Microsoft's customers. Obviously there are others: admins who are responsible for supporting dozens or hundreds of PCs in an organisation; programmers, who write applications that PC users will hopefully buy; and "power users" who like and understand computers and enjoy trying out different apps and spend ages in the "Settings" app, fine-tuning the transparency of the Taskbar.

Can you at least acknowledge that the 99%* of Windows PC users are very different from the owners/admins you describe in the Linux world? I hope so - you only have to walk into any busy office and you will see a room full of them.

A simple yes or no would suffice at this stage.

*Let's not quibble about whether it is 99% or 95% - I'm sure you get my point.
« Last Edit: August 16, 2024, 11:49:01 pm by SteveThackery »
 

Offline IanB

  • Super Contributor
  • ***
  • Posts: 12923
  • Country: us
I think the CrowdStrike disaster proves my point beyond doubt: an inept application was able to bluescreen Windows machines all over the world and caused absolute chaos to countless businesses because it was running in kernel mode. If it was running in user mode it couldn't have done that. That's why Microsoft is right in trying to reduce the amount of application code running in kernel mode.

I really don't agree with the point you keep trying to make at all.

The CrowdStrike disaster occurred because professional system administrators installed software on critical machines across organizations, without doing sufficient due diligence, and without establishing the required level of trust in the software. They did not (apparently) demand to see the test, verification and quality assurance procedures employed by the vendor, and they did not (apparently) verify for themselves that such procedures were satisfactory before purchase. They paid the price as a result.

Nobody was forced to deploy the faulty software, and it was not installed silently, or by any surreptitious means. The organizations affected voluntarily shot themselves in the foot.

Bear in mind that the software was deployed by corporate IT departments, people who are supposed to be informed and knowledgeable professionals, people who are supposed to know what they are doing.
 
The following users thanked this post: Siwastaja

Offline radiolistener

  • Super Contributor
  • ***
  • Posts: 5538
  • Country: Earth
What you are arguing about here is whether Microsoft should force other people to not run code in kernel mode, because you somehow think that your system is vulnerable due to the fact that other people might run code that you consider too risky to run on your own machine. For you to not run that code on your machine, you don't need MS to force you, you can simply not do it.

Windows become a system for not smart peoples who don't understand and don't want to understand what they want. They just want to provide  their machine to be used by MS software and will be happy with all crap that they receive. 

If you want to control your system, you definitely needs to use different OS which is designed for peoples who understand what they want and don't need MS control on all what they doing on computer.

If you use Windows, don't surprise that your computer doing things that you didn't asked and be ready to allow that MS dictates the rules of what and how you should do on your PC... :)

Just look, first you selected OS which is designed to use your PC without your consent and enforce you to do things that you don't want. And then you complain that it works not as you want. This is strange, if you don't want it and don't like it then why you choose it?  :)

The same thing with Android. Such kind of software is designed for not smart peoples who don't want to learn or understand something. They just want to give full control on their PC/smartphone to MS or G, and allow them to use it as MS/G wish. All what they expect in response is just to get some service from these companies and even ready to pay for that.
« Last Edit: August 17, 2024, 06:28:26 am by radiolistener »
 

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 10753
  • Country: fi
Windows become a system for not smart peoples who don't understand and don't want to understand what they want. They just want to provide  their machine to be used by MS software and will be happy with all crap that they receive.

While this is probably... kinda-sorta... true-ish, remember now we are talking about IT administration departments of some massive mega corporations - banks, airlines, and so on, who use Windows on their critical server infrastructure, not end users of consumer PCs. That is - if you are right in what you say, it's actually quite sad, and very alarming.
 

Offline madires

  • Super Contributor
  • ***
  • Posts: 8949
  • Country: de
  • A qualified hobbyist ;)
Absolutely! When you're forced to be a Microsoft junkie you pray that the next monthly update won't cause too much trauble, and that nobody clicks on something malicious.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
Can you at least acknowledge that the 99%* of Windows PC users are very different from the owners/admins you describe in the Linux world? I hope so - you only have to walk into any busy office and you will see a room full of them.
(...)
*Let's not quibble about whether it is 99% or 95% - I'm sure you get my point.

@zilp: although I have had a bit of fun describing the types of Windows users, I hope you will agree that my descriptions are broadly valid, and in particular nothing like the Linux "owner/admin" you frequently refer to.

My next question is another yes/no question. Do you agree that a BSOD is a pretty serious inconvenience for these users? That when a BSOD happens, most of these users would have no idea how to fix it? Even for system admins, it's a major ballache?

And in addition, do you agree that BSODs, especially widespread ones like CrowdStrike, reflect very badly on Microsoft (whether fairly or not)?

You will obviously see where I am going with this.....
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
And now my third question for @zilp: do you agree that Microsoft would be wise to make Windows as crash-proof as possible? That BSODs should, ideally, never happen? That is in the interests of both the user and Microsoft that BSODs don't happen?

I'm not going for the big reveal, here: I'm just setting out a very simple and transparent principle which I hope is obvious, and obviously desirable.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
Irrelevant arguments or non-sequiturs are fallacies. "Being stuck" is not.

Well obviously I don't think my arguments are irrelevant or non-sequiteurs!  :)

Well, I guess so? But they still are!

I think they are clear, simple and incisive. For my part I think you are too stuck in your ways to properly embrace an alternative point of view.  I strongly suspect you have just skim-read my posts without really thinking about what I'm actually saying.

No, I fully understand what you are saying. But your conclusion does not follow.

But let's not do this - criticising each other is not at all helpful and it just leads to unpleasantness and upset feelings. Feel free to take another pop at me (I know you want to), but after that we should stop.

Right now I'm trying really hard to understand your arguments, including doing some background reading on Linux (I only write Windows applications). There'll be a slight pause, but I will get back to you.

I mean, feel free to read up on Linux, I guess, or even on Free Software in general, but really, the relevant points to this discussion are that Free Software comes with all the source code and a license that allows you to read, modify, and redistribute it all, which obviously flies in the face of any idea of "the vendor" preventing you from running kernel mode drivers, because it obviously is impossible for "the vendor" to prevent you from doing so if you can just edit and recompile the kernel, and if anyone is allowed to redistribute modified versions, and the fact that, obviously, people running Linux, FreeBSD, or OpenBSD servers, do not consider their systems to be insecure, even though nothing prevents them from running any kernel-mode code whatsoever if they wanted to.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
One point that we could clarify is this:

The part that I disagree on is that Microsoft should prevent owners/admins from installing kernel mode drivers. And that is the part that you keep dodging. You keep explaining why people should avoid installing kernel mode drivers, but not why Microsoft should prevent people from installing kernel mode drivers.

The fact that it is risky is not sufficient reason why people should be prevented from taking the risk, if they think that that risk is worth it. But you are saying that it shouldn't matter what the owner/admin of a system thinks, and that Microsoft should decide for them that they are not allowed to take risks. That is the part that you need to justify.


You frequently refer to owners/admins, and I'm not totally sure what that means. To you, it seems to mean an individual with complete access to all aspects of the OS, a deep understanding of how it works, who can write and run code that operates in user space or kernel space, and, crucially, is willing to take responsibility for all consequences of their actions. It is an intimate relationship between the owner/admin and the OS, with no secrets between them.


No, I just mean the person who has the property rights to the machine. Their qualifications are not relevant. I just write owner/admin because in practice, often, the owner is a corporation, which obviously can't act unless a human acts for it, which usually would be the responsibility of an IT administrator.

Now, this isn't remotely like 99% of the Windows users that I have ever known. Most Windows users have only the vaguest awareness of what Windows is and does. They don't know what an API is, they've never written a line of code, and they have no knowledge of user space and kernel space. What they see is the email app they use every day, the social media apps they use every hour, and some of them know how to use powerful applications like Microsoft Office. Some of them understand the hierarchical nature of the filing system; others don't and just save files to wherever is the default for the application (usually just piling files up in 'Documents').

So one thing I'm hoping you will recognise is that the great majority of these people are not remotely like the "owners /admins" you describe in the world of Linux. They are just users who really only care about the applications. To them, the OS is what provides the Start menu, the File Manager, and a nice picture on the desktop.


While that is all true, mind you that the context that this thread is about is software bought by corporations and installed by IT administrators, who should be expected to have a deeper understanding of how their IT systems work than your average end user.

These are the people who form the great majority of Microsoft's customers. Obviously there are others: admins who are responsible for supporting dozens or hundreds of PCs in an organisation; programmers, who write applications that PC users will hopefully buy; and "power users" who like and understand computers and enjoy trying out different apps and spend ages in the "Settings" app, fine-tuning the transparency of the Taskbar.

Can you at least acknowledge that the 99%* of Windows PC users are very different from the owners/admins you describe in the Linux world? I hope so - you only have to walk into any busy office and you will see a room full of them.

A simple yes or no would suffice at this stage.

*Let's not quibble about whether it is 99% or 95% - I'm sure you get my point.

Yeah, that's all true--and irrelevant.

Let's do a car analogy: 99% of car users have no idea how a car works in detail or would be able to repair one if it breaks down. Also, working on a car can be dangerous if you don't know what you are doing.

Your suggested solution: Have car manufacturers put a lock on the engine hood that only they have the key to and force car owners to buy all repairs from the manufacturer, because that's the only way to keep people safe. And your "proof" is that you point to one independent repair shop that screwed up a bunch of cars.

And that's a non-sequitur. People can refrain from repairing their own car without being locked out of it, so it doesn't follow that you have to lock them out to keep them safe. And it doesn't follow that because some people are incompetent at repairing cars, that therefore, the manufacturer is best at it. It also doesn't follow that because you can show someone who repaired cars incompetently, that therefore, the manufacturer is best at it. As can be seen with the large number of independent repair shops who do employ competent people and often offer better service than the manufacturer. And it follows even less that the manufacturer would be best under monopoly conditions, given that they aren't even necessarily the best when confronted with competition ... what motivation would they have to offer the best possible service when you have no other option anyway? And not to forget the effect on prices when there is no competition.

And, not to forget: If people feel safest to have their car repaired only by the manufacturer, that still does not require that the manufacturer puts a lock on the hood. The existence of competing independent repair shops does not prevent anyone from only having their car repaired by the manufacturer.

There simply is no logical connection between "crashing cars can be dangerous" and "therefore, the manufacturer should be allowed to force their customers to buy all repairs from them". And equally, there is no logical connection between "crashing operating systems can be dangerous" and "therefore, the manufacturer should be allowed to force their customers to buy all kernel drivers from them".

This has nothing to do with the competence of the users. It doesn't follow that, because a user is incompetent, therefore, the product from Microsoft is the best. And it also doesn't follow that, because some user feels safest with only products from Microsoft, therefore, other people need to be forced to only buy from Microsoft, too. Those are plain and simple non-sequiturs. If a customer only wants to run Microsoft software, they can do so, it is not necessary to allow Microsoft to force their customers to use only Microsoft software in order to allow them to do that.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
.... the relevant points to this discussion are that Free Software comes with all the source code and a license that allows you to read, modify, and redistribute it all, which obviously flies in the face of any idea of "the vendor" preventing you from running kernel mode drivers, because it obviously is impossible for "the vendor" to prevent you from doing so if you can just edit and recompile the kernel, and if anyone is allowed to redistribute modified versions, and the fact that, obviously, people running Linux, FreeBSD, or OpenBSD servers, do not consider their systems to be insecure, even though nothing prevents them from running any kernel-mode code whatsoever if they wanted to.

Right! And this is absolutely nothing like Windows works!!

This, I am certain, is why you can't see my point of view - we are coming from such different places that we have almost no common ground to stand on for our discussion.  With Linux, every app and the entire operating system is wide open and transparent, and literally anyone can do literally anything they like to any part of it. And obviously these individuals take full responsibility for their own actions.  The people you describe can write and run any kernel mode software they like, in the full knowledge that their code can crash the OS if they make a mistake, or even deliberately crash it. So most of the time these owner/admins write the best quality code they can, and that means of course they don't consider their systems to be insecure! They trust their own code!

But I repeat - nothing whatsoever in the paragraph above applies to Windows.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
Can you at least acknowledge that the 99%* of Windows PC users are very different from the owners/admins you describe in the Linux world? I hope so - you only have to walk into any busy office and you will see a room full of them.
(...)
*Let's not quibble about whether it is 99% or 95% - I'm sure you get my point.
My next question is another yes/no question. Do you agree that a BSOD is a pretty serious inconvenience for these users? That when a BSOD happens, most of these users would have no idea how to fix it? Even for system admins, it's a major ballache?

Yeah, sure.

And in addition, do you agree that BSODs, especially widespread ones like CrowdStrike, reflect very badly on Microsoft (whether fairly or not)?

I guess so? But the "fairly or not" is actually the critical part. Because PR interests of a corporation don't (and shouldn't) trump property and similar rights.

To continue the car analogy from above: Imagine people started modding their cars of a certain model. Imagine further that somehow those mods caused accidents. Imagine further that many people would put the blame on the manufacturer of those cars, completely unfairly, because the accidents were unambiguously caused by the modifications. Do you think that it would therefore be acceptable or even desirable for the car manufacturer to put locks on the engine hood that prevent all independent modification of repair?

You will obviously see where I am going with this.....

I mean, I can guess, and so, maybe I have already answered the next step?

And now my third question for @zilp: do you agree that Microsoft would be wise to make Windows as crash-proof as possible? That BSODs should, ideally, never happen? That is in the interests of both the user and Microsoft that BSODs don't happen?

BSODs should, ideally, never happen, unless the owner of the machine wants them to happen, in which case there is nothing wrong with them happening.

Mind you, my disagreement is with forcing things on owners/admins, not with helping them prevent BSODs. Your position is that people should be prevented from causing a BSOD on their own machine even if that is what they want to do.

Then, I'm not sure whether Microsoft would be wise to make Windows as crash-proof as possible, and I mostly don't care, because whether something is wise for Microsoft to do tells us nothing useful about whether we, as society, should allow them to do it. It is generally wise for corporations to establish as many monopolies as they possibly can. But it is rarely beneficial for anyone but that corporation and its shareholders. Mind you, we are talking about forcing owners/admins to do things a certain way, not about providing them with options.

But also, and maybe more importantly, you would have to demonstrate that your proposed measure would in fact reduce the expected rate of BSODs. You have not even demonstrated that Microsoft's code for the same purpose ("the API") could not possibly have had the same bug. It doesn't automatically follow that because the code that was written by Crowdstrike was bad, that therefore, the code written by Microsoft would be better. And if the code isn't better, then your argument doesn't work.

I'm not going for the big reveal, here: I'm just setting out a very simple and transparent principle which I hope is obvious, and obviously desirable.

But it isn't desirable to have authoritarian control of your IT systems by a global monopoly.
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
Let's do a car analogy (...) Your suggested solution: Have car manufacturers put a lock on the engine hood that only they have the key to....

And there we have it: your analogy falls at the first line because Windows is exactly like a car with the hood bolted down.

You keep going on about how wrong that is, and how anyone should be able to get under the hood, modify things, even deliberately or accidentally break things. You claim that this level of access does not affect the integrity of the car. You might be right, you might be wrong, I really don't care!  But the crucial point is that Windows is not like that: Windows is a car with the hood bolted down.

Microsoft has the keys to the hood and can do anything they want to it. They also lend the keys to carefully chosen third parties, but they always test what those third parties have done and only when everything seems OK do they let the third party install their new component to the engine.  I believe this is almost identical to the way Apple works with MacOS.

I am not trying to convince you that this is a good model! I am trying to explain that this is how Windows works. You or I don't have to agree with it. But it is what it is.

If only you can open your mind to the fact that Windows is just different (not necessarily better, not worse, but very different) from Linux, I am certain that you will see the validity of my arguments.

Yes, my arguments are completely wrong and largely irrelevant to a Linux owner/admin like yourself. You have pointed that out countless times and I am obliged to take your word for it because you are a Linux expert.  But we are talking about Windows: a car with the hood bolted down that only Microsoft can open, and anyone who wants access needs Microsoft's agreement.

Yes, I know how difficult this is for you to stomach - you've made that oh, so clear! But try to put aside how you think it should be, and please at least try to embrace how it actually is. Nobody gets the keys to the hood without Microsoft's agreement, and nobody gets to install anything under the hood without Microsoft (or Apple) approving it.

At risk of putting too much reliance on an imperfect analogy, Microsoft has kitted out the cockpit with a wide array of controls (APIs) which they have designed and built, and which are the only way the user* can interact with whatever is under the hood.

* (and, breaking out of the analogy, applications)
--------

I think any reasonable person would answer my questions in the following way:

1/ Do you agree that most Windows users have a limited understanding of what Windows is and what it does? And that most of them have never written a line of code? And most of them aren't interested in the workings of Windows, they just want to get their work done, their emails sent, their Facebook page updated?  YES

2/ Do you agree that a BSOD is a pretty serious inconvenience for these users? That when a BSOD happens, most of these users would have no idea how to fix it? Even for system admins, it's a major ballache?  YES

3/ And in addition, do you agree that BSODs, especially widespread ones like CrowdStrike, reflect very badly on Microsoft (whether fairly or not)?  YES

4/ Not a question, a statement: Windows is a car with the hood bolted down, and only Microsoft and its trusted partners can unlock it and make changes.

My arguments are based on this clear, four-part foundation, which describes what Windows is, and how it gets used. It may seem a profoundly wrong model - objectionable, even - to @zilp, but that is the world of Windows.

------

Having laid that foundation, later on today I am going to review my earlier arguments and demonstrate how they are not "irrelevant" and "non sequiteurs" in the world of Windows. We need to stop talking about Linux now, because we are not talking about how Windows should be, but how it is.
« Last Edit: August 17, 2024, 12:30:29 pm by SteveThackery »
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
.... the relevant points to this discussion are that Free Software comes with all the source code and a license that allows you to read, modify, and redistribute it all, which obviously flies in the face of any idea of "the vendor" preventing you from running kernel mode drivers, because it obviously is impossible for "the vendor" to prevent you from doing so if you can just edit and recompile the kernel, and if anyone is allowed to redistribute modified versions, and the fact that, obviously, people running Linux, FreeBSD, or OpenBSD servers, do not consider their systems to be insecure, even though nothing prevents them from running any kernel-mode code whatsoever if they wanted to.

Right! And this is absolutely nothing like Windows works!!

Yeah. And this is just missing the point.

You made some point above about how, supposedly, the security of operating systems is universally viewed.

This is the demonstration that that is not the case.

The view that you presented is particular to your corner of the world, and not universal.

That this is absolutely nothing like Windows works is exactly the point that I was making. And that therefore, what you consider universal, is in fact not universal at all, but particular to Windows (and other proprietary systems), because there exists a whole world outside of that that views things very differently. Therefore, your appeal to your view as a universally accepted truth does not work, this supposedly universally accepted truth is nothing of the kind.

This, I am certain, is why you can't see my point of view - we are coming from such different places that we have almost no common ground to stand on for our discussion.

The only common ground that is needed for most of it is simply logic.

With Linux, every app and the entire operating system is wide open and transparent, and literally anyone can do literally anything they like to any part of it. And obviously these individuals take full responsibility for their own actions.

The latter is not particular to open systems. If you decide to install proprietary software, you still are fully responsible for that decision.

The people you describe can write and run any kernel mode software they like, in the full knowledge that their code can crash the OS if they make a mistake, or even deliberately crash it. So most of the time these owner/admins write the best quality code they can, and that means of course they don't consider their systems to be insecure! They trust their own code!

But I repeat - nothing whatsoever in the paragraph above applies to Windows.

None of that addresses why it would be in the interest of Microsoft's customers to be prevented from buying certain kernel drivers from other vendors.

You really should reflect on why it is so important to you that people who want to buy that driver from some other vendor should be prevented from doing so. You seem to be very focused on how many people might not want to bother with other vendors, how they are happy to buy everything from Microsoft, how they think that they get the best product if they buy everything from Microsoft ... but none of that is relevant for justifying why people who feel differently should be forced to also buy from Microsoft, which is what you are proposing. People who want to buy from Microsoft do not need to be forced, and for people who don't want to buy from Microsoft, those arguments don't apply.
 

Offline zilp

  • Frequent Contributor
  • **
  • Posts: 351
  • Country: de
Let's do a car analogy (...) Your suggested solution: Have car manufacturers put a lock on the engine hood that only they have the key to....

And there we have it: your analogy falls at the first line because Windows is exactly like a car with the hood bolted down.

You keep going on about how wrong that is, and how anyone should be able to get under the hood, modify things, even deliberately or accidentally break things. You claim that this level of access does not affect the integrity of the car. You might be right, you might be wrong, I really don't care!  But the crucial point is that Windows is not like that: Windows is a car with the hood bolted down.

But it isn't. The whole premise of your contribution to this thread is that is isn't.

The competition authorities in the EU have forced Microsoft to remove some of the locks/bolts/whatever.

Your position is that this is bad and Microsoft should be allowed to bolt it all shut.

And I am asking you to justify why they should be allowed to do that.

Microsoft has the keys to the hood and can do anything they want to it.

No, they can't. And the anti-trust laws are only one of many that limit what they can do with it. Or at least, what they can legally do with it.

They also lend the keys to carefully chosen third parties, but they always test what those third parties have done and only when everything seems OK do they let the third party install their new component to the engine.

All of this is also subject to anti-trust laws. They are not allowed to freely decide on the criteria.

I believe this is almost identical to the way Apple works with MacOS.

I am not trying to convince you that this is a good model! I am trying to explain that this is how Windows works. You or I don't have to agree with it. But it is what it is.

I mean, for one, I have already established that that is in fact not how it works.

But also, the whole point of you writing in this thread was to argue about whether this model should be allowed, so it's kinda dishonest to now claim that you only wanted to describe how it works.

4/ Not a question, a statement: Windows is a car with the hood bolted down, and only Microsoft and its trusted partners can unlock it and make changes.

It just happens to be a false statement, because, by law, Microsoft is required to give certain parties access, whether they trust them or not. And you are proposing that that should be changed. And failing to justify this proposal.

My arguments are based on this clear, four-part foundation, which describes what Windows is, and how it gets used. It may seem a profoundly wrong model - objectionable, even - to @zilp, but that is the world of Windows.

Except it evidently isn't. If it were as you claim, then noone would have ever had the Crowdstrike driver installed, presumably, because Microoft wouldn't have allowed it. The fact that they did shows that that is not how Windows in fact does get used, because people do in fact voluntarily install software that Microsoft would not approve of. And it even demonstrates that at least a significant proportion of the people using Windows don't want the model that you are proposing either, because noone forced them to install Crowdstrike, and they did it anyway. So it is obviously absurd to claim that those people who completely voluntarily installed Crowdstrike would have preferred to not install it. If they had preferred to not install Crowdstrike, they would not have installed Crowdstrike.

Having laid that foundation, later on today I am going to review my earlier arguments and demonstrate how they are not "irrelevant" and "non sequiteurs" in the world of Windows. We need to stop talking about Linux now, because we are not talking about how Windows should be, but how it is.

You haven't laid any foundations.
« Last Edit: August 17, 2024, 01:22:07 pm by zilp »
 

Offline SteveThackery

  • Super Contributor
  • ***
  • Posts: 2907
  • Country: gb
  • 50 year novice
Quote from: zilp on Today at 12:45:44 pm
You really should reflect on why it is so important to you that people who want to buy that driver from some other vendor should be prevented from doing so.



You're doing it again and I DETEST being misquoted, having words put in my mouth, being deliberately misrepresented in order to win an argument.

I NEVER SAID that it is important to me that people who want to buy a driver from someone else should be prevented from doing so!

I explained that this is the way it works for Windows: kernel mode drivers can only be installed if they are from Microsoft or one of Microsoft's trusted partners (and they are tested and approved by Microsoft).

These are FACTS. At no time did I ever say that policy is "important to me". It isn't!  I was trying to explain why it's important to Microsoft!!

Time and time again you have misrepresented my position in order to undermine my argument. Your repeated refusal to even try to engage with my arguments, and now another blatant lie about what I said, is just too much. I'm out of here, and @zilp: if you are going to keep lying about what I said you can piss off.
« Last Edit: August 17, 2024, 02:01:30 pm by SteveThackery »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf