It's actually quite simple. You will only need the gimp and the
gimp-ufraw plugin.
Just open the raw image in gimp with the ufraw plugin.
First, make sure that highlight clipping is off, and tick on the
overexposure indicator. Then decrease the exposure slider until all the
overexposed areas (blacked out in the picture) are gone. The gimp-ufraw
plugin dialog should look like that:
Then, let ufraw process the image and open it in gimp.
Now, open the file again and let the gimp plugin open ufraw. Keep
all the settings exactly the same as they previously were, except for
the highlight clipping tick box. This time, make sure it is
on. The ufraw dialog should look like the following:
You can now let ufraw process the image. You will end up with a
second copy of the image in gimp. Choose the unclipped one -
the first one we generated - and create a new empty layer. Copy the
clipped image - the other one - and paste it in this new empty layer.
Finally choose Saturation mode for the top layer. You should end up
with something like this:
The highlights should now be desaturated by the masking first layer and the colour cast should be gone. Finally if you are happy with what you see, merge down the two layers and save your image.
Here is an example:
Here is a second example: