from lemmee_in@lemm.ee to technology@lemmy.world on 19 Jul 2024 14:27
https://lemm.ee/post/37448621
IT administrators are struggling to deal with the ongoing fallout from the faulty CrowdStrike update. One spoke to The Register to share what it is like at the coalface.
Speaking on condition of anonymity, the administrator, who is responsible for a fleet of devices, many of which are used within warehouses, told us: “It is very disturbing that a single AV update can take down more machines than a global denial of service attack. I know some businesses that have hundreds of machines down. For me, it was about 25 percent of our PCs and 10 percent of servers.”
He isn’t alone. An administrator on Reddit said 40 percent of servers were affected, along with 70 percent of client computers stuck in a bootloop, or approximately 1,000 endpoints.
Sadly, for our administrator, things are less than ideal.
Another Redditor posted: "They sent us a patch but it required we boot into safe mode.
"We can’t boot into safe mode because our BitLocker keys are stored inside of a service that we can’t login to because our AD is down.
threaded - newest
Lol, can you imagine? It empathetically hurts me even thinking of this situation. Enter that brave hero who kept the fileshare decryption key in a local keepass :D
Seems like an argument for a heterogeneous environment, perhaps a solid and secure Linux server to host important keys like that.
Linux can shit the bed too. You need to maintain a physical copy.
CS did take down Linux a few years back… I forget the exact details.
Sounds like we may have an easier conclusion to draw here
Yes, but has it taken both OS’ out at the same time? It hasn’t but it could happen, however, the chances are even less. There’s obvious risk mitigation in mixing vendors in infrastructure for both hardware and software in the enterprise.
If some critical services were lost in your enterprise last time until RH updated their kernel then you could have benefitted from running that service from Windows as well. Now the reverse is true. You could have another DC via Samba on Linux in your forest if you wanted to, in order to have an AD still for example. Same goes for file share servers, intermediary certificate servers (hopefully your Root CA is not always on the network) and pretty much most critical services.
Most enterprises run a lot of services off of a hypervisor and have overhead to scale (or they are already in a sinking ship), so you can just spin up VMs to do that. It isn’t as if it is unreasonably labor intensive compared to other similar risk mitigation implementations. Any sane CCB (obviously there are edge cases but we are talking in general here) will even let you get away without a vendor support contract for those, since they are just for emergency redundancy and not anywhere near critical unless the critical services have already shit the bed.
Sure but the chances of your Windows and Linux machines shitting the bed at the same time is less than if everything is running Windows. It’s exactly the same reason you keep a physical copy (which after all can break/burn down etc.) - more baskets to spread your eggs across.
Very few businesses are going to spend the money running redundant infrastructure on two different operating systems. Most of them won’t even spend the money on a proper DR plan.
Then they get to suffer the consequences when shit like this happens
Oh, they are.
Their point is not that linux can’t fail, it’s that a mix of windows and linux is better than just one. That’s what “heterogeneous environment” means.
You should think of your network environment like an ecosystem; monocultures are vulnerable to systemic failure. Diverse ecosystems are more resilient.
Hey Ralph can you get that post-it from the bottom of your keyboard?
That’s why the 3-2-1 rule exists:
For something like keys, that means:
Any IT pro should be aware of this “rule.” Oh, and periodically test restoring from a backup to make sure the backup actually works.
We have a cron job that once a quarter files a ticket with whoever is on-call that week to test all our documented emergency access procedures to ensure they’re all working, accessible, up-to-date etc.
Are you hiring!?
Sounds like the best time to unionize
Any time is a good time to unionize
Agreed, just here they have then by the metaphorical balls.
I’m in. This world desperately needs an information workers union. Someone to cover those poor fuckers in the help desk and desktop support as well as the engineers and architects that keep all of this shit running.
Those of us that aren’t underpaid are treated poorly. Today is what it looks like if everybody strikes at once.
This dude here coming in hot with a name, Information Workers Union (IWU). Love it
Soo are you gonna create the community or am I?
I’m too chicken.
Nah.
Bureau of Information & Technology Servicers.
BITechS
Or just BITS.
Ah.
To preface, I want to see a tech workers union so, so bad.
With that said, I genuinely don’t believe that most tech workers would unionize. So many of them are brainwashed into thinking that a union would dictate all salaries, would force hiring to be domestic-only, or would ensure jobs for life for incompetent people. Anyone that knows what a union does in 2024 knows that none of that has to be true. A tech union only needs to be a flat fee every month, guaranteed access to a lawyer with experience in your cases/employer, and the opportunity to strike when a company oversteps. It’s only beneficial.
Even if you could get hundreds of thousands of signatories, the recent layoffs have shown that tech companies at the highest level would gladly fire a sizable number of employees if it meant stamping out a union. As someone that has conducted interviews in big tech, the sheer numbers at peak of people that had applied for some roles was higher than the number of active employees in the whole company. In theory, Google could terminate everyone and replace them with brand-new workers in a few months. It would be a fucking mess, but it (in theory) shows that if a Google or Apple decided that it wanted no part of unions they could just dig into their fungible talent pool, fire a ton of people, promote people that stayed, and fill roles with foreign or under-trained talent.
I feel you with this. They do not see themselves as workers. Thank you for the preface.
Agreed, sadly to many there is still the view of tech being a meritocracy, and that they’re in FAANG because of their hard work over everything else, so fuck everyone else. Naturally, many change their tune once their employer actions regressive policies, but it’s surprising how many people just have zero understanding of what a union does. They see cop shows or The Wire and assume it’ll be like the unions there…
All true… All sad. Time to snap some fools to reality I guess
Lemmy appears to be weathering the storm quite well…
…probably runs on linux
It runs on hundreds of servers. If any of them ran windows they might be out but unless you got an account on them you’d be fine with the rest. That’s the whole point of federation.
I’m so proud of this community!
The overwhelming majority of webservers run Linux
(it’s not even close, like high 90 percent range)Edit: Upon double-checking it’s more like mid-80s, but the point standsI wonder if any Lemmy servers run on Windows without WSL. I can’t think of any hard dependencies on Linux, so it should be possible.
I doubt many Lemmy servers are running enterprise level antivirus.
If you have EC2 instances running Windows on AWS, here is a trick that works in many (not all) cases. It has recovered a few instances for us:
Alternatively, you can restore from a snapshot prior to when the bad update went out from Crowdstrike. But that is not always ideal.
A word of caution, I’ve done this over a dozen times today and I did have one server where the bootloader was wiped after I attached it to another EC2. Always make a snapshot before doing the work just in case.
Good advice!
Lmao this is incredible
N.B.: Reddit link is from the source
I hope a lot of c-suites get fired for this. But I’m pretty sure they won’t be.
Fired? I hope they get class-actioned out of existence as a warning to anyone who skimps on QA
C-suites fired? That’s the funniest thing I’ve heard yet today. They aren’t getting fired - they are their own ass-coverage. How can they be to blame when all these other companies were hit as well?
I guess this is a good week for me to still be laid off.
Sounds like a lot of architects and admins are going to get thrown under the bus for this one.
“Yes, we ordered you to cut costs in impossible ways, but we never told you specifically to centralize everything with a third party, that was just the only financially acceptable solution that we would approve. This is still your fault, so we’re firing the entire IT department and replacing them with an AI managed by a company in Sri Lanka.”
Stupid argument though, honestly just chance that crowdstrike was the vendor to shit the bed. Might aswell have been set. You should still have procedures for this
At least no mission critical services were hit, because nobody would run mission critical services in Windows, right?
…
RIGHT??
<img alt="img" src="https://cdn.drawception.com/drawings/682653/nfwOn85yPp.png">
Someone never tested their DR plans, if they even have them. Generally locking your keys inside the car is not a good idea.
The good news is! This is a shake out test and they’re going to update those playbooks
Sysadmins are lucky it wasn’t malware this time. Next time could be a lot worse than just a kernel driver with a crash bug.
3rd party companies really shouldn’t have access to ship out kernel drivers to millions of computers like this.
The bad news is that the next incident will be something else they haven’t thought about
I wish you were right. I really wish you were. I don’t think you are. I’m not trying to be a contrarian but I don’t think for a large number of organizations that this is the case.
For what it’s worth I truly hope that I’m 100% incorrect and everybody learns from this bullshit but that may not be the case.
We also backup our bitlocker keys with our RMM solution for this very reason.
I hope that system doesn’t have any dependencies on the systems it’s protecting (auth, mfa).
It’s outside the primary failure domain.
I remember a few career changes ago, I was a back room kid working for an MSP.
One day I get an email to build a computer for the company, cheap as hell. Basically just enough to boot Windows 7.
I was to build it, put it online long enough to get all of the drivers installed, and then set it up in the server room, as physically far away from any network ports as possible. IIRC I was even given an IO shield that physically covered the network port for after it updated.
It was our air-gapped encryption key backup.
I feel like that shitty company was somehow prepared for this better than some of these companies today. In fact, I wonder if that computer is still running somewhere and just saved someone’s ass.
They also don’t seem to have a process for testing updates like these…?
This seems like showing some really shitty testing practices at a ton of IT departments.
Apparently from what I was reading these are forced updates from Crowdstrike, you don’t have a choice.
I’ve heard differently. But if it’s true, that should have been a non-starter for the product for exactly reasons like this. This is basic stuff.
Companies use crowdstrike so they don’t need internal cybersecurity. Not having automatic updates for new cyber threats sorta defeats the purpose of outsourcing cybersecurity.
Not bothering doing basic, minimal testing - and other mitigation processes - before rolling out updates is absolutely terrible policy.
Automatic updates should still have risk mitigation in place, and the outage didn’t only affect small businesses with no cyber security capability. Outsourcing does not mean closing your eyes and letting the third party do whatever they want.
It shouldn’t, but when the decisions are made by bean counters and not people with security knowledge things like this can easily (and frequently) happen.
Unfortunately, the pace of attack development doesn’t really give much time for testing.
More time that the zero time than companies appear to have invested here.
I was just thinking about something similar. I can understand wanting to get a security update as quickly as possible, but it still seems like some kind of rolling update could have mitigated something like this. When I say rolling, I mean for example split all of your customers into 24 groups and push the update once an hour to another group. If it causes a massive fuck up it’s only some or most, but not all.
Heck even 30 minutes ahead for 1% of devices wouldve had a reasonable chance of catching this
I get storing bitlocker keys in AD, but as a net admin and not a server admin…what do you do with the DCs keys? USB storage in a sealed envelope in a safe (or at worst, locked file cabinet drawer in the IT managers office)?
Or do people forego running bitlocker on servers since encrypting data-at-rest can be compensated by physical security in the data center?
Or DCs run on SEDs?
When I set it up at one company, the recovery keys were printed out and kept separately.
Paper never goes out of style …
Paper print in a safe is what’s usual done.
You need at least two copies in two different places - places that will not burn down/explode/flood/collapse/be locked down by the police at the same time.
An enterprise is going to be commissioning new computers or reformatting existing ones at least once per day. This means the bitlocker key list would need printouts at least every day in two places.
Given the above, it’s easy to see that this process will fail from time to time, in ways like accicentally leaking a document with all these keys.
I think the idea is to store most of the keys in AD. Then you just have to worry about restoring your DCs.
I think that’s a better plan than physically printing keys. I’d also want to save the keys in another format somewhere - perhaps using a small script to export them into a safe store in the cloud or a box I control somewhere
I got super lucky. got paid for my car just before the dealership systems went down, got my return flight 2 days before this shit started.
Why the fuck does an antivirus need a kernel driver
Because the windows OS is inherently insecure with lots of permission elevation opportunities.
Pretending linux privelege escalation doesn’t exist… to fight something that gets root you have to be able to fight at the root level, or the root access malware can simply nuke the av from userland.
Or you could just use kernel namespaces, SELinux, Systemd sandboxing, etc. There is zero need to run in ring 0 for security reasons.
Also, privilege escalation is a lot rarer on Linux than it is on Windows.
Because that’s where filesystem access lives? AV wouldn’t do very much good if it could only run from userspace.
This is why every machine I manage has a second boot option to download a small recovery image off the Internet and phone home with a shell. And a copy of it on a cheap USB stick.
Worst case I can boot the Windows install in a VM with the real disk, do the maintenance remotely. I can reinstall the whole thing remotely. Just need the user to mash F12 during boot and select the recovery environment, possibly input WiFi credentials if not wired.
I feel like this should be standard if you have a lot of remote machines in the field.
You’re fucking killing it. Stay awesome.
Also gist this up pls. Thanks.
I wish it was more shareable, but it’s also not as magic as it sounds.
Fundamentally it’s just a Linux install with some heavy customizations so that it does one thing only: boot Linux, and just enough prompts to get it online so that the VPN works, and download the root image into RAM that it boots into so I can SSH into the box, and then a bunch of Linux tools for me to use so I can reimage from there, or run a QEMU with the physical disk passed through so I can VNC into an install even if it BSOD.
It’s a Linux UKI (combined kernel+initramfs into a simple EFI file the firmware can boot directly without a bootloader), but you can just as easily get away with a hidden Debian install or whatever. Can even be a second Windows install if that’s your thing. The reason I went this particular route is I don’t have to update it since it downloads it on the fly, much like the Mac recovery. And it runs entirely in RAM afrerwards so I can safely do whatever is needed with the disk.
Yeah, that sounds even more magic! I hope you’re appreciated…
“It’s not as magic as it sounds”, he says as my eyes gloss over on the first sentence.
I dream of working somewhere where this kind of effort is appreciated enough to motivate me to put in the effort of actually doing it.
I wish too, it’s only deployed for family and family businesses because I’m a couple thousand miles away from them. I cobbled this together for the explicit purpose of being able to reinstall Windows remotely. It works wonderfully though!
My real job is DevOps and 100% Linux, and most of the cloud servers are disposable and can be simply be rebuilt at the push of a button in some dashboard.
I wonder what your reasoning was for rolling your own compared to just using something like OpenSuse’s MicroOS
Sounds like a nightmare for security, and a dream for attackers.
More companies need to do this, solid job security.
You can sign the whole thing, it’s not like you have to turn off secure boot and just drop the user to a root shell. There’s nothing to be gained from it, especially if you have physical access to the machine.
In theory that sounds great, now just do it 1000+ times while your phone is ringing off the hook and you’re working with some of the most tech illiterate people in your org.
I’m pressing F and 1 and 2, but nothings happening!
Still better than guiding the user to safe mode with command prompt and bitlocker recovery keys themselves.
I didnt know so many servers still run windows.
On prem AD. At least for my MSP’s clients. Have been pushing hard last few years to migrate to azure.
I can’t imagine how much work it would be to migrate all your services onto Linux. The problem was people adopting windows in the first place.
I love the Linux bros coming out of the woodwork on this one when this could have very well have been Linux on the receiving end of this shit show. Given that it’s a kernal level software issue, and not necessarily an OS one.
It’s largely infeasible to use Linux for many, most, of these endpoints. But facts are hard.
They are just butt hurt that this whole thing really shines a light on how inaccurate the line of “the world runs on Linux” truly is.
The world runs on a lot of different things for different reasons and that does not fit nicely into their Richard Stallman like world view.
🐧: what is my purpose?
🧑💼: you run web servers.
🐧: oh my god
I appreciate that rick and morty ref
Just to clarify: the world runs in linux servers. The market share for the non-server market is abysmal.
Except lots of IoT things, router, etc. Also Cromebooks and Steamdecks. And us GNU/Linux people. Android is Linux, just not GNU/Linux. Really isn’t just servers.
I don’t know too much about IoT but I wouldn’t say linux runs the world in any of the other markets you mentioned.
I would say while technically Android uses a modified linux kernel, you can’t put it under the same umbrella.
Either way I don’t want to get too much into these technicalities. I was simply trying to say that Linux is king on servers, not really on the market where all this crazyness happened.
Android makes RMS’s GNU/Linux language make sense. It is a Linux, but not a GNU/Linux.
Google’s attempt to fork Linux failed and now is mainlined so they can maintain as small a set of patches as they can. Once binder was merged, there is no fork anymore.
git.kernel.org/pub/scm/linux/kernel/…/android?h=v…
Android is basically a build config now.
TVs that aren’t Android are probably GNU/Linux. Smart white goods are often Linux. Linux even get used in cars. Some of it under Automotive Grade Linux, but not all. If some random thing has a user interface, find licenses and you can normally see what FOSS went in.
You can do so much with so little, at no cost of licencing or access. Why wouldn’t you?
You use things like Yocto and Buildroot to build a image that has nothing but what you need, how you need it.
Alpine Linux tho 😈 /j
Not quite the same thing. I doubt, for example, they have a big bag of device trees for different ARM devices to build from.
Hey man, let us have this one. Any immutable/atomic distribution could have either prevented this or easily rolled back the update. Not to mention a Linux offering by something like Red Hat, for example, wouldnt recommend installing closed source third party kernel modules for exactly this reason. Not sure about the feasibility of these endpoints, but the way things are generally done on, and the philosophy of, Linux could very well have avoided this catastrophe.
Can you explain what is immutable/atomic distribution and how it can prevent this?
An immutable distribution is one that treats the system files as read-only. Applications are handled separately, and updates to the system are done in an image-based way, rather than changing a few updated files, basically the OS gets replaced with an updated version. It prevents users or malicious outsiders from just changing system files. Fedora Silverblue and SteamOS as found on Valve’s Steam Deck are examples of immutable distros.
Now, with soemthing like Crowdstrike that operates in kernel space…I’m too far outside my wheelhouse to grasp how that would work on an immutable system. How it would be implemented.
My thought was mostly that this kind of invasive third party and closed source kernel module security wouldn’t have been necessary. But I’m pretty sure rollbacks can include kernel changes in a previous image.
The is no single Linux. It’s not a monoculture like that. There are many distros with different build options, different configurations and different components.
Also culture is different. Very few Linux admins would be happy putting in a closed blob kernel driver for anything. In Windows world that’s the norm, but not Linux.
What’s just happened to Windows world would be harder in Linux world. At worse, one distros rolls out a killer update. Some distros would just reboot to the previous kernel.
The Linux kernel has a special kernel extension scheme specifically to keep software like CloudStrike from crashing it ebpf.io/what-is-ebpf/ This is supported by CloudStrike on recent versions of Linux (if you’re running an older version, then yes CloudStrike still has the ability to ruin your day)
Issue is not just on servers, but endpoints also. Servers are something that you can relatively easily fix, because they are either virtualized or physically in same location.
But endpoints you might have thousand physical locations, and IT need to visit all of them (POS, info/commercial displays, IoT sensors etc.).
Parent comment applies even more so to such endpoints imo
Do IoT sensors really run windows? If not, how are they affected?
My former employer had a bunch of windows servers providing remote desktops for us to access some proprietary (and often legacy) mission critical software.
Part of the security policy was that any machines in the possession of end users were assumed to be untrustworthy, so they kept the applications locked down on the servers.
I kinda wish my employer would do something like this for our current applications. Right before I started working there they switched from giving engineers desktops to laptops (work station laptops but still). There are some advantages to having a laptop like being able to work from home or use it in a meeting, but I would much prefer the extra power from a desktop. In mind the best of both worlds would be to have a relatively cheap laptop that basically acts as a thin client so that I can RDP into a dedicated server or workstation for my engineering applications. But what do I know ¯_(ツ)_/¯
It was a pain in the ass more often than not. If the application server was having trouble the entire department was at a standstill.
And getting config files, licence files, log files and the like in and out of the system was a long convoluted process.
We often joked that we were so secure that our hands were tied.
I’m the corporate world, very much Windows gets used. I know Lemmy likes a circle jerk around Linux. But in the corporate world you find various OS’s for both desktop and servers. I had to support several different OS’s and developed only for two. They all suck in different ways there are no clear winners.
It’s not just a circle jerk in this case. Windows is dominant for desktop usage but Linux has like 90% of the server market and is used for basically all new server projects.
Paying for Windows licensing when it doesn’t benefit you, it’s silly, and that’s been realized for years.
Web servers, sure, but even companies that manage infrastructure like Google and Amazon have a LOT of Windows servers kicking around for shit like AD, Outlook, Federation, Office/Teams, etc.
Thank för addressing Lemmy circlejerk för Linux . They really take it far
Proxmox with windows containers is used widely
If it only impacts a percentage of your machines then there was a problem in the deployment strategy or the solution wasn’t worthwhile to begin with.
… So your point was that it would have been better if everything went down?
There are plentiful reasons why deployments are done in parts, and I’m guessing that after today strategies will change to apply updates in groups to avoid everything going down.
Also, dear God, stop using windows as a server, or even a client for that matter. If you’re paying actual money to get this shit then the results are on you.
No.
My main point was that crowdstrike has always been lazy man’s garbage.
Also, 😂
Yet again: Switch to Linux.
.
lmao
It might be CrowdStrike’s fault, but maybe this will motivate companies to adopt better workflows and adopt actual preproduction deployment to test these sort of updates before they go live in the rest of the systems.
Might be hard to do. Crowdstrike release several updates per day to the channel files to match changes in adversarial behaviour. In this case, BCP and backup are what need to be done.
Oh sweet summer child.
I know people at big tech companies that work on client engineering, where this downtime has huge implications. Naturally, they’ve called a sev1, but instead of dedicating resources to fixing these issues the teams are basically bullied into working insane hours to manually patch while clients scream at them. One dude worked 36 hours straight because his manager outright told him “you can sleep when this is fixed”, as if he’s responsible for CloudStrike…
Companies won’t learn. It’s always a calculated risk, and much of the fallout of that risk lies with the workers.
That dude should not have put up with that.
Sounds so illegal, that it makes labour authoririty happy
Is it illegal? I’m not American so I have no idea if there are laws in your country against on-call maximum hours.
That comment about sleep…that’s about where I tell them to go fuck themselves. I’ll find a new job, I’m not going to put up with bullshit like that.
100% agree
80% of our machines were hit. We were working through 9pm on Friday night running around putting in bitlocker keys and running the fix. Our organization made it worse by hiding the bitlocker keys from local administrators.
Also gotta say… way the boot sequence works, combined with the nonsense with raid/nvme drivers on some machines really made it painful.
Just a thought from experience: Be wary of any critical products and/or taking a job from a company run by an accountant. CrowdStrike CEO… accountant!
Accounting firms are an obvious exception.
“We can’t boot into safe mode because our BitLocker keys are stored inside of a service that we can’t login to because our AD is down.”
backup your backups. I mean, I don’t work the IT side and i’m a developer but…isn’t it common sense to like not 100% use something to store keys where you potentially can’t log into? For me if I have a key that I need to use to decrypt something, hell even to log into discord if my 2FAs fail, I store them on a USB drive. If i’m using something and it says “you’ll need a key for backups just in case” ok cool, key goes on the drive.
Also Microsoft should be getting just as much flak as Crowdstrike is right now. Bitlocker is god awful and the fact you need decryption keys for many devices to simply boot into safe is stupid. I remember when I still used win11 and I fucked something up and I discovered for the first time I needed a bitlocker code to simply get into safemode or recovery mode. I had no idea and thought it was so stupid. just to get into safe? really?