News for hackers. Stuff that matters.
Re:The CrowdStrike file that broke everything was full of nu... by AdamJacobMuller on Friday July 19, 2024 @04:25PM (#41010751)
The file was just full of null bytes.

It's very possible the signature validation and verification happens after the bug was triggered.

Re:The CrowdStrike file that broke everything was full of nu... by wk_end on Friday July 19, 2024 @04:31PM (#41010828)
"Load a kernel module and then verify it" is not the way any remotely competent engineer would do things.

(...which doesn't rule out the possibility that CS was doing it.)

Re:The CrowdStrike file that broke everything was full of nu... by justinclift on Friday July 19, 2024 @05:37PM (#41011628)
The ClownStrike Falcon software that runs on both Linux and macOS was incredibly flaky and a constant source of kernel problems at my previous work place. We had to push back on it regardless of the security team's (strongly stated) wishes, just to keep some of the more critical servers functional.

Pretty sure "competence" wasn't part of the job description of the ClownStrike developers, at least for those pieces. :( :( :(

Re:The CrowdStrike file that broke everything was full of nu... by soraminazuki on Friday July 19, 2024 @06:39PM (#41012169)
ClownStrike left kernel panics unfixed for a year until macOS deprecated kernel extensions altogether. It was scary because crash logs indicated that memory was corrupted while processing network packets. It might've been exploitable.
Re:The CrowdStrike file that broke everything was full of nu... by usr1106 on Friday July 19, 2024 @04:51PM (#41011048)
Haven't used Windows for close to 15 years, but I read the file is (or rather supposed to be) a NT kernel driver.

Are those drivers signed? Who can sign them? Only Microsoft?

If it's true the file contained nothing but zeros that seems to be also kernel vulnerability. Even if signing were not mandatory, shouldn't the kernel check for some structure, symbol tables or the the like before proceeding?

Re:The CrowdStrike file that broke everything was full of nu... by poizan42 on Friday July 19, 2024 @05:37PM (#41011624)
No the file is not a driver. It's a file loaded by a driver, some sort of threat/virus definition file I think?

And yes Windows drivers are signed. If it had been a driver it would just have failed to load. Nowadays they must be signed by Microsoft, see https://learn.microsoft.com/en-us/windows-hardware/drivers/d...

Re:The CrowdStrike file that broke everything was full of nu... by MBCook on Friday July 19, 2024 @06:32PM (#41012112)
That was my read.

The kernel driver was signed. The file it loaded as input with garbage data had seemingly no verification on it at all, and it crashed the driver and therefore the kernel.

Re:The CrowdStrike file that broke everything was full of nu... by usr1106 on Friday July 19, 2024 @06:54PM (#41012298)
Hmm, the driver must be signed (by Microsoft I assume). So they sign a driver which in turn loads unsigned files. That does not seem to be good security.
Re:The CrowdStrike file that broke everything was full of nu... by dagaci on Friday July 19, 2024 @05:22PM (#41011462)
Think more, imagine that the your CrowdStrike security layer detects an 'unexpected' kernel level data file.

Choice #1 Diable security software and continue. Choice #2 Stop. BSOD message contact you administrator

There may be nothing wrong with the drivers.

Re:The CrowdStrike file that broke everything was full of nu... by derefr on Friday July 19, 2024 @05:56PM (#41011800)
Choice #3 structure the update code so that verifying the integrity of the update (in kernel mode!) is upstream of installing the update / removing the previous definitions package, such that a failed update (for whatever reason) results in the definitions remaining in their existing pre-update state.

(This is exactly how CPU microcode updates work — the CPU “takes receipt” of the new microcode package, and integrity-verifies it internally, before starting to do anything involving updating.)

Re:The CrowdStrike file that broke everything was full of nu... by warkdarrior on Friday July 19, 2024 @06:30PM (#41012099)
> a failed update (for whatever reason) results in the definitions remaining in their existing pre-update state

Fantastic solution! You just gave the attackers a way to stop all security updates to the system.

Re:The CrowdStrike file that broke everything was full of nu... by monocasa on Friday July 19, 2024 @08:24PM (#41012912)
When you can't verify an update, rolling back atomically to the previous state is generally considered the safest option. Best run what you can verify was a complete package from whoever you trust.
Re:The CrowdStrike file that broke everything was full of nu... by JohnBooty on Saturday July 20, 2024 @12:28AM (#41014057)
No, that doesn't follow.

For most systems, a sensible algorithm would be "keep running the last known good definition, until we get the next known good definition"

In other words: ignore bad updates but keep checking for valid ones. That doesn't mean you've permanently lost the ability to update.

Of course, for some systems, different behavior might make more sense.

Re:The CrowdStrike file that broke everything was full of nu... by anonymfus on Friday July 19, 2024 @06:17PM (#41011979)
NT kernel drivers are Portable Executables, and kernel does such checks, displaying BSOD with stop code 0xC0000221 STATUS_IMAGE_CHECKSUM_MISMATCH if something went wrong.

https://learn.microsoft.com/en-us/windows-hardware/drivers/d...

Re:The CrowdStrike file that broke everything was full of nu... by rahkiin on Friday July 19, 2024 @05:26PM (#41011513)
The file was data used by the actual driver like some virus database. It is not code loaded by the kernel
Re:The CrowdStrike file that broke everything was full of nu... by kabdib on Friday July 19, 2024 @07:24PM (#41012505)
Yet it was named ".sys", an extension normally reserved for driver executables AFAIK

Brillant! [sic]