In Photoshop, to achieve this, I've always created a Hue/Saturation adjustment level and edited the color range to be a specific amount of the shadows. Like this. There is also this tutorial that gets the idea close, but still not true to form.
I'd like to see a native feature that allows to saturate/desaturate logarithmically in Photoshop, similar to how it's done in Resolve. My personal goal is to decrease saturation on a logarithmic curve as the luminosity drops closer to 0 from a starting luminosity value of my choosing.