this post was submitted on 22 Jul 2024
607 points (97.9% liked)

Programmer Humor

32490 readers
583 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 24 points 3 months ago (1 children)

Basically, crowdstrike wrote bad code that run as a driver, windows doesn't like bad code in their drivers. Kernel level code is generally expected to run properly. crowdstrike's kernel level code was really bad. Embarrassingly bad.

If the host creates a playlist and everyone can add their favorite song to the playlist, the host won't be blamed if you add "erika". People rightfully think you are an ignorant weirdo or a bad person, not the host.

[–] [email protected] -2 points 3 months ago (3 children)

OTOH, if you build a playlist manager for playlists everyone can add to, you make sure nothing anyone adds will break it…

[–] [email protected] 6 points 3 months ago

They were legally not allowed to as part of an agreement to not be s monopoly and allow competition.

[–] [email protected] 5 points 3 months ago (1 children)

Well do you want to have Microsoft approving EVERY driver for windows? Rip 3rd party open source drivers for retro hardware

[–] [email protected] 3 points 3 months ago (1 children)

What do you think WHQL is?

The problem with CrowdStrike's solution is that they got csagent.sys driver signed by WHQL, and the driver will download p-code from the internet and execute it. This allows them to push out changes without waiting for Microsoft approval.

The biggest problem occurs when you don't sanitize your inputs and someone accidentally uploads a blank file padded with zeroes. The driver dereferences a null value, and crashes your system. Hard.

[–] [email protected] 2 points 3 months ago (1 children)

I don't want to argue with you and I admit that my phrasing wasn't ideal but I assumed that it was obvious that i was talking about everything that would be executed on the machine. Apparently it wasn't.

[–] [email protected] 3 points 3 months ago

Ahh. Approving every piece of software would make them... Apple.

You did say "driver", and Microsoft typically approves every single driver on the majority of PCs.

[–] [email protected] 6 points 3 months ago

Except that the playlists are super complex and there is no way to make sure. Like building an engine and having to make sure that no 3rd party accessory will break it. Like the parented "sand injector".